问题 单项选择题

常见的软件开发模型有瀑布模型、演化模型、螺旋模型、喷泉模型等。其中, (1) 适用于需求明确或很少变更的项目, (2) 主要用来描述面向对象的软件开发过程。

(2)

A.瀑布模型

B.演化模型

C.螺旋模型

D.喷泉模型

答案

参考答案:D

解析: 对于选项A,瀑布模型:开发模型呈线性,所以当开发成果还未经过测试时,用户无法看到软件的效果。瀑布模型有以下优点: ①为项目提供了按阶段划分的检查点。 ②当前一阶段完成后,只需要去关注后续阶段。 ③可在迭代模型中应用瀑布模型。 ④迭代模型中应用瀑布模型。 瀑布模型有以下缺点: ①在项目各个阶段之间极少有反馈。 ②只有在项目生命周期的后期才能看到结果。 ③通过过多的强制完成日期和里程碑来跟踪各个项目阶段。 瀑布模型缺乏灵活性,它适用于需求明确,且很少发生较大变化的项目。所以,第1空的正确答案为选项A。 对于选项B,演化模型是一种非整体开发的模型。该模型具有较大的灵活性,适合于软件需求不明确、设计方案有一定风险的软件项目。演化模型和瀑布模型之间的本质区别是:瀑布模型属于整体开发模型,它规定在开始下一个阶段的工作之前,必须完成前一阶段的所有细节。而演化模型属于非整体开发模型,它推迟某些阶段或所有阶段中的细节,从而较早地产生工作软件。演化模型主要针对事先不能完整定义需求的软件开发,其开发过程一般是首先开发核心系统,当核心系统投入运行后,软件开发人员根据用户的反馈,实施开发的迭代过程,每一迭代过程均由需求,设计、编码、测试、集成等阶段组成,直到软件开发结束。演化模型在一定程度上减少了软件开发活动的盲目性。 对于选项C,螺旋模型将瀑布模型和演化模型结合起来,并加入了风险分析,弥补了两种模型的不足。螺旋模型适于大型软件开发。螺旋模型沿着螺线旋转,在4个象限上分别表达了4个方面的活动,即制定计划、风险分析、实施工程和客户评估。 对于选项D,喷泉模型开发过程有分析、系统设计、软件设计和实现4个阶段。各阶段相互重叠,它反映了软件过程并行性的特点。以分析为基础,资源消耗成塔型。强调增量开发,整个过程是一个迭代的逐步提炼的过程。它体现了软件创建所固有的迭代和无间隙特征,喷泉模型主要用于支持面向对象开发过程。第2空的正确答案为选项D。

单项选择题
单项选择题