面向对象分析与设计
| 博客班级 | 班级链接 |
|---|---|
| 作业要求 | 作业连接 |
| 学号 | 3180701308 |
一.实验目的
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.问题陈述
- 大学教师选择本学期要教授的课程,每位教师最多只能上报 4 门课程。
- 教师选课结束后,教务管理人员进行协调和确认教师的课程,并创建本学期的
课程目录表,向学生公布。 - 学生填写课程选修表,每个学生最多选修 4 门课程;每门选修课程的学生数最
多为 10 人,最少为 3 人。人数达到 10 人时,停止学生登记注册此门课程; - 学生选课结束后,系统自动取消人数少于三人的课程。
- 学生按最终的课程表到财务处办理收费手续(billing system)。
- 教师可查询所教课程的学生花名册(roster)。
- 教务管理人员维护学生、教师和课程的信息。
2.用例图(Use Case View)的建模
①使用 Rational Rose 创建执行者(Actors)
《在线选修课程管理系统》中的执行者(Actors)
• 注册选修课程的学生
• 教授选修课程的教师
• 教务管理人员必须汇总选修课程情况,制作课程表
• 教务管理人员必须维护关于课程、教师和学生的所有信息
• 财务管理系统从本系统中取出收费信息

②用 Rational Rose 创建用例(Use Case)
《在线选修课程管理系统》中的用例(Use Case)
• 注册选修课程(学生);
• 选择教授的选修课程(教师);
• 索取课程花名册(Roster)(教师);
• 维护课程信息(教务管理人员);
• 维护教师信息(教务管理人员);
• 维护学生信息(教务管理人员);
• 创建课程目录(教务管理人员);

③使用 Rational Rose 创建主用例图(Main Use Case Diagram)

3、活动图(Activity Diagram)的建模
①使用 Rational Rose 创建活动图(Activity Diagram)

②使用 Rational Rose 创建活动(Activity)

③使用 Rational Rose 创建决策点(Decision Points)

④使用 Rational Rose 创建同步条(Synchronization Bar)

⑤ 使用 Rational Rose 创建泳道( Swim lanes)

⑥使用 Rational Rose 创建起始活动和终止活动

4.相关的包和类以及简单类图
① 在 Rational Rose 的 Browser 框中创建类(Class)

②在 Rational Rose 的 Browser 框中创建包(Packages)

③Rational Rose 中的主类图(Main Class Diagram)

④在 Rational Rose 中创建包中的主类图(Package Main Class Diagram)

- 用例实现图(Use Case Realization Diagram)
使用 Rational Rose 创建逻辑视图中的用例图(Use Case Diagram)


- 顺序图(Sequence Diagram)与合作图(Collaboration Diagram)
①使用 Rational Rose 创建顺序图(Sequence Diagram)

②在顺序图中创建对象和信息

③给顺序图中的对象分类

④将顺序图转换为合作图

- 调整类之间的关系
①使用 Rational Rose 创建关系(Relationship)

② 使用 Rational Rose 创建角色(Role)

③增加多重度

④创建包之间的关系

⑤使用 Rational Rose 创建属性和方法
⑥在类中增加了属性和操作后对类图的影响

⑦使用 Rational Rose 创建一个有泛化关系的类图

⑧将有泛化关系的类图进行扩展

⑨将有泛化关系的类图进行优化
⑩将有泛化关系的类图进行多层泛化

- 状态图(Statechart Diagram)
①使用 Rational Rose 创建状态图(Statechart Diagrams)

②使用 Rational Rose 创建状态(States)

③使用 Rational Rose 创建状态转换(State Transitions)

④使用 Rational Rose 创建起始状态
⑤使用 Rational Rose 创建结束状态

⑥使用 Rational Rose 增加状态转换的细节部分

⑦使用 Rational Rose 增加状态的 Actions 部分

五、个人小结
| psp2.1 | 任务内容 | 计算完成需要的时间(min) | 实际完成需要的时间(min) |
|---|---|---|---|
| Planning | 计划 | 20 | 20 |
| Estimate | 估计这个任务需要多少时间,并规划大致工作步骤 | 30 | 30 |
| Development | 开发 | 400 | 500 |
| Analysis | 需求分析 | 10 | 35 |
| Design Spec | 生成设计文档 | 10 | 40 |
| Design Review | 设计复审 | 30 | 50 |
| Coding Standard | 代码规范 | 5 | 5 |
| Design | 具体设计 | 10 | 12 |
| Coding | 代码 | 300 | 500 |
| Code Review | 代码复审 | 20 | 40 |
| Test | 测试 | 20 | 80 |
| Reporting | 报告 | 8 | 8 |
| Test Report | 测试报告 | 5 | 5 |
| Size Measurement | 计算工作量 | 25 | 25 |
| Postmortem & Process Improvement Plan | 事后总结,并提出过程改进计划 | 20 | 20 |
浙公网安备 33010602011771号