第十章面向对象分析 ■面向对象分析的基本过程 ■需求陈述 建立对象模型 ■建立动态模型 建立功能模型 ■定义服务
第十章 面向对象分析 ◼ 面向对象分析的基本过程 ◼ 需求陈述 ◼ 建立对象模型 ◼ 建立动态模型 ◼ 建立功能模型 ◼ 定义服务
面向对象分析的基本过程 ■概述 三个子模型与五个层次 Object model:最重要,开发任何系统都需要 Dynamic model:对于开发交互式系统( interactive systen) 很重要; ■ Function model:对于开发大运算量问题(如科学计算 编译系统等)很重要 Object model由五个层次组成(Coad& Yourdon, 1991,相当于把五张透明胶片 transparencies叠在 起,每一层显示更多的细节
面向对象分析的基本过程 ◼ 概述 ◼ 三个子模型与五个层次 ◼ Object model:最重要,开发任何系统都需要; ◼ Dynamic model:对于开发交互式系统(interactive system) 很重要; ◼ Function model:对于开发大运算量问题(如科学计算、 编译系统等)很重要。 ◼ Object model 由五个层次组成(Coad&Yourdon, 1991),相当于把五张透明胶片(transparencies)叠在 一起,每一层显示更多的细节
需求陈述 ■10.21书写要点 ■10.22例子
需求陈述 ◼ 10.2.1 书写要点 ◼ 10.2.2 例子
需求陈述 ■书写要点 ■问题范围 功能需求 ■性能要求 ■应用环境 假设条件
需求陈述 ◼ 书写要点 ◼ 问题范围 ◼ 功能需求 ◼ 性能要求 ◼ 应用环境 ◼ 假设条件
建立对象模型 ■10.31确定类一&一对象 ■10.3,2确定关联 ■10.33划分主题 ■10.34确定属性 ■10.35识别继承关系 ■10.3.6反复修改
建立对象模型 ◼ 10.3.1 确定类一&一对象 ◼ 10.3.2 确定关联 ◼ 10.3.3 划分主题 ◼ 10.3.4 确定属性 ◼ 10.3.5 识别继承关系 ◼ 10.3.6 反复修改
建立对象模型 ■确定类一&-对象 列出所有候选对象( candidates),它们可能是物 理实体人或组织要处理的事件对象间的活动 抽象概念 ■去粗取精
建立对象模型 ◼ 确定类一&一对象 ◼ 列出所有候选对象(candidates),它们可能是 物 理实体 人或组织 要处理的事件 对象间的活动 抽象概念 ◼ 去粗取精
建立对象模型 ■确定关联 收集 需求陈述中涉及 objets的动词短语 ■需求陈述中隐含的关联 根据问题域知识得出的关联
建立对象模型 ◼ 确定关联 ◼ 收集 ◼ 需求陈述中涉及objets的动词短语 ◼需求陈述中隐含的关联 ◼ 根据问题域知识得出的关联
建立对象模型 ■确定关联 ■筛选 ■删除与已删去的 object有关的关联 ■与问题无关的或应在实现阶段考虑的关联 瞬时事件:注意关联描述静态结构 三元关联:分解为二元关联或限定关联 派生关联:即可用其它关联定义的冗余关联 元 正名分解补充 标明阶数
建立对象模型 ◼ 确定关联 ◼ 筛选 ◼ 删除与已删去的object 有关的关联 ◼ 与问题无关的或应在实现阶段考虑的关联 ◼ 瞬时事件:注意关联描述静态结构 ◼ 三元关联:分解为二元关联或限定关联 ◼ 派生关联:即可用其它关联定义的冗余关联 ◼ 完善 ◼ 正名分解补充 ◼ 标明阶数
建立对象模型 ■10.31确定类一&一对象 ■10.3,2确定关联 ■10.33划分主题 ■10.34确定属性 ■10.35识别继承关系 ■10.3.6反复修改
建立对象模型 ◼ 10.3.1 确定类一&一对象 ◼ 10.3.2 确定关联 ◼ 10.3.3 划分主题 ◼ 10.3.4 确定属性 ◼ 10.3.5 识别继承关系 ◼ 10.3.6 反复修改
建立对象模型 ■10.31确定类一&一对象 ■10.3,2确定关联 ■10.33划分主题 ■10.34确定属性 ■10.35识别继承关系 ■10.3.6反复修改
建立对象模型 ◼ 10.3.1 确定类一&一对象 ◼ 10.3.2 确定关联 ◼ 10.3.3 划分主题 ◼ 10.3.4 确定属性 ◼ 10.3.5 识别继承关系 ◼ 10.3.6 反复修改