§4.系统分解 1、子系统之间的交互方式( collaboration) ①客户-供应商 client-server)关系: Client request Server subsystem subsystem contract ②平等伙伴( peer-to-peer)关系: request PEer Peer subsystem subsystem request contract contract
11 §4. 系 统 分 解 1、子系统之间的交互方式(collaboration) ① 客户-供应商(client-server)关系: ② 平等伙伴(peer-to-peer)关系: Client subsystem contract Server subsystem request contract Peer subsystem contract Peer subsystem request request
§4.系统分解 2、系统组织方案 ①水平层次组织: 将系统组织成 hierarchy,同一层中的 objects相 互独立,而上、下层间有 client-server关系。 个 client只能调用其相邻下层的 server 封闭式( closed 一个 clien可调用其下任一层的 Server 开放式(open) 优点:高效; 缺点:修改影响面广
12 §4. 系 统 分 解 2、系统组织方案 ① 水平层次组织: 将系统组织成hierarchy,同一层中的objects相 互独立,而上、下层间有 client-server关系。 一个client只能调用其相邻下层的server —— 封闭式(closed) 一个client可调用其下任一层的server —— 开放式(open) 优点:高效; 缺点:修改影响面广
§4.系统分解 ②垂直块组织: 将系统垂直分解成若干独立的子系统,一个子 系统相当于一块,每块提供一种类型的服务。 典型应用系统的组织结构 用软件包 口图形 话控制屏图形仿真 人机对 软件包 系图形 操作系统 计算机硬件
13 HCI 典型应用系统的组织结构 应 用 软 件 包 操 作 系 统 计 算 机 硬 件 人机对 话控制 仿真 软件包 图形 处理 窗口图形 屏幕图形 象素图形 §4. 系 统 分 解 ② 垂直块组织: 将系统垂直分解成若干独立的子系统,一个子 系统相当于一块,每块提供一种类型的服务
§5.设计类中的服务 细化 object model中的 methods 1、确立服务 Status 1 do: Action 1)从 dynamic model出发: Event Status 2 Ido: Action 2 (0从 unction mode发:国一一
14 §5. 设计类中的服务 —— 细化object model中的 methods 1、确立服务 ⑴ 从 dynamic model出发: Event Status 1 do: Action 1 Status 2 do: Action 2 …… ⑵ 从function model出发: I P O
§5.设计类中的服务 2、设计实现方法 (1)算法设计:要求做到易修改,并且复杂度低(即 效率高) 易理解,易实现。 (2)数据结构设计:需要考虑具体的物理结构的选择。 (3)新添用于存放内部处理中间结果的clas;引入新 的低层操作,进一步细化
15 §5. 设计类中的服务 2、设计实现方法 ⑴ 算法设计:要求做到易修改,并且复杂度低(即 效率高) 易理解,易实现。 ⑵ 数据结构设计:需要考虑具体的物理结构的选择。 ⑶ 新添用于存放内部处理中间结果的class;引入新 的低层操作,进一步细化