软件设计
软件设计的目的
软件需求:解决“做什么”
⇩
软件设计:解决“怎么做”
软件设计的前提
需求分析,即已经完全弄清楚了软件的各种需求
结构化设计(Structured Design)的前提
结构化分析
传统方法学采用结构化设计技术,完成软件设计工作
软件设计
软件设计的任务
根据用信息域表示的软件需求,以及功能和性能需求,进行
数据设计:侧重于数据结构的定义
系统结构设计
过程设计
开发阶段的信息流
软件设计任务
从工程管理的角度来看,通常把软件设计工作划分为两个阶段:
概要设计(总体设计)
将软件需求转化为数据结构和软件的系统结构。系统设计,确定系统具体的物理实现方案;结构设计确定软件的结构,即各模块的划分及相互关系。
详细设计
即过程设计。确定软件模块内部的详细的数据结构和算法。
软件设计
软件设计在软件工程过程中处于技术核心地位
软件设计是后续开发步骤及软件维护工作的基础。如果没有软件设计,只能建立一个不稳定的系统结构。
将分析模型转换为软件设计
数据
字典
数据
流图
E-R图
状态转换图
加
工
说
明
控制说明
数
据
对
说
明
象
数据设计
体系结构设计
接口设计
过程设计
分析模型
设计模型
第五章总体设计 软件总体设计过程
阅读和理解软件需求说明书,明确实现的条件,从而确定设计的目标,以及它们的优先顺序。据此确定若干个合理的目标系统的物理实现方案。每个方案要包括:
系统流程图
组成系统的物理元素清单
成本/效益分析
实现这个系统的进度计划
推荐最佳方案
软件总体设计过程
设计软件结构
采用某种设计方法,将系统按功能划分成模块的层次结构
确定每个模块的功能
确定模块间的调用关系
确定模块间的接口
评估模块划分的质量
数据结构设计
确定软件涉及的文件系统的结构以及数据库的模式、子模式,进行数据完整性和安全性的设计
确定输入、输出文件的详细的数据结构
编写概要设计阶段的文档
概要设计说明书
数据库设计说明书
用户手册
制定初步的测试计划
软件总体设计过程
超好的软件工程004 来自淘豆网www.taodocs.com转载请标明出处.