D
解析:本题考查软件工程软件开发模型方面的知识。常用的模型有: ①瀑布模型。瀑布模型最早由Royce提出,该模型因过程排列酷似瀑布而得名。在该模型中,首先确定需求,并接受客户和SQA(Software Quality Assurance)小组的验证;然后拟定规格说明,同样通过验证后,进入计划阶段……可以看出,瀑布模型中至关重要的一点是只有当一个阶段的文档已经编制好并获得SQA小组的认可才可以进入下一阶段。该模型是文档驱动的,对于非专业用户来说难以阅读和理解,而且导致很多问题在最后才会暴露出来,风险巨大。瀑布模型主要应用于结构化的软件开发。 ②增量模型。增量模型是在项目的开发过程中以一系列的增量方式开发系统。增量方式包括增量开发和增量提交。增量开发是指在项目开发周期内,以一定的时间间隔开发部分工作软件。增量提交是指在项目开发周期内,以一定时间间隔增量方式向用户提交工作软件及其相应文档。根据增量的方式和形式的不同,分为渐增模型和原型模型。 ③原型模型。原型模型又称快速原型模型,它是增量模型的另一种形式。根据原型的不同作用,有三类原型模型:探索型原型(用于需求分析阶段)、实验型原型(主要用于设计阶段)、演化型原型(主要用于及早向用户提交一个原型系统)。演化型主要针对事先不能完整定义需求的软件开发。软件开发中的原型是软件的一个早期可运行版本,它反映了最终系统的重要特性。 ④螺旋模型。螺旋模型将瀑布模型和演化模型相结合,综合了瀑布模型和演化模型的优点,并增加了风险分析。螺旋模型包含如下四个方面的活动:制定计划、风险分析、实施工程和客户评估。 ⑤喷泉模型。主要用于描述面向对象的开发过程。喷泉模型体现了软件创建所固有的迭代和无间隙的特征。迭代意味着模型中的开发活动常常需要重复多次,在迭代过程中不断完善软件系统;无间隙是指开发活动之间不存在明显的边界,各开发活动交叉、迭代地进行。