面向对象分析与设计
博客班级 | 班级链接 |
---|---|
作业要求 | 作业连接 |
学号 | 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 |