试题与答案

对软件开发的看法可有多种观点,敏捷软件开发方法是一种 (11) ,代表性是极限编程X

题型:单项选择题

题目:

对软件开发的看法可有多种观点,敏捷软件开发方法是一种 (11) ,代表性是极限编程XP,它的核心思想为 (12)

A.强调文档和以敏捷性应对变化
B.强调建模和以敏捷性应对变化
C.强调设计和以敏捷性应对变化
D.强调人和人之间的合作的因素和以敏捷性应对变化

答案:

参考答案:D

解析: 在我们面临“软件危机”所带来的挑战之时,曾经通过采用严格的规范、详尽的文档来约束开发过程,以保证开发的质量与效果,获得了突出的成就。但是随着时代的进一步发展,商业周期越来越短,变化越来越快,甚至在软件开发的过程中,商业逻辑和需求已经悄然变化,这给本来还不成熟的软件产业带来了新的挑战。就在这种情况下,敏捷方法论应运而生。
2001年这些方法论的创始人走到一起,成立了敏捷联盟,发表了颇具影响力的敏捷宣言:个体和交互胜过过程和工具,可工作的软件胜过面面俱到的文档,客户合作胜过合同谈判,响应变化胜过遵循计划。比较有影响力的敏捷方法论包括XP(极限编程)、PDD(特征驱动开发)、Crystal Method(水晶方法)、DSDM(动态系统开发方法)、ASD(自适应软件开发)、SCRUM、轻量型RUP等。
XP的思想源自Kent Beck和Ward Cunningham在软件项目中的合作经历。因为知道计划永远赶不上变化,XP无须开发人员在软件开始初期做出很多的文档。为了将以后出现bug的几率降到最低,XP提倡测试先行。XP的核心是其总结的沟通、简单、反馈、勇气四大价值观。它包括12种最佳实践,分别是计划游戏、小型发布、隐喻、简单设计、测试先行、重构、结对编程、集体代码所有制、持续集成、每周工作40小时、现场客户及编码标准。
SCRUM是一种迭代的增量化过程,用于产品开发或工作管理。它是一种可以集合各种开发实践的经验化过程框架。SCRUM中发布产品的重要性高于一切。 该方法由KenSchwaber和Jeff Sutherland提出,旨在寻求充分发挥面向对象和构件技术的开发方法,是对迭代式面向对象方法的改进。
Crystal Methods由Alistair Cockburn在20世纪90年代末提出。之所以是个系列,是因为他相信不同类型的项目需要不同的方法。虽然水晶系列不如XP的产出效率高,但会有更多的人能够接受并遵循它。
FDD由Peter Coad、Jeff de Luca、Eric Lefebvre共同开发,是一套针对中小型软件开发项目的开发模式。此外,FDD是一个模型驱动的快速迭代开发过程,它强调的是简化、实用、易于被开发团队接受,适用于需求经常变动的项目。
ASD由Jim Highsmith在1999年正式提出。ASD强调开发方法的适应性,这一思想来源于复杂系统的混沌理论。ASD不像其他方法那样有很多具体的实践做法,它更侧重为ASD的重要性提供最根本的基础,并从更高的组织和管理层次来阐述开发方法为什么要具备适应性。
DSDM是众多敏捷开发方法中的一种,它倡导以业务为核心,快速而有效地进行系统开发。实践证明DSDM是成功的敏捷开发方法之一。在英国,由于其在各种规模的软件组织中的成功,它己成为应用最为广泛的快速应用开发方法。DSDM不但遵循了敏捷方法的原理,而且也适合那些成熟的传统开发方法有坚实基础的软件组织。
RUP其实是个过程的框架,它可以包容许多不同类型的过程,Craig Larman极力主张以敏捷型方式来使用RUP。他的观点是:目前如此众多的努力以推进敏捷型方法,只不过是在接受能被视为RUP的主流OO开发方法而已。

试题推荐
微信公众账号搜索答案