软件生命周期 件生存周期 可行性研究 软件定义 需求分析 概要设计 详细设计 软件开发 实现 集成测试 确认测试 软件使用 使用与维护 与维护 退役
软件生存周期 可行性研究 需求分析 概要设计 详细设计 实 现 集成测试 确认测试 使用与维护 退役 软件定义 软件开发 软件使用 与维护 软件生命周期
软件设计是后续开发步骤及软件维护工作的 基础。如果没有设计,只能建立一个不稳定 的系统结构 维护 维护 测试 测试 实现 实现 设计 有软件设计 没有软件设计
第五章软件设计 主要内容: 软件设计的目标和任务 软件设计基础 模块的独立性 结构化设计方法 数据设计及文件设计 过程设计
第五章 软件设计 主要内容: ▲ 软件设计的目标和任务 ▲ 软件设计基础 ▲ 模块的独立性 ▲ 结构化设计方法 ▲ 数据设计及文件设计 ▲ 过程设计
讨论要点 (1)如何将分析模型转换为软件 设计? (2)作为软件工程师在软件设计 方面应使用哪些基本原则和 概念?
讨论要点 (1)如何将分析模型转换为软件 设计? (2)作为软件工程师在软件设计 方面应使用哪些基本原则和 概念?
引言:软件设计的目标和目的 软件需求:解决“做什么” 软件设计:解决“怎么做” 1.软件设计的任务 问题结构(软件需求)软件结构 从软件需求规格说明书出发,形成软 件的具体设计方案
引言: 软件设计的目标和目的 软件需求:解决“做什么” 软件设计:解决“怎么做” 1. 软件设计的任务 问题结构(软件需求) 软件结构 从软件需求规格说明书出发,形成软 件的具体设计方案。 映射
将分析模型转换为软件设计 数 射/ER图 过程设计 数据、规 数据流图 接口设计 描 字典人 体系结构设计 状态变迁 控制规约 数据设计 分析模型 设计模型
数 据 设 计 体系结构设计 接口设计 过程设计 分析模型 设计模型
2.软件的总体结构主要回答的问题 ◆软件的组成部分 ◆软件的层次关系 ◆模块的内部处理逻辑 ◆模块之间的界面
2.软件的总体结构主要回答的问题 u软件的组成部分 u软件的层次关系 u模块的内部处理逻辑 u模块之间的界面
3.软件设计的问题 工具一如何描述软件的总体结构 G方法一用什么方法有问题结构导出 软件结构 G评估准则一什么样的软件结构是 “最优的
3. 软件设计的问题 F工具 — 如何描述软件的总体结构 F方法 — 用什么方法有问题结构导出 软件结构 F评估准则 — 什么样的软件结构是 “最优的
4.软件设计方法 结构化设计方法(SD 面向数据结构的设计方法(JSD方法) G面向对象的设计方法(0OD)
4. 软件设计方法 F结构化设计方法(SD) F面向数据结构的设计方法(JSD方法) F面向对象的设计方法(OOD)
5.软件设计分为两个阶段: (1)概要设计(总体设计) 确定软件的结构以及各组成成分 (子系统或模块)之间的相互关系。 (2)详细设计 确定模块内部的算法和数据结构, 产生描述各模块程序过程的详细文
5. 软件设计分为两个阶段: (1)概要设计(总体设计) 确定软件的结构以及各组成成分 (子系统或模块)之间的相互关系。 (2)详细设计 确定模块内部的算法和数据结构, 产生描述各模块程序过程的详细文 档