软件工程-过程模型-瀑布模型
软件将要经历一个定义、开发、运行维护,直至被淘汰这样的全过程,这个全过程称为软件的生命周期。
为了使软件生命周期中的各项任务能够有序地按照规程进行,需要一定的工作模型对各项任务给予规程约束,这样的工作模型被称为软件过程模型。
瀑布模型
瀑布模型中的“瀑布”是对这个模型的形象表达,即山顶倾泻下来的水,自顶向下、逐层细化。
特点
1、 线性化模型结构
2、 各阶段具有里程碑特征
3、 基于文档的驱动
4、 严格的阶段评审机制
作用
瀑布模型的作用还体现在文档上。每个阶段都必须完成规定的文档,并在每个阶段结束前
都要对所完成的文档进行评审。这种工作方式有利于软件错误的尽早发现和尽早解决,并为软
件系统今后的维护带来了很大的便利。
带有信息反馈的瀑布模型
在实际的软件项目中存在着许多不稳定因素,例如,开发中的工作疏漏或通信误解;在项目实施中途,用户可能会提出一些新的要求;开发者也可能在设计中遇到某些未曾预料的实际困难,希望在需求中有所权衡等。为了解决这些问题,考虑到许多实际项目中阶段之间有通信的需要使瀑布模型带有信息反馈环,能够逐级地将后续阶段的意见返回,并在问题解决之后,再逐级地将修正结果下传。
局限性
瀑布模型是一种线性模型,要求项目严格按规程推进,必须等到所有开发工作全部作完以后才能获得可以交付的软件产品。应该讲,通过瀑布模型并不能对软件系统进行快速创建,对于一些急于交付的软件系统的开发,瀑布模型有操作上的不便。
瀑布模型主要适合于需求明确,且无大的需求变更的软件开发。