试题1(2005年下半年试题19)
新项目与过去成功开发过的一个项目类似,但规模更大,这时应该使用 (19) 进行项目开发设计。
(19)A.原型法
B.变换模型
C.瀑布模型
D.螺旋模型
试题1分析
瀑布模型是生命周期法中最常用的开发模型,它把项目开发流程分为软件计划、需求分析、软件设计、编码实现、软件测试和运行维护六个阶段。
瀑布模型给出了信息系统生存周期各阶段的固定顺序,上一阶段完成后才能进入下一阶段。
变换模型(演化模型)是在快速开发一个原型的基础上,根据用户在调用原型的过程中提出的反馈意见和建议,对原型进行改进,获得原型的新版本,重复这一过程,直到演化成最终的软件产品。
螺旋模型将瀑布模型和变换模型相结合,它综合了两者的优点,并增加了风险分析,特别适合于大型复杂的系统。它以原型为基础,沿着螺线自内向外旋转,每旋转一圈都要经过制定计划、风险分析、实施工程、客户评价等活动,并开发原型的一个新版本。经过若干次螺旋上升的过程,得到最终的系统。螺旋模型采用一种周期性的方法来进行系统开发,这会导致开发出众多的中间版本。使用该模型,项目经理在早期就能够为客户实证某些概念。该模型基于快速原型法,以进化的开发方式为中心,在每个项目阶段使用瀑布模型法。这种模型的每个周期都包括需求定义、风险分析、工程实现和评审4个阶段,由这4个阶段进行迭代。软件开发过程每迭代一次,软件开发又前进一个层次。因此,螺旋模型的特点之一是循环反复。在螺旋模型演进式的过程中,确定一系列的里程碑,以确保项目朝着正确的方向前进,同时降低风险。
喷泉模型对软件复用和生存周期中多项开发活动的集成提供了支持,主要支持面向对象的开发方法。“喷泉”一词本身体现了迭代和无间隙的特性。系统某个部分常常重复工作多次,相关功能在每次迭代中随之加入演化的系统。所谓无间隙是指在开发活动与分析、设计和编码之间不存在明显的边界。
智能模型是基于知识的软件开发模型,它综合了上述若干个模型,并把专家系统结合在一起。该模型应用基于规则的系统,采用归约和推理机制,帮助软件人员完成开发工作,并使维护在系统规格说明一级进行。软件原型是所提出的新产品的部分实现,建立原型的主要目的是为了解决在产品开发的早期阶段的需求不确定的问题,其目的是明确并完善需求、探索设计选择方案、发展为最终的产品。
原型有很多种分类方法。从原型是否实现功能来分,软件原型可分为水平原型和垂直原型两种。水平原型也称为行为原型,用来探索预期系统的一些特定行为,并达到细化需求的目的。水平原型通常只是功能的导航,但并未真实实现功能。水平原型主要用在界面上。垂直原型也称为结构化原型,实现了一部分功能。垂直原型主要用在复杂的算法实现上。
从原型的最终结果来分,软件原型可分为抛弃型原型和演化型原型。抛弃型原型也称为探索型原型,是指达到预期目的后,原型本身被抛弃。抛弃型原型主要用在解决需求不确定性、二义性、不完整性、含糊性等。演化型原型为开发增量式产品提供基础,是螺旋模型的一部分,也是面向对象软件开发过程的一部分。演化型原型主要用在必须易于升级和优化,适用于Web项目。
有些文献把原型分为实验型、探索型和演化型。探索型原型的目的是要弄清对目标系统的要求,确定所希望的特性,并探讨多种方案的可行性。实验型原型用于大规模开发和实现之前,考核方案是否合适,规格说明是否可靠。演化型原型的目的不在于改进规格说明,而是将系统建造得易于变化,在改进原型的过程中,逐步将原型进化成最终系统。
还有些文献也把原型分为抛弃式原型、演化式原型和递增式原型。
原型的开发技术主要有可执行规格说明、基于脚本(Scenario)的设计、自动程序设计专用语言、可复用的软件、简化假设等。
原型法适于用户没有确定其需求的明确内容的时候。它是先根据已给的和分析的需求,建立一个原始模型,这是一个可以修改的模型(在生命周期法中,需求分析成文档后一般不再多修改)。在软件开发的各个阶段都把有关信息相互反馈,直至模型的修改,使模型渐趋完善。在这个过程中,用户的参与和决策加强了,最终的结果更适合用户的要求。这种原型技术又可分为三类:抛弃式、演化式和递增式。这种原型法成败的关键及效率的高低关键在于模型的建立及建模的速度。
在本题中,新项目与过去成功开发过的一个项目类似,即需求是基本确定的。这样,就应该使用瀑布模型进行开发。
试题1答案
(19)C
共有条评论 网友评论