UML系统分析设计与建模
-----------学生选课系统
通过简单的学生选课系统进行详细的系统分析和建模。
(一)系统用例图
1 .首先需求分析显示,管理员维护课程信息,进行添加、修改、删除等。 学生可以在线查询课程信息,选课,或者在规定的时间内更改所选的课程。 发现系统的参与者是管理员和学生,从参与者的角度发现系统的用例,并绘制系统的用例图,如图1所示。
2 .描述部分用例:
“添加课程”用例
1 )用例名称:添加课程
2 )执行者:管理员
3 )目的)管理员通过系统界面访问,增加开设的课程,确认无误后将该信息存入数据库供学生选择。
4 )流程描述:
5 )管理员进入管理界面,选择开设用例
6 )系统将提示输入管理密码
7 )管理员输入密码
8 )系统认证密码
9 ) A1:密码错误
10 )进入管理界面,显示当前创建的所有课程信息
11 )管理员选择添加课程
12 )系统会提示您输入新的课程体系信息
13 )管理员输入信息
14 )验证系统与现有课程是否存在矛盾
15 ) A2 )有冲突
16 ) 10 )系统增开新课,促使增开成功
17 ) 11 )系统再次进入管理界面,显示所有课程
18 ) 12 )用例结束
19 )异常事件流处理:
20 ) A1 :密码错误:1)系统提示您重新输入。 2 )用户确认后进入步骤5 )。
21 ) A2 :有冲突)1)系统提示冲突,显示冲突的课程信息。 2 )用户重新输入,如果验证无误,则进入步骤10 )。
“选课”用例
1 )例句名称:选课
2 )执行者:学生
3 )目的)学生进入选课系统界面,观摩的课程,最后选择自己喜欢的课程进行提交。
4 )流程描述:
5 )1)学生进入选课登录界面,开始用例
6 )2)系统将提示您输入学员编号和密码
7 )3)学生输入学校号码和密码
8 )4)系统验证
9 ) A1 )验证错误
10 )5)进入选课主界面
11 )6)学生点击课目
12 )7)系统显示所有的课程信息
13 )8)学生选修课程
14 )9)系统验证课程是否可选
15 ) A2 )无选项
16 ) 10 )系统提示路线选择成功
17 ) 11 )用例结束
18 )异常事件流处理:
19 ) A1 :验证错误)1)系统提示验证错误,提示重新输入。 2 )验证成功,进入步骤5
20 ) A2 :无选项1 )系统提示课程选项和理由。 2 )学生重新选课。 3 )验证成功后进入步骤10 )
用例的“修改”
1 )管理员进入管理界面,选择开设用例
2 )系统将提示您输入管理密码
3 )管理员输入密码
4 )系统认证密码
A1:密码错了
5 )进入修改主界面,显示当前创建的所有课程信息
6 )管理员选择要修改的课程
7 )是否可以更改此课程
A2 )不修正
8 )显示所有课程信息
9 )管理员输入新信息
10 )验证是否存在赛道冲突
A3 :碰撞
11 )系统修改课程,提示修改成功
12 )系统再次进入主界面,显示所有课程
13 )用例结束
异常事件流处理:
A1:密码错误:1)系统会提示您重新输入。 2 )用户确认后进入步骤5 )。
A2 :不修改:1)系统将提示您重新选择。 2 )用户确认后进入步骤8 )。
A3 :有冲突:1)系统提示冲突,显示冲突的课程信息。 2 )用户重新输入,如果验证无误,则进入步骤11 )。
(二)系统活动图
活动图实际上也是一个描述活动序列的流程图,即从系统活动到另一个活动的控制流。 因此,常用的活动图进一步描述了用例的具体功能实现过程,比文字描述和形象更直观、更准确
理解具体实现要求。以“增加课程”用例为例,建立系统的活动图。其它用例的活动图不在叙述。
1.对“增加课程”用例进行分析,描述完成该操作所需要的活动。首先从“输入课程各项信息”开始,在输入工作完成后,进入业务逻辑界面的“验证课程”活动,然后进行“创建课程对象”活动,并输入“在数据库中查询课程”,查看数据库中是否已存在该课程。根据查询的结果“判断增加课程是否合法”,如果不合法(如重名等),提示“重新输入”返回到“输入课程各项信息”;如合法,则在数据库中正式增加这个对象。最后进行“判断添加是否成功”,如果成功,返回用户界面“显示添加成功信息”提示用户活动结束:如失败,“显示添加失败信息”,提示任务没有完成,活动结束。
2.根据对“增加课程”用例的分析,画出其活动图,如图2:
(三)系统顺序图
顺序图注重的是消息的时间顺序,它描述对象间的交互行为。而合作图强调对象间关系,这两种图可以有效地帮助我们观察和分析系统的交互行为。
以 “选课”用例为例,建立系统的顺序图。其它用例的顺序图不再叙述。
1.首先,查找“选课”用例的对象,它涉及到课程,界面,控制对象。设计的角色有student,database。然后通过选课事件流具体分析对象与角色之间的交互的消息。
2.根据以上分析,可以得到的顺序图如图3:
(四)系统合作图
根据上述建立的顺序图,选中它然后按下F5键,生成对应的合作图(在设计中,只要做成其中的一种,就可生成另一种图)
(五)系统状态图
状态图用来建模对象是如何改变其状态以响应事件和展示对象从创建到删除的生命周期。状态图的任务就是用来描述一个对象所处的可能状态以及状态之间的转移,并给出状态变化序列的起点和终点。
以 “课程”这一对象为例,建立课程的状态图。其它对象的状态图不再叙述。
(六)系统类图
建立学生选课系统详细的类图,正确分析类间的关系以及它们在UML中的表示。对类正确分析是画好类图的关键,类的属性,操作的定义要恰当,各个类间的关系准确才能画出完整的正确类图。
1.系统中设计了界面类,课程类;角色有student,register,people,database。分析这些类和角色之间的关系,画出详细的类图。
2.得到详细的类图如图6:
学生选课系统使用说明书
配置源程序 附加数据库2005(1)打开SQL Server 2005(该应用程序中我以SQL Server身份登录),然后展开本地服务器,在“数据库”数据项上单击鼠标右键,在弹出的快捷菜单中选择“附加”菜单项。
(2)将弹出“附加数据库”对话框,在该对话框中单击【】按钮,选择所要附加数据库的db_xuanke.mdf文件,单击【确定】按钮,即可完成数据库的附加操作。
(3)打开visual studio 2008,找到“服务器资源管理器”,“添加链接”,在“链接到一个数据库”选项下选择名为db_xuanke文件,点击“测试链接”,链接成功,确定即可。
使用说明 系统介绍本系统属于小型简单的学生选课系统,可以有效地对学生选课进行管理,本系统应达到以下目标:
l 系统采用人机交互的方式,界面美观友好,信息查询灵活、方便,数据存储安全可靠。
l 实现教师进行添加,删除,修改,查询课程及基本设置;学生选课,查询自己已选课程等操作,以及教师,学生查看全体选课情况等。
l 对输入的数据,进行严格的数据检验,尽可能的避免人为错误。
l 系统应最大限度地实现易维护性和易操作性。
操作注意事项(1)本系统教师名为:淡淡的乐曲,密码为:111。学生先注册,才能登录系统。
(2)本系统共分为两种操作权限,分别为学生,教师:
l 学生:可以对学生,工具,帮助,退出菜单,及窗口布局“打开”进行使用操作。
l 教师:可以对除“学生”菜单和“打开”功能外的所有菜单进行管理操作。
(3)教师可以设置选课截止时间,学生选课总学分上限进行相关设置。
(4)当学生进行选课后,主窗口立即显示全体选课情况的更新。
操作流程(1) 启动系统,进入登录界面。如图1.1所示
(2) 若是学生登录系统,应先进行注册,然后才能登录系统。注册功能的界面如图1.2所示。(这里我实现如果注册成功,用户名自动显示在登录窗体的“用户名”文本框中)
(3) 用户输入用户名及密码,根据不同的权限进入不同的操作界面,如图1.3
(4) 当以教师身份进入系统后,进行添加,删除,修改等相关操作,如图1.4
(5) 教师可以对选课信息进行相关的设置,如图1.5
(6) 当已学生身份进入系统时,学生可进行选课,其选课的日期,总学分已被设置。(同时,该界面也显示了用户已选的所有课程)如图1.6
(7) 查询自己已选课程时,可选择“学生”菜单的“查询已选课程”,或者直接单击右下角的“打开”按钮进行查询。如图1.7
(8) 在“工具”菜单中,可进行万年历,计算器,截图工具操作。万年历窗体如图1.8
其它操作在这里就不在累述了。大致的使用说明就介绍到这里。