面向对象的分析设计方法实验报告
### 面向对象的分析设计方法实验报告 #### 实验背景与目的 本次实验旨在通过实际操作加深学生对于面向对象分析与设计方法的理解,并掌握使用Rational Rose 2003这一专业工具进行UML图绘制的能力。通过具体案例的学习,能够熟练应用UML进行系统的需求分析、设计建模等关键环节的工作。 #### 实验环境 - **工具**: Rational Rose 2003 #### 实验内容与步骤 ##### 1. 面向对象分析 **确定系统的参与者** - **系统用户**: 操作员和管理员。操作员负责日常的人事档案信息管理工作,而管理员则负责基础数据维护和数据备份恢复工作。 **确定系统用例** - **人事档案信息管理用例**: 包括人事档案信息的变动管理、分类汇总统计、报表打印等功能。 - **系统账户管理用例**: 实现系统用户的增删查改打等功能。 - **部门数据维护用例**: 实现部门信息的增删查改打等功能。 - **系统维护用例**: 实现系统数据的备份和恢复功能。 **识别系统中的类** - **参与者相关的类**: 包含登录名、密码、类别(操作员或管理员)、操作权限等属性。 - **外部实体(数据库)类**: - **员工人事档案信息类**: 包含员工编号、姓名、所在部门、性别、年龄等属性。 - **部门信息类**: 包含部门编号、部门名称等属性。 - **边界类**: - 系统用户登录窗口、系统主界面窗口、用户信息管理窗口。 - 员工人事档案信息管理窗口、人事信息查询显示窗口、分类统计窗口、人事信息报表打印窗口。 - 管理员部门信息管理窗口、管理员系统备份与恢复窗口。 - **控制类**: 在面向对象设计阶段识别。 **确定系统的包** - **一级包**: 人事档案信息管理、账户管理、系统数据管理。 - **二级包**: - 人事档案信息管理: 人事信息编辑、分类汇总统计、报表打印。 - 系统数据管理: 部门数据维护、数据备份与恢复。 **绘制UML图** - **用例图**: - 账户管理用例图。 - 人事档案信息管理用例图。 - **包图**: - 创建一级包: “人事档案信息管理”、“系统数据管理”。 - 创建二级包: 人事信息编辑、分类汇总统计、报表打印, 部门数据维护、数据备份与恢复。 - **活动图**: 描述了系统的业务流程。 - **序列图**: 展示了系统中对象间的交互过程。 - **协作图**: 描述了对象之间的交互关系。 ##### 2. 面向对象设计 **识别控制类** - 增加控制类`AccountDBManager`, 并更新序列图和协作图。 **对类进行详细设计** - **建立实体类图**: - 明确各实体类的属性。 - **给类添加方法**: - 定义各类的操作行为。 - **建立边界类**: - 设计与用户交互的界面。 - **建立控制类**: - 设计控制逻辑。 - **建立账户管理主类图**: - 综合各类关系形成完整的类图。 #### 实验总结与思考 通过本次实验, 学生不仅掌握了使用Rational Rose 2003绘制UML图的基本技能, 还深入了解了面向对象分析设计的全过程。从需求分析到最终的设计实现, 每一步都体现了面向对象的核心思想。此外, 通过对不同类型的UML图的学习与实践, 学生们更加深刻地理解了如何利用这些图形化工具来清晰地表达系统架构和运行逻辑。 #### 问题及思考题解析 1. **分析讨论Visio对需求分析有何帮助** - Visio作为一种图形化工具, 可以直观地展示需求分析的结果, 使得需求之间的关系更加清晰明了。它支持智能连接, 自动布局等功能, 大大提高了绘制图表的效率, 对于需求文档的编写具有极大的帮助作用。 2. **请说明结构化分析与面向对象分析的主要差别** - **结构化分析**侧重于自顶向下地分析数据流和处理过程, 强调的是数据流图、数据字典等概念, 主要是基于数据流进行系统的设计。而**面向对象分析**则更注重于模拟人类思维模式, 通过对象、类、继承等概念来组织系统, 使得系统的结构与人类认知更加接近, 更容易理解和维护。 - 结构化分析倾向于将系统划分为功能模块, 每个模块都有明确的输入输出, 通过这些模块的组合来构建整个系统。面向对象分析则通过定义对象及其属性和方法来描述系统, 强调对象间的交互和消息传递, 更侧重于系统的行为和动态特性。 通过对比两种分析方法, 可以看出它们各自的优势和适用场景, 在实际项目中可以根据具体情况选择最适合的方法来进行需求分析和设计。
- 粉丝: 3
- 资源: 20
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助