文章目录
-
- 瀑布模型(Waterfall Model)
-
- 模型概述:
- 核心思想:
- 模型特点:
- 优点:
- 缺点:
- 分类:
-
- 1.传统瀑布模型:
- 2.加入迭代的瀑布模型:
- 原型模型:
-
- 优点:
- 缺点:
瀑布模型(Waterfall Model)
模型概述:
瀑布模型:是一个软件生命周期模型,开发过程是通过设计一系列阶段顺序展开的,从系统需求分析开始直到产品发布和维护,项目开发进程从一个阶段“流动”到下一个阶段,这也是瀑布模型名称的由来。
核心思想:
瀑布模型核心思想是:按工序将问题化简,将功能的实现与设计分开,便于分工协作,即采用结构化的分析与设计方法将逻辑实现与物理实现分开。
将软件生命周期划分为制定计划、需求分析、软件设计、程序编写、软件测试和运行维护等六个基本活动,并且规定了它们自上而下、相互衔接的固定次序,如同瀑布流水,逐级下落。
模型特点:
- 从上一项开发活动接受其成果作为本次活动的输入。
- 用这一输入,实施本次活动应完成的工作内容。
- 给出本次活动的工作成果,作为输出传给下一项开发活动。
- 对本次活动的实施工作成果进行评审。若其工作成果得到确认,则继续进行下一项开发活动;否则返回前一项,甚至更前项的活动。尽量减少多个阶段间的反复。以相对来说较小的费用来开发软件。
优点:
- 开发的各个阶段比较清晰。
- 强调早期计划及需求调查。
- 适合需求稳定的产品开发。
缺点:
- 依赖于早期的需求调查,不适应需求的变化。
- 风险往往延至后期才显露,失去及早纠正的机会。
- 问题在项目后期才开始暴露。
- 前面未发现的错误会传递并扩散到后面的阶段,可能导致项目失败
分类:
1.传统瀑布模型:
(1) 阶段间具有顺序性和依赖性
必须等前一阶段的工作完成之后,才能开始后一阶段的工作。前一阶段的输出文档就是后一阶段的输入文档。
(2) 推迟实现的观点
清楚的区分逻辑设计与物理设计,尽可能推程序的物理实现,是因为编码之前阶段的工作没做或做得不扎实,过早地考虑进行程序实现,往往导致大量返工,有时甚至发生无法弥补的问题,带来灾难性的后果。实践也表明,对于规模较大的软件项目来说,往往编码开始得越早最终完成开发工作所需要的时间反而越长。
(3) 质量保证的观点
每个阶段都必须完成规定的文档,没有交出合格的文档就是没有完成该阶段的任务。每个阶段结束前都要对所完成的文档进行评审,以便尽早发现问题,改正错误。
2.加入迭代的瀑布模型:
原型模型:
实现一个基本原型,让用户对原型进行评价,逐步调整,使其满足用户最终需求。
优点:
适合不能确定需求的软件;
缺点:
不适合开发大型系统。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!