第8章O0设计 (1) ●静态:类图,用例图,包图 ●动态:顺序图,协作图,状态图,活动图 ●实现与部署:组件图,配置图(静态)
第8章 OO设计(1) ⚫ 静态:类图,用例图,包图 ⚫ 动态:顺序图,协作图,状态图,活动图 ⚫ 实现与部署:组件图,配置图(静态)
分析面临的主要问题 ●OOA与OOD的界限 ●对问题域和系统责任的理解 ●人与人之间的交流 ●需求的不断变化 ●软件复用的要求
分析面临的主要问题 ⚫ OOA与OOD的界限 ⚫ 对问题域和系统责任的理解 ⚫ 人与人之间的交流 ⚫ 需求的不断变化 ⚫ 软件复用的要求
OOA与OOD的界限 ●OOA:运用面向对象方法,对问题域和系统责任进行分 析和理解,找出所需的对象,定义对象的属性和操作以及 对象之间的关系,建立一个符合问题域,满足用户需求的 OOA模型。 ●OOA不考虑与系统具体实现有关的因素,而将其留给 OOD去处理。 OOD包括两方面的工作: 1)根据实现条件对OOA模型作某些必要的修改和调整。 2)针对具体实现条件,建立人机界面、数据存储和控制驱 动等模型
OOA与OOD的界限 ⚫ OOA:运用面向对象方法,对问题域和系统责任进行分 析和理解,找出所需的对象,定义对象的属性和操作以及 对象之间的关系,建立一个符合问题域,满足用户需求的 OOA模型。 ⚫ OOA不考虑与系统具体实现有关的因素,而将其留给 OOD去处理。 ⚫ OOD包括两方面的工作: 1)根据实现条件对OOA模型作某些必要的修改和调整。 2)针对具体实现条件,建立人机界面、数据存储和控制驱 动等模型
问题域和系统责任 ·软件分析人员必须尽快了解和明确: 1)问题域:被开发系统的应用领域,现实世界中,要求 系统处理的业务范围。 2)系统责任:所开发的系统应该具备的功能。 ●问题域不等于系统责任,它们有很多重合部分。 系统责任 金融业务 【办公管理 个人储蓄代发工资 1数据备份1 、收费业务贷款业务一 -2
⚫ 软件分析人员必须尽快了解和明确: 1)问题域:被开发系统的应用领域,现实世界中, 要求 系统处理的业务范围。 2)系统责任:所开发的系统应该具备的功能。 ⚫ 问题域不等于系统责任,它们有很多重合部分。 金融业务 个人储蓄 代发工资 收费业务 贷款业务 办公管理 数据备份 系统责任 问题域 问题域和系统责任
需求的不断变化 ●“需求变化是绝对的”。 ·最容易变化的是系统功能。 ·在面向对象方法中,最容易变化的成分是 对象中的操作,其次是对象间的交互与协 作,第三是对象的属性。 ●隐蔽内部操作,抽取高层类,可以使系统 稳定且易于应对需求变化
需求的不断变化 ⚫“需求变化是绝对的” 。 ⚫最容易变化的是系统功能。 ⚫在面向对象方法中,最容易变化的成分是 对象中的操作,其次是对象间的交互与协 作,第三是对象的属性。 ⚫隐蔽内部操作,抽取高层类,可以使系统 稳定且易于应对需求变化