第六章面向对象的设计 面向对象的设计模型 系统设计 ■对象设计 ■领域对象设计
第六章 面向对象的设计 n 面向对象的设计模型 n 系统设计 n 对象设计 n 领域对象设计
面向对象设计的任务 面向对象设计的任务 系统设计 系统整体结构的设计 对象设计 对OOA模型中类/对象模型的具体化和细化 消息设计 从对象关系模型,设计出消息模型 设计模型复审
面向对象设计的任务 n 面向对象设计的任务 n 系统设计 n 系统整体结构的设计 n 对象设计 n 对OOA模型中类/对象模型的具体化和细化 n 消息设计 n 从对象- 关系模型,设计出消息模型 n 设计模型复审
面向对象设计 属性、操作、 协作者 11 类/对 对象 象 使用关系模型 模型实例 1冒悬 1酱Ⅳ证亲 对象行为模 型 1当
面向对象设计 设 任 责 计 计设息消 计设象对及类 计设统系子 属 性 、 操 作 、 协作者 对象-行为模 型 对象- 关系模型 类 / 对 象 模型 使用 实例
系统设计过程 (1)划分子系统; (2)确定需要并发运行的子系统并为它们分配处理 器 (3)描述子系统之间的通信; (4)确定系统资源的管理和控制; (5)确定人机交互构件; (6)选择实现数据管理和任务管理的基本策略
系统设计过程 ⑴ 划分子系统; ⑵ 确定需要并发运行的子系统并为它们分配处理 器; ⑶ 描述子系统之间的通信; ⑷ 确定系统资源的管理和控制; ⑸ 确定人机交互构件; ⑹ 选择实现数据管理和任务管理的基本策略
四种主要子系统 ■问题域子系统 人机交互子系统 ■任务管理子系统 ■数据管理子系统
四种主要子系统 n 问题域子系统 n 人机交互子系统 n 任务管理子系统 n 数据管理子系统
划分子系统 划分原则 模块化、功能独立、信息隐藏 同一个子系统的类拥有共同特性 同一个子系统的类具有共同目的 同一个子系统的类提供相似服务 同一个子系统的类间相对高耦合 子系统标准 有明确的借口,与其他子系统通信 一般类只和子系统内部的其它类协作
划分子系统 n 划分原则 n 模块化、功能独立、信息隐藏 n 同一个子系统的类拥有共同特性 n 同一个子系统的类具有共同目的 n 同一个子系统的类提供相似服务 n 同一个子系统的类间相对高耦合 n 子系统标准 n 有明确的借口,与其他子系统通信 n 一般类只和子系统内部的其它类协作
处理并发操作 并发的对象(子系统) 同时 n异步 作用于同一事件 ■处理 将并发子系统分配到不同处理器 将并发子系统分配到同一处理器 系统提供同步控制
处理并发操作 n 并发的对象(子系统) n 同时 n 异步 n 作用于同一事件 n 处理 n 将并发子系统分配到不同处理器 n 将并发子系统分配到同一处理器 n 系统提供同步控制
描述子系统间的通信 ■子系统协作模型 客户/服务器 端对端 客户|请求 服务器 子系统 子系统 请求 peer Subsystem subsystem 请求
描述子系统间的通信 n 子系统协作模型 n 客户/服务器 n 端对端 客户 请求 子系统 contract 服务器 子系统 peer subsystem peer subsystem 请求 请求
人机交互设计 ■分类分析用户特点,设计不同界面 ■增加用户界面专用的类和对象 ■利用快速原型演示,改进界面设计
人机交互设计 n 分类分析用户特点,设计不同界面 n 增加用户界面专用的类和对象 n 利用快速原型演示,改进界面设计
任务管理设计 策略 确定任务的特征 定义一个协调者任务和与之关联的对象 集成其它任务和协调者 ■步骤 识别由事件驱动和时间驱动的任务 识别关键性任务、任务优先级和任务管理类 定义任务 必要时扩充有关任务的类和对象
任务管理设计 n 策略 n 确定任务的特征 n 定义一个协调者任务和与之关联的对象 n 集成其它任务和协调者 n 步骤 n 识别由事件驱动和时间驱动的任务 n 识别关键性任务、任务优先级和任务管理类 n 定义任务 n 必要时扩充有关任务的类和对象