欢迎来到天天文库
浏览记录
ID:33615089
大小:190.37 KB
页数:8页
时间:2019-02-27
《案例分析——采用uml对学生宿舍管理系统建模》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、案例分析——采用UML对学生宿舍管理系统建模1.案例分析目标本案例采用UML语言对进销存系统进行分析和设计,通过本案例的讲解,目的是使学生了解面向对象的基本思想方法,学会使用UML语言对面向对象开发的软件系统进行可视化描述、分析与设计。2.UML建模基础知识一般而言,我们可以从以下几种常用的视角来描述一个系统:系统的使用实例:从系统外部的操作者的角度描述系统的功能。系统的逻辑结构:描述系统内部的静态结构和动态行为,即从内部描述如何设计实现系统功能。系统的构成:描述系统由哪些程序组件所组成。系统的并发性:描述系统的并发性,强
2、调并发系统中存在的各种通信和同步问题。系统的配置:描述系统的软件和各种硬件设备之间的配置关系。根据这种思想,UML采用9种视图描述系统的结构和行为,如下图所示:图1UML视图3.案例简介——学生宿舍管理系统需求调查随着近几年高校招生人数的不断扩大,学生的宿舍管理工作也越来越繁重和琐碎。比如:一年一度的新生住宿安排;每个月进行一次的收费、统计及打印报表(包括:水费、电费、热水费);各种查询问题等等。原来有的是靠手工完成,有的简单报表是靠Word或Excel完成。现在仅靠传统的办法已不能适应这个时代的要求,本作业主要任务是采用
3、UML对学生宿舍管理系统进行面向对象建模。通过对系统的分析,我可以找到这样一些参与者:一般的查询者、住宿的学生用户、时钟、财务管理人员、系统管理员、学生工作人员、宿舍管理人员、物业管理人员和人事经理等。通过分析参与者的活动,可以初步确定这样一些用例:(1)查询信息,(2学生管理,(3)宿舍分配,(4)住宿管理,(5)基础数据管理,(6)财务管理,(7)决策支持。4.UML建模根据前面的需求分析,分别建立系统的用例图、包图、类图、顺序图、协作图、活动图。4.1整体宿舍管理系统用例的组织——用例包图学生宿舍管财务管理理子系统子
4、系统学生基本信息基础数据库决策支持管理子系统管理子系统查询子系统公用部分图2:学生宿舍管理系统的包图4.2子系统的用例图画出图2中的“学生宿舍管理子系统”的用例图:一般用户基础数据库管理查询信息系统管理员查询者<><><>学生信息管理<><>财务管理财务人员登陆学生工作人员<><>宿舍分配<>时钟支持时钟信息管理员住宿管理图3:学生宿舍管理子系统的用例图然后划出图3中,“学生信息管理“子用例的用例图。更新学生添加学生<5、>>查询学生<>学生工作人员删除学生图4:学生信息管理子用例用例的详细描述——以“登录用例”为例用例名称登陆用例目标登陆。描述了用户登录到《学生宿舍管理系统》的过程,设置了各种用户的访问权限主要参与者用户触发条件用户企图进入各个系统模块时触发前置条件:系统必须能正常启动参与者动作系统响应①当用户启动这个应用系统②系统显示登录界面。时,用例开始。典型事件过③户输入用户名和密码。④系统验证信息。程⑤系统设置访问权限。⑥系统显示主菜单(子用例:显示主界面)。⑦用例结束。替代事件过替代⑤:如果用户输入错误的用户名或者密6、码,给出提示信息,程并且跳转到⑦后置条件用户正常登录到界面上4.3系统类图分析用例,从用例中寻找对象和类。例如,通过分析宿舍分配管理子系统,可以发现以下实体类:学生、宿舍管理员、班级、楼栋、床位等宿舍管理员登录界面-员工号登录-用户名-姓名-登录类型-密码**-密码+登录()*楼栋班级打开-园区号-所属院代号-楼栋号-所属系代号*《dependon》-楼栋名-班级《dependon》*分配住宿界面(abstract)+增加楼栋()-班级名称*-分配方式**+删除楼栋()+增加学生()+删除学生()1个人分配集体分配床位-床7、位号-居住者学号-所属楼栋号-所属园区号-所属寝室号*-0*学生(abstract)DB学生DB床位-学号-学号-床位号-11-姓名-姓名-居住者学号床位List-性别-性别-所属寝室号-院代号-类型号-所属楼栋号+new()-系代号-院代号-所属园区号+add()-班级代号-系代号-专业代号-班级代号-类型编号-班级号-入学日期-专业号+getData()+setData()+...()图5:静态分析阶段—学生宿舍分配类图4.4为对象分配操作——通过协作图4:确认学生信息:宿舍管理员:学生基本信息表1:打开3:显示学生具8、体信息2:输入学好查询学生信息:宿舍分配界面:学生5:查询空床位7:修改住宿信息:床位6:显示空床位具体信息:宿舍住宿情况表图6:为对象分配操作—通过协作图4.5系统的动态分析——用顺序图表示用例的实现顶层包::顶层包顶层包::顶层包顶层包::顶层包宿舍管理员登录界面住宿管理进入登陆界面密码与用户名相符
5、>>查询学生<>学生工作人员删除学生图4:学生信息管理子用例用例的详细描述——以“登录用例”为例用例名称登陆用例目标登陆。描述了用户登录到《学生宿舍管理系统》的过程,设置了各种用户的访问权限主要参与者用户触发条件用户企图进入各个系统模块时触发前置条件:系统必须能正常启动参与者动作系统响应①当用户启动这个应用系统②系统显示登录界面。时,用例开始。典型事件过③户输入用户名和密码。④系统验证信息。程⑤系统设置访问权限。⑥系统显示主菜单(子用例:显示主界面)。⑦用例结束。替代事件过替代⑤:如果用户输入错误的用户名或者密
6、码,给出提示信息,程并且跳转到⑦后置条件用户正常登录到界面上4.3系统类图分析用例,从用例中寻找对象和类。例如,通过分析宿舍分配管理子系统,可以发现以下实体类:学生、宿舍管理员、班级、楼栋、床位等宿舍管理员登录界面-员工号登录-用户名-姓名-登录类型-密码**-密码+登录()*楼栋班级打开-园区号-所属院代号-楼栋号-所属系代号*《dependon》-楼栋名-班级《dependon》*分配住宿界面(abstract)+增加楼栋()-班级名称*-分配方式**+删除楼栋()+增加学生()+删除学生()1个人分配集体分配床位-床
7、位号-居住者学号-所属楼栋号-所属园区号-所属寝室号*-0*学生(abstract)DB学生DB床位-学号-学号-床位号-11-姓名-姓名-居住者学号床位List-性别-性别-所属寝室号-院代号-类型号-所属楼栋号+new()-系代号-院代号-所属园区号+add()-班级代号-系代号-专业代号-班级代号-类型编号-班级号-入学日期-专业号+getData()+setData()+...()图5:静态分析阶段—学生宿舍分配类图4.4为对象分配操作——通过协作图4:确认学生信息:宿舍管理员:学生基本信息表1:打开3:显示学生具
8、体信息2:输入学好查询学生信息:宿舍分配界面:学生5:查询空床位7:修改住宿信息:床位6:显示空床位具体信息:宿舍住宿情况表图6:为对象分配操作—通过协作图4.5系统的动态分析——用顺序图表示用例的实现顶层包::顶层包顶层包::顶层包顶层包::顶层包宿舍管理员登录界面住宿管理进入登陆界面密码与用户名相符
此文档下载收益归作者所有