第士二章面向对象系统没计 122问题域部分设计(PDC:主体部件设计) 问题域部分 (PDC)设计 1.为什么需要问题域部分设计 首先,让我们先来分析一下在描述系统时的遇到的变动因 素和稳定因素,这是面向对象分析方法的策略基础 系统需求 最容易变动的就是加 但是,系统中最稳定的方面,就 工与子加工,就是服务; 是问题空间被当作整体看待的对象 其次,与外界的接口 也是容易变动; 要使系统从容地适应变化的需求 第三,描述问题空间 保持总体结构的稳定性就显得格 中的实体所用的数据属性外重要,重用的关键可扩充性所需 有时也在发生变化 要的
第十二章 面向对象系统设计 1. 为什么需要问题域部分设计 首先,让我们先来分析一下在描述系统时的遇到的变动因 素和稳定因素,这是面向对象分析方法的策略基础。 12.2问题域部分设计 (PDC:主体部件设计) 问题域部分 (PDC)设计 但是,系统中最稳定的方面,就 是问题空间被当作整体看待的对象 , 要使系统从容地适应变化的需求 ,保持总体结构的稳定性就显得格 外重要,重用的关键\可扩充性所需 要的。 系统需求 最容易变动的就是加 工与子加工,就是服务; 其次,与外界的接口 也是容易变动; 第三,描述问题空间 中的实体所用的数据属性 有时也在发生变化
第士二章面向对象系统没计 122问题域部分(PDC)设计 问题域部分 (PDC)设计 2如何进行问题域部分设计 首先:对需求说明修改,使它们反映到问题模型中, 其次,针对特定的实现环境,对分析结果加以增补 用设计和编程类; 把问题域专用类组合在一起; 要考虑以 通过增添一般类而建立协议; 下因素: 调整继承的支持级别; 改进性能; 提供数据管理部分; 增加低层细节; 不要仅为反映队伍分工而作修改 复审并挑剔对面向对象分析结果增补
第十二章 面向对象系统设计 2 如何进行问题域部分设计 首先:对需求说明修改,使它们反映到问题模型中, 其次,针对特定的实现环境,对分析结果加以增补。 12.2问题域部分(PDC)设计 问题域部分 (PDC)设计 ·把问题域专用类组合在一起; ·通过增添一般类而建立协议; ·复审并挑剔对面向对象分析结果增补 ·调整继承的支持级别; ·提供数据管理部分; ·不要仅为反映队伍分工而作修改 ·增加低层细节; ·改进性能; 要考虑以 下因素: ·重用设计和编程类;
第士二章面向对象系统没计 12问题域部分(PDC)设计 问题域部分 (PDC)设计 重用设计和编程类; OO/首先考虑 首先考虑如何从自己的 的因素: 或别人的源程序中把现 成的类增加到问题域部 分。现成的类可能是 用面向对象方法编写的, 其次,划掉现成 也可能是用某种非面向 类中任何不用的 接着,划掉问题 对象方法编写的可用软 属性和服务;并 域类中不再需要 的部分,这些属 件 增加一个现成类 性和服务现在是 在后一种情况下,把软 到问题域类之间 从现成类中继承 件封装在一个特意设计 的一般/特殊关 的、基于服务的界面中, 系 的了,并修正问 题域类的结构和 改造成类的形式,把现 连接,必要时把 成的类增加到问题域部 它们移向现成类 分中
第十二章 面向对象系统设计 11.2问题域部分(PDC)设计 问题域部分 (PDC)设计 首先考虑 的因素: ·重用设计和编程类; 首先考虑如何从自己的 或别人的源程序中把现 成的类增加到问题域部 分。 现成的类可能是 用面向对象方法编写的, 也可能是用某种非面向 对象方法编写的可用软 件, 在后一种情况下,把软 件封装在一个特意设计 的、基于服务的界面中, 改造成类的形式,把现 成的类增加到问题域部 分中。 其次,划掉现成 类中任何不用的 属性和服务;并 增加一个现成类 到问题域类之间 的一般/特殊关 系。 接着,划掉问题 域类中不再需要 的部分,这些属 性和服务现在是 从现成类中继承 的了,并修正问 题域类的结构和 连接,必要时把 它们移向现成类
第士二章面向对象系统没计 122问题域部分(PDC)设计 问题域部分 (PDC)设计 把问题域专用类组合在起;。。其次考虑 在面向对象设 的因素 计中,通常先 引入一个类以 便把问题域专 用的类组合在 起,它仅仅 如图所示的例子中的“面向对象 起到“根”类 分析Roo'就是这样的一个“根” 的作用,把全 类 部下层的类组 当没有一种更满意的组合机制可 在一起 合一构 用时,这实际上就是一种把类库 般/特殊结 中的某些类组织在一起的方法。 而且这样的类可以用于建 协议
第十二章 面向对象系统设计 12.2问题域部分(PDC)设计 问题域部分 (PDC)设计 其次考虑 在面向对象设 的因素 计中,通常先 引入一个类以 便把问题域专 用的类组合在 一起,它仅仅 起到“根”类 的作用,把全 部下层的类组 合在一起。 一般/特殊结 构 如图所示的例子中的“面向对象 分析Root”就是这样的一个“根” 类 当没有一种更满意的组合机制可 用时,这实际上就是一种把类库 中的某些类组织在一起的方法。 而且这样的类可以用于建立一个 协议 ·把问题域专用类组合在一起;
第士二章面向对象系统没计 122问题域部分(PDC)设计 问题域部分 (PDC)设计 把间题域专用类组合在一起:°°○/其次考虑 面向对象分析Root 的因素 面向对象分析 Subject 面向对象分析 Attribute 面向对象分析 Class 面向对象分析 Connection 面向对象分析 Service 面向对象分析 GenSpec Connection 面向对象分析 Instance Connection 面向对象分析 Message Connection 面向对象分析Part Connection
第十二章 面向对象系统设计 12.2问题域部分(PDC)设计 问题域部分 (PDC)设计 面向对象分析Root 面向对象分析 Subject 面向对象分析 Attribute 面向对象分析 Class 面向对象分析 Connection 面向对象分析 Service 面向对象分析GenSpec Connection 面向对象分析Instance Connection 面向对象分析Message Connection 面向对象分析Part Connection ·把问题域专用类组合在一起; 其次考虑 的因素