单选题 螺旋模型是一种演进式的软件过程模型,结合了原型开发方法的系统性和瀑布模型可控性特点。它有两个显著特点,一是采用______的方式逐步加深系统定义和实现的深度,降低风险:二是确定一系列______,确保项目开发过程中的相关利益者都支持可行的和令人满意的系统解决方案。
单选题
  • A.逐步交付
  • B.顺序
  • C.循环
  • D.增量
【正确答案】 C
【答案解析】
单选题
  • A.实现方案
  • B.设计方案
  • C.关键点
  • D.里程碑
【正确答案】 D
【答案解析】[解析] 螺旋模型是瀑布模型与快速原型模型相结合,并加入两者所忽略的风险分析所建立的一种软件开发模型。螺旋模型是一种演化软件过程模型,它将原型实现的迭代特征与线性顺序模型中控制的和系统化的方面结合起来,使软件的增量版本的快速开发成为可能。在螺旋模型中,软件开发是一系列的增量发布。 螺旋模型沿着螺线进行若干次迭代,每次迭代都包括制订计划、风险分析、实施工程和客户评估四个方面的工作。它有两个显著特点,一是采用循环的方式逐步加深系统定义和实现的深度,同时降低风险:二是确定一系列里程碑,确保项目开发过程中的相关利益者都支持可行的和令人满意的系统解决方案。螺旋模型强调风险分析,使得开发人员和用户对每个演化层出现的风险有所了解,继而做出应有的反应。因此,特别适用于庞大、复杂并具有高风险的系统。 与瀑布模型相比,螺旋模型支持用户需求的动态变化,为用户参与软件开发的所有关键决策提供了方便,有助于提高软件的适应能力,并且为项目管理人员及时调整管理决策提供了便利,从而降低了软件开发的风险。在使用螺旋模型进行软件开发时,需要开发人员具有相当丰富的风险评估经验和专门知识。另外,过多的迭代次数会增加开发成本,延迟提交时间。
单选题 极限编程是一种重要的敏捷开发方法,包含策划、设计、编码和测试四个框架活动的规则和实践。下面关于极限编程的叙述,错误的是______。
  • A.极限编程中使用的重要技术是重构,既包括设计技术的重构,也包括构建技术的重构
  • B.极限编程提倡在基本设计完成后,立即进行编码实现,并进行测试
  • C.极限编程活动中的关键概念之一是“结对编程”,推荐两个人面对同一台计算机共同开发代码
  • D.极限编程过程中建立的单元测试应当使用一个可以自动实施的框架,支持代码修改后即时的回归测试策略
【正确答案】 B
【答案解析】[解析] 极限编程是一种重要的敏捷开发方法,包含规划、设计、编码和测试4个框架活动的规则和实践。极限编程中使用的重要技术是重构,既包括设计技术的重构,也包括构建技术的重构;极限编程提倡在基本设计完成后,团队不应该直接开始编码,而是开发一系列用于检测本次发布的包括所有故事(story)的单元测试;极限编程活动中的关键概念之一是“结对编程”,推荐两个人面对同一台计算机共同开发代码;极限编程过程中建立的单元测试应当使用一个可以自动实施的框架,支持代码修改后即时的回归测试策略。
单选题 需求工程帮助软件工程师更好地理解要解决的问题。下列开发过程中的活动,不属于需求工程范畴的是______。
  • A.理解客户需要什么,分析要求,评估可行性
  • B.与客户协商合理的解决方案,无歧义地详细说明方案
  • C.向客户展现系统的初步设计方案,并得到客户的认可
  • D.管理需求以至将这些需求转化为可运行的系统
【正确答案】 C
【答案解析】[解析] 需求工程为以下工作提供了良好的机制:理解客户需要什么,分析要求,评估可行性,协商合理的解决方案,无歧义地详细说明方案,确认规格说明,管理需求以至于将这些需求转化为可运行的系统。需求工程并不关心采用何种设计方案解决问题。
单选题 面向团队的需求收集方法能够鼓励合作,为解决方案的各个要素提供建议,协商不同的方法,以及说明初步的需求方案。下列关于面向团队的需求收集方法叙述,不恰当的是______。
  • A.举行团队需求收集会议,会议由软件工程师、客户和其他利益相关者共同举办和参加
  • B.拟定一个会议议程,与会者围绕需求要点,畅所欲言
  • C.会议提倡自由发言,不需要特意控制会议的进度
  • D.会议目的是识别问题,提出解决方案的要点,初步刻画解决方案中的需求问题
【正确答案】 C
【答案解析】[解析] 在进行面向团队的需求分析时,通常会举行团队需求收集会议,会议由软件工程师、客户和其他利益相关者共同举办和参加;为会议拟订一个会议议程,既要涵盖所有的重要点,又要鼓励思维的自由交流;会议由一位主持人控制会议进度,并保证会议主题不被偏离;会议目的是识别问题,提出解决方案的要点,初步刻画解决方案中的需求问题。
单选题 质量功能部署(QFD)是一种将客户要求转化成软件需求的技术。QFD的目的是最大限度地提升软件工程过程中客户的满意度。为了这个目标,QFD确认了三类需求,常规需求、______和意外需求。
  • A.期望需求
  • B.基础需求
  • C.显式需求
  • D.功能需求
【正确答案】 A
【答案解析】[解析] QFD确认了三类需求,分别是基本需求(常规需求)、期望需求和意外需求(兴奋需求)。其中期望需求指的是那些隐含在产品或系统中,可能由于非常基础以至于用户没有显式说明的需求。
单选题 在软件需求工程中,需求管理贯穿整个过程。需求管理最基本的任务是明确需求,并使项目团队和用户达成共识,即建立______。
  • A.需求跟踪说明
  • B.需求变更管理文档
  • C.需求分析计划
  • D.需求基线
【正确答案】 D
【答案解析】[解析] 需求是软件项目成功的核心所在,它为其他许多技术和管理活动奠定基础。在软件需求工程中,需求管理贯穿整个过程。需求管理最基本的任务是明确需求,并使项目团队和用户达成共识,即建立需求基线。
单选题 某大型移动通信运营商欲开发一个新的应用系统以替换原有系统。在需求分析阶段,为尽快从已有系统文档资料和用户处获取整体系统需求,采用______的方法捕获需求最为合适。
  • A.用户访谈
  • B.联合需求计划
  • C.抽样
  • D.头脑风暴
【正确答案】 C
【答案解析】[解析] 需求获取是一个确定和理解不同的项目干系人的需求和约束的过程。常见的需求获取方式有用户访谈、问卷调查、抽样、联合需求计划、阅读文档、跟踪实践等。根据题干描述,为尽快从已有系统文档资料和用户处获取整体系统需求,应该采用抽样的方法。