电子斜技大学 软件技术基础 5.2软件生命周期模型 主讲教师:刘民岷 航空航天学院 软件技术基础课程组
软件技术基础 主讲教师:刘民岷 航空航天学院 软件技术基础课程组
1、软件生命周期方法学 从时间角度对软件开发和维护的复杂问题进行分解, 把软件生命的漫长周期依次划分为若干个阶段,每 个阶段有相对独立的任务,然后逐步完成每个阶段 的任务。 4 5 IMPLEMENTATION 的A HTEGHATIO 3 THE DESION SOFTWARE DEVELOPMENT 6 CYCLE 2 ANALYSIS 电子科技大学刘民岷 软件生命周期 2
电子科技大学 刘民岷 软件生命周期 2 ⚫ 从时间角度对软件开发和维护的复杂问题进行分解, 把软件生命的漫长周期依次划分为若干个阶段,每 个阶段有相对独立的任务,然后逐步完成每个阶段 的任务
1、软件生命周期方洁学(续) 软件定义 -问题定义:要解决的问题是什么? THE SOFTWARE DEVELOPMENT -可行性研究:有可行的解决办法吗? CYCLE -需求分析:为解决问题,目标系统必须做什么? 。软件设计 -总体设计:概括地说,应如何解决该问题? -详细设计:应怎样具体实现这个系统? -编码和单元测试:编写代码,测试模块 -综合测试:通过测试,使软件达到要求 软件维护 -通过各种维护活动使系统持久地满足用户地需要 电子科技大学刘民岷 软件生命周期 3
电子科技大学 刘民岷 软件生命周期 3 ⚫ 软件定义 –问题定义:要解决的问题是什么? –可行性研究:有可行的解决办法吗? –需求分析:为解决问题,目标系统必须做什么? ⚫ 软件设计 –总体设计:概括地说,应如何解决该问题? –详细设计:应怎样具体实现这个系统? –编码和单元测试:编写代码,测试模块 –综合测试:通过测试,使软件达到要求 ⚫ 软件维护 –通过各种维护活动使系统持久地满足用户地需要
2、瀑布模型 -1976年,B.W.Boehm提出 收集、分析、理解、确定用户要求,系统分析员 问题定义 与用户共同提出“软件系统目标与范围说明书 计划时期 可行性研究 确立问题是否有可行解决方法,对各方案做成本 /效益分析,提出“可行性论证报告” 需求分析 确定用户对软件系统的全部要求, 提出“需求说明书” 设计 设计 设计软件系统的模块结构、数据库结构等, 开发时期 概要设计、详细设计,交付“设计说明书” 编程 选定设计语言,得到系统的“源程序” 实现 模块测试、组装测试、确认 测试 测试,提交“测试报告” 运行时期 运行维护 用户使用过程中不断排错, 升级,提交“维护报告” 电子科技大学刘民岷 软件生命周期 4
电子科技大学 刘民岷 4 -1976年,B.W.Boehm提出 软件生命周期 问题定义 可行性研究 需求分析 设计 编程 测试 运行时期 运行维护 计划时期 收集 分析 理解 确定用户要求 系统分析员 、 、 、 , 与用户共同提出“ 软件系统目标与范围说明书” 确立问题是否有可行解决方法 对各方案做成本 , /效益分析 提出“ , 可行性论证报告” 开发时期 设计 实现 确定用户对软件系统的全部要求 , 提出“需求说明书” 设计软件系统的模块结构 数据库结构等 、 , 概要设计 详细设计 交付“ 、 , 设计说明书” 选定设计语言 得到系统的“ , 源程序” 模块测试 组装测试 确认 、 、 测试 提交“ , 测试报告” 用户使用过程中不断排错 , 升级 提交“ , 维护报告
2、瀑布模型 (续) 瀑布模型的特点 一瀑布模型具有顺序性和依赖性,即后一阶段的工作必须在 前一阶段的工作完成后才能开始。 - 把逻辑设计与物理设计清楚地划分开,是瀑布模型的重要 指导思想。 -瀑布模型强调的是优质,即每一步都循序渐进,及早消除 隐患,从而保证软件质量。 一它的致命缺点在于只有做出精确的需求分析,才能取得 预期的结果。由于各种客观、主观的原因,需求分析往往 不很精确,常常给日后的开发带来隐患。 电子科技大学刘民岷 软件生命周期 5
电子科技大学 刘民岷 5 (续) 软件生命周期 ⚫ 瀑布模型的特点 –瀑布模型具有顺序性和依赖性,即后一阶段的工作必须在 前一阶段的工作完成后才能开始。 –把逻辑设计与物理设计清楚地划分开,是瀑布模型的重要 指导思想。 –瀑布模型强调的是优质,即每一步都循序渐进,及早消除 隐患,从而保证软件质量。 –它的致命缺点在于只有做出精确的需求分析,才能取得 预期的结果。由于各种客观、主观的原因,需求分析往往 不很精确,常常给日后的开发带来隐患
3、快速原型模型 需求分析 按用户初步要求,建立原型, 根据用户意见反复修改 原型开发 原型评价 目标系统设计 目标系统实现 快速原型模型 电子科技大学刘民岷 软件生命周期 6
电子科技大学 刘民岷 软件生命周期 6 需求分析 原型开发 原型评价 目标系统设计 目标系统实现 快速原型模型 按用户初步要求,建立原型, 根据用户意见反复修改
3、快速原型模型 (续) 快速原型模型的特点 一快速原型模型在功能上等价于产品的一个子集 -瀑布型模型缺点在于不够直观,快速原型模型解决了这个 问题 根据客户需要在最短时间内解决客户的迫切需要,完成一 个可以演示的产品。这个产品只是实现了部分功能(最重 要的) -最终目的:确定客户的真正需求,在得到用户的需求之后, 原型将被抛弃,因为原型的发展速度很快,设计方面几乎 没有考虑的,如果保留原型的话,在随后开发中会为此付 出巨大代价 电子科技大学刘民岷 软件生命周期 7
电子科技大学 刘民岷 7 (续) 软件生命周期 ⚫ 快速原型模型的特点 –快速原型模型在功能上等价于产品的一个子集 –瀑布型模型缺点在于不够直观,快速原型模型解决了这个 问题 –根据客户需要在最短时间内解决客户的迫切需要,完成一 个可以演示的产品。这个产品只是实现了部分功能(最重 要的) –最终目的:确定客户的真正需求,在得到用户的需求之后, 原型将被抛弃,因为原型的发展速度很快,设计方面几乎 没有考虑的,如果保留原型的话,在随后开发中会为此付 出巨大代价
4、其他模型 螺旋模型 瀑布型生命周期 W模型 软件生命周期模型 : 迭代模型 V模型 快速原型模型 电子科技大学刘民岷 软件生命周期 8
电子科技大学 刘民岷 软件生命周期 8