实验三 面向对象分析与设计
| 博客班级 | 班级链接 |
|---|---|
| 作业要求 | 作业连接 |
| 学号 | 3180701311 |
| 一、实验目的 | |
| 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)使用 Rational Rose 创建执行者(Actors)
![]()
(2)使用 Rational Rose 创建用例(Use Case)
![]()
(3)使用 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)
![]()
(6)使用 Rational Rose 创建起始活动和终止活动
![]()
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)在类中增加了属性和操作后对类图的影响
![]()
(6)使用 Rational Rose 创建一个有泛化关系的类图
![]()
(7)将有泛化关系的类图进行扩展
![]()
(8)将有泛化关系的类图进行多层泛化
![]()
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 增加状态的 Actions 部分
![]()
四.psp表格
| psp2.1 | 任务内容 | 计算完成需要的时间(min) | 实际完成需要的时间(min) |
|---|---|---|---|
| Planning | 计划 | 20 | 20 |
| Estimate | 估计这个任务需要多少时间,并规划大致工作步骤 | 30 | 30 |
| Development | 开发 | 400 | 500 |
| Analysis | 需求分析 | 10 | 15 |
| Design Spec | 生成设计文档 | 4 | 4 |
| Design Review | 设计复审 | 5 | 10 |
| Coding Standard | 代码规范 | 3 | 5 |
| Design | 具体设计 | 10 | 15 |
| Coding | 代码 | 30 | 50 |
| Code Review | 代码复审 | 5 | 8 |
| Test | 测试 | 6 | 10 |
| Reporting | 报告 | 6 | 9 |
| Test Report | 测试报告 | 3 | 3 |
| Size Measurement | 计算工作量 | 2 | 2 |
| Postmortem & Process Improvement Plan | 事后总结,并提出过程改进计划 | 5 | 5 |


































浙公网安备 33010602011771号