2.7 喷 泉 模 型

1.模型的本意

喷泉模型(Fountain Model)认为,软件开发过程自下而上的各阶段是相互重叠和多次反复进行的,就像喷泉中的水喷上去,又落下来,所以叫做喷泉模型。其各个开发阶段没有特定的次序要求,可以交互进行;还可以随时补充其他任何开发阶段中的遗漏。采用喷泉模型的软件过程,如图2-5所示。

图2-5 喷泉模型

2.模型的特点

喷泉模型是一种以用户需求驱动的模型,主要用于描述面向对象的软件开发过程。由于各阶段的活动之间无明显界线,所以喷泉模型也称为“喷泉无间隙性模型”。

3.选择模型的条件

喷泉模型主要用于面向对象的软件项目,软件的某个部分通常被重复多次,相关对象在每次迭代中随之加入渐进的软件成分。

4.模型的优点

喷泉模型不像瀑布模型那样,需求分析活动结束后才开始设计活动,设计活动结束后才开始编码活动。该模型各个阶段没有明显的界限,开发人员可以同步进行开发。其优点是可以提高软件项目开发效率,节省开发时间,适用于面向对象的软件开发过程。

5.模型的缺点

由于其各个开发阶段是重叠的,因此开发过程中需要大量的开发人员,不利于项目的管理。此外,这种模型要求严格管理文档,这使审核的难度加大,尤其是面对可能随时加入各种信息、需求与资料的情况。