第5章总体设计 5.,1设计过程 5.,2设计原理 53启发规则 5.4描绘软件结构的图形工具 5.5面向数据流的设计方法
第5章 总体设计 5.1 设计过程 5.2 设计原理 5.3 启发规则 5.4 描绘软件结构的图形工具 5.5 面向数据流的设计方法
软件设计宜言: Mitch Kapor 什么是设计?设计是你站在两个世界技 术世界和人类的目标世界而你尝试将这两 个世界结合在一起 ●●●●●● 罗马建筑批评家Ⅴ vitruvius提出的观念: “设计良好的建筑应该展示出坚固、适用和令 人赏心悦目
软件设计宣言:Mitch Kapor ◼ “什么是设计?设计是你站在两个世界——技 术世界和人类的目标世界——而你尝试将这两 个世界结合在一起……”。 罗马建筑批评家Vitruvius提出的观念: ◼ “设计良好的建筑应该展示出坚固、适用和令 人赏心悦目
软件设计是后续开发步骤及软件维护工作的基础。如果 没有设计,只能建立一个不稳定的系统结构 维护 维护 测试 测试 实现 实现 设计 有软件设计 没有软件设计
3 软件设计是后续开发步骤及软件维护工作的基础。如果 没有设计,只能建立一个不稳定的系统结构
设计阶段: 从工程管理的角度,可以将软件设计分为概要 设计阶段和详细设计阶段 从技术的角度,传统的结构化方法将软件设计 划分为体系结构设计、数据设计、接口设计和 过程设计4部分。 面向对象方法则将软件设计划分为体系结构设 计、类设计数据设计、接口设计和构件级设 计4部分
设计阶段: ◼ 从工程管理的角度,可以将软件设计分为概要 设计阶段和详细设计阶段。 ◼ 从技术的角度,传统的结构化方法将软件设计 划分为体系结构设计、数据设计、接口设计和 过程设计4部分。 ◼ 面向对象方法则将软件设计划分为体系结构设 计、类设计/数据设计、接口设计和构件级设 计4部分
概要设计,将软件需求转化为数据结构和软件的系统结构。 详细设计,即过程设计。通过对结构表示进行细化,得到 软件详细的数据结构和算法。 管理观点 概要设计 详细设计 接口设计 过程设计 类设计(00法)(传统方法) 技术观点 数据设计 构件级设计 体系结构设计(0法)
概要设计,将软件需求转化为数据结构和软件的系统结构。 详细设计,即过程设计。通过对结构表示进行细化,得到 软件详细的数据结构和算法