博客班级 | AHPU软件工程 |
---|---|
作业要求 | 面向对象分析与设计 |
作业目标 | 了解基于UML的面向对象分析与设计方法,以及各种状态图的绘制 |
学号 | 3180701126 |
一.实验目的
1、了解基于UML的面向对象分析与设计方法
2、掌握用例图的绘制、用例规约(文档)的编制
3、掌握类图、活动图、状态图、时序图的绘制方法
二、实验内容
1、参照实验指导书完成在线选课系统、或试卷自动生成系统,或人事信息管理系统的用例图、类图、活动图、状态图、时序图等的
绘制
【实例1】在线选课系统
-
大学教师选择本学期要教授的课程,每位教师最多只能上报 4 门课程。
-
教师选课结束后,教务管理人员进行协调和确认教师的课程,并创建本学期的课程目录表,向学生公布。
-
学生填写课程选修表,每个学生最多选修 4 门课程;每门选修课程的学生数最多为 10 人,最少为 3 人。人数达到 10 人时,停
止学生登记注册此门课程;
-
学生选课结束后,系统自动取消人数少于三人的课程。
-
学生按最终的课程表到财务处办理收费手续(billing system)。
-
教师可查询所教课程的学生花名册(roster)。
-
教务管理人员维护学生、教师和课程的信息。
【实例2】试卷自动生成系统
-
教师根据教学资料录入试题,并对其进行分类。待需要考试时,设置好一定的条件,系统就从题库中选中试题自动生成考试试卷
-
考试试卷生成系统的成卷模式应用智能出卷(由系统随机选题)和手工出卷(教师自己选择题目)两种组卷方式
【实例3】人事信息管理系统
参考:阿里巴巴钉钉智能人事系统
2、完成对教材订购系统,或飞机订票系统(根据自己的选题)面向对象的建模
三、实验步骤
1、熟悉Rational rose的绘图方法,阅读实验指导《使用 Rational Rose 进行 UML 可视化建模》,以及实验指导书实验十一与实
验十二
2、使用 Rational rose 完成在线选课系统、或试卷自动生成系统,或人事信息管理系统等的用例图、类图的绘制
3、使用 Rational rose 完成在线选课系统、或试卷自动生成系统,或人事信息管理系统等的活动图、状态图、时序图等的绘制
4、使用教材中用例描述模版描述在线选课系统的 Register for course 用例或试卷自动生成系统的自动组卷用例,或人事信息管理
系统等中的某个用例
5、为教材订购系统,或飞机订票系统等(根据自己的选题)绘制用例图,并分析某个用例为其绘制类图、时序图、活动图等
四、实验结果
1.用例图(Use Case View)的建模
1.《在线选修课程管理系统》中的执行者(Actors)
- 使用 Rational Rose 创建执行者(Actors)
如图:
3.《在线选修课程管理系统》中的用例(Use Case)
4.使用 Rational Rose 创建用例(Use Case)
如图:
- 使用 Rational Rose 创建主用例图(Main Use Case Diagram)
如图:
2.活动图(Activity Diagram)的建模(以建立选修课程目录表为例)
1.使用 Rational Rose 创建活动图(Activity Diagram)
2.使用 Rational Rose 创建活动(Activity)
如图:
3.使用 Rational Rose 创建决策点(Decision Points)
如图:
4.使用 Rational Rose 创建同步条(Synchronization Bar)
如图:
5.使用 Rational Rose 创建泳道( Swim lanes)
如图:
3.相关的包和类以及简单类图
1.在 Rational Rose 的 Browser 框中创建类(Class)
如图:
2.在 Rational Rose 的 Browser 框中创建包(Packages)
如图:
3.Rational Rose 中的主类图(Main Class Diagram)
如图:
4.在 Rational Rose 中创建包中的主类图(Package Main Class Diagram)
如图:
4.用例实现图(Use Case Realization Diagram)
1.使用 Rational Rose 创建逻辑视图中的用例图(Use Case Diagram)
如图:
5.顺序图(Sequence Diagram)与合作图(Collaboration Diagram)
1.使用 Rational Rose 创建顺序图(Sequence Diagram)
如图:
2.在顺序图中创建对象和信息
如图:
3.给顺序图中的对象分配类
如图:
4.将顺序图转换为合作图
如图:
6.调整类之间的关系
1.使用 Rational Rose 创建关系(Relationship)
如图:
2.使用 Rational Rose 创建角色(Role)
如图:
3.增加多重度
如图:
4.创建包之间的关系
如图:
5.使用 Rational Rose 创建属性和方法
6.在类中增加了属性和操作后对类图的影响
如图:
7.使用 Rational Rose 创建一个有泛化关系的类图
如图:
8.将有泛化关系的类图进行扩展
如图:
9.将有泛化关系的类图进行优化
如图:
10.将有泛化关系的类图进行多层泛化
如图:
7.状态图(Statechart Diagram)
1.使用 Rational Rose 创建状态图(Statechart Diagrams)
如图:
2.使用 Rational Rose 创建状态(States)
如图:
3.使用 Rational Rose 创建状态转换(State Transitions)
如图:
4.使用 Rational Rose 创建起始状态
如图:
5.使用 Rational Rose 创建结束状态
如图:
6.使用 Rational Rose 增加状态转换的细节部分
如图:
7.使用 Rational Rose 增加状态的 Actions 部分
如图:
8.飞机订票系统
1.用例图
<1>系统顶层用例图
<2>注册用户用例图
<3>系统管理员用例图
2.类图
3.时序图
4.协作图
<1>查询并修改个人信息协作图
<2>订票与查票协作图
个人小结
psp表格
psp2.1 | 任务内容 | 计划完成需要的时间(min) | 实际完成需要的时间(min) |
---|---|---|---|
Planning | 计划 | 110 | 10 |
Development | 开发 | 110 | 150 |
Analysis | 需求分析(包括学习新技术) | 10 | 10 |
Design Spec | 生成设计文档 | 30 | 40 |
Design Review | 设计复审 | 5 | 10 |
Coding Standard | 代码规范 | 5 | 5 |
Design | 具体设计 | 10 | 12 |
Coding | 具体编码 | 30 | 20 |
Code Review | 代码复审 | 5 | 7 |
Test | 测试(自我测试,修改代码,提交修改) | 8 | 16 |
Reporting | 报告 | 9 | 6 |
Test Report | 测试报告 | 5 | 5 |
Size Measurement | 计算工作量 | 3 | 1 |
Postmortem & Process Improvement Plan | 事后总结,并提出过程改进计划 | 3 | 3 |