2017年北京科技大学钢铁共性技术协同创新中心870软件工程考研仿真模拟题
● 摘要
一、选择题
1. 软件计划是软件开发的早期和重要阶段,此阶段要求交互和配合的是( )。
A. 设计人员和用户
B. 分析人员和用户
C. 分析人员和设计人员
D. 编码人员和用户
【答案】B
【解析】软件计划是对该软件项目的综合描述,定义其所要做的工作以及性能限制,它包括项目目标、主要功能、性能限制、系统接口、特殊要求、开发概述等。这个阶段要求分析人员和用户进行交互和配合。
2. 在模块测试的过程中,采用自底向上的测试比自顶向下的测试( )。
A. 好
B. 差
C. 一样
D. 未知
【答案】A
【解析】在模块测试过程中,自底向上的测试随着上移,驱动模块逐步减少,测试开销小,而自顶向上的测试需要设计较多的桩模块,测试开销大,所以采用自底向上的测试比自顶向下的测试好。
3. 数据流图是用于表示软件模型的一种图示方法,在下列可采用的绘图方法中,( )是常采用的。
①自顶向下
②自底向上
③分层绘制
④逐步求精
A. 全是
B.
C.
D.
【答案】B
【解析】在用数据流图对软件模型的描述工程中,一般遵循的原则是自顶向下、分层绘制、
逐步求精;通常情况下软件系统的模型比较复杂,用数据流图自底向上来描述是不符合逻辑的,同时也可以说明原型化方法为什么在软件开发中得到了广泛的应用。
4. 提高软件质量和可靠的技术大致可分为两大类。其中一类就是避开错误技术,但避开错误技术无法做到完美无缺和绝无错误,这就需要( )。
A. 消除错误
B. 检测错误
C. 避开错误
D. 容错
【答案】D
【解析】提高软件质量和可靠性的技术大致可分为两类,一类是避开错误技术,即在开发的过程中不让差错潜入软件的技术;一类是容错技术,即对某些无法避开的差错,使其影响减至最小的技术。当避开错误技术无法做到完美无缺时,就需要引入容错技术。
5. 软件生命周期的最后一个阶段是( )。
A. 书写软件文档
B. 软件维护
C. 稳定性测试
D. 书写详细用户说明
【答案】B
【解析】软件维护需要的工作量非常大,虽然在不同应用领域维护成本差别很大,但是,平均来说,大型软件的维护成本高达开发成本的四倍左右,目前国外许多软件开发组织把60%以上的人力用于维护已有的软件,而且随着软件数量增多和使用寿命延长,这个百分比还在持续上升。软件维护是软件生命周期的最后一个阶段。
6. 软件测试是保证软件质量的重要措施,它的实施应该在( )。
A. 程序编程阶段
B. 软件开发全过程
C. 软件允许阶段
D. 软件设计阶段
【答案】B
【解析】测试是对软件规格说明、设计和编码的最后复审,所以软件测试贯穿在整个软件开发期的全过程。
7. 每个对象可用它自己的一组属性和它可以执行的一组( )来表现。
A. 行为
B. 功能
C. 操作
D. 数据
【答案】C
【解析】在面向对象的系统中,对象是基本的运行时的实体,它既包括数据,也包括作用于数据的操作,所以一个对象的定义包括它的静态属性和动态操作的定义。
8. 确认测试计划是在( )阶段制定的。
A. 可行性研究和计划
B. 需求分析
C. 概要设计
D. 详细设计
【答案】B
【解析】测试计划应该在需求分析阶段就开始制定和确认,并在设计阶段细化和完善,而不是等系统编码完成后才制订测试计划。
9. 软件开发过程中,抽取和整理用户需求并建立问题域精确模型的过程叫( )。
A. 生存期
B. 面向对象设计
C. 面向对象程序设计
D. 面向对象分析
【答案】D
【解析】面向对象分析过程就是认识客观世界的过程,其目的就是建立对客观世界的精确、简洁、可理解的正确模型,也就是所谓的建模。
10.软件维护产生的副作用,是指( )。
A. 开发时的错误
B. 隐含的错误
C. 因修改软件而造成的错误
D. 运行时误操作
【答案】C
【解析】因修改软件而造成的错误或其他不希望出现的情况称为维护的副作用,包括编码副作用、数据副作用、文档副作用三种。
11.测试的关键问题是( )
A. 如何组织软件评审
B. 如何选择测试用例
C. 如何验证程序的正确性