文档介绍:总体设计
设计过程
设计原理
启发规则
描绘软件结构的图形工具
面向数据流的设计方法
小结<br****题
设计过程
设想供选择的方案
选取合理的方案
推荐最佳方案
功能分解
设计软件结构
设计数据库
制定测试计划
书写文档
个人成果,妥善保存,请勿传播
分析模型和设计模型的转换
将分析模型转换为软件设计
个人成果,妥善保存,请勿传播
软件设计是后续开发步骤及软件维护工作基础如果没有设计,只能建立一个不稳定的系统结构
个人成果,妥善保存,请勿传播
软件设计的任务
从工程管理的角度来看,软件设计分两步完成
总体设计(概要设计),将软件需求转化为数据结构和软件的系统结构。
详细设计,即过程设计。通过对结构表示进行细化,得到软件详细的数据结构和算法。
设计过程
设想供选择的方案
提出各种可能的实现方案
以需求分析阶段的数据流图为出发点,画自动化边界,形成不同的实现系统方案
设想把数据流图中的处理分组的各种可能方法,抛弃在技术上行不通的分组方法
余下的分组方法代表可能的实现策略,并且可以启示供选择的物理系统
设计过程
选取合理的方案
从前一步得到的一系列供选择的方案中选取若干个合理的方案
通常至少选取低成本、中等成本和高成本的三种方案
在此基础上分析员对每种方案准备四份文档:
系统流程图
组成系统的物理元素清单
成本/效益分析
实现这个系统的进度计划
设计过程
推荐最佳方案
综合分析对比各种合理方案的利弊,从中选出一种自己认为是最理想的方案推荐
用户和技术专家应认真审查所推荐的最佳系统
如果该系统确实符合用户的需要,并且是在现有条件下完全能够实现的,则应该提请使用部门负责人进一步审批
在使用部门的负责人也接受了分析员所推荐的方案之后,将进入总体设计过程的下一个重要阶段结构设计
功能分解
首先是进行结构设计,确定系统是由哪些模块组成的,以及这些模块之间的关系
确定软件体系结构、数据结构
其次是过程设计,确定每个模块的处理过程
确定详细的数据结构、算法
为确定软件结构
首先需要从实现角度把复杂的功能进一步分解
用算法描述仔细分析数据流图中的每个处理,如果一个处理的功能过分复杂,必须把它的功能适当地分解成一系列比较简单的功能
应该使每个功能对大多数程序员而言都是明显易懂的
工具: 系统层次图System Design Hierarchy及(输入/输出图)HIPO