当前位置:问答库>考研试题

2017年合肥工业大学科研机构和宣城校区848软件工程学科专业基础综合之软件工程导论考研题库

  摘要

一、选择题

1. ( )定义了系统的功能需求,它是从系统的外部看系统功能,并不描述系统内部对功能的具体实现。

A. 用例图

B. 类图

C. 合作图

D. 状态图

【答案】A

【解析】用例模型描述的是外部行为者所理解的系统功能,它不涉及系统内部复杂的功能实现。用例模型的建立是系统开发者和用户反复讨论的结果,它描述了开发者和用户对需求规格所达成的共识。

2. 以下说法错误的是( )。

A. 单元测试是指对源程序中每一个程序单元进行测试

B. 集成测试各模块组装起来,检查各个模块是否正确实现规定的功能

C. 确认测试主要检查已实现的软件是否满足需求规格说明书中确定了的各种需求

D. 系统测试是指把己确认的软件与其他系统元素结合在一起进行测试

【答案】B

【解析】集成测试也叫做组装测试。通常在单元测试的基础上,将所有的程序模块进行有序的、递增的测试。集成测试是检验程序单元或部件的接口关系,逐步集成为符合概要设计要求的程序部件或整个系统。

3. 下列文档与维护人员有关的有( )。

A. 软件需求说明书

B. 项目开发计划

C. 概要设计说明书

D. 操作手册

【答案】C

【解析】在进行软件维护时了解原有软件的总体情况是很重要的。概要设计说明书能准确地描述了对软件系 统的数据要求、功能需求、性能需求、可靠性和可用性要求、出错处理需求、接

口需求、约束、逆向需求及将来可能提出的需求,对了解己有软件的总体情况有很大帮助。在对己有软件做重大修改之前仔细阅读、认真研究概 要设计说明书,可以避免许多修改错误。

4. 以下不属于软件项目进度安排的主要方法的是( )。

A. 工程网络图

B .CANTT图

C. 任务资源表

D.IFD 图

【答案】D

【解析】进度安排的好坏往往会影响整个项目的按期完成,因此这一环节是十分重要的。制

Gantt 图、 定软件进度与其他工程没有很大的区别,其主要的方法有:工程网络图、任务资源表等。

5. 对于详细设计,下面说法错误的是( )。

A. 详细设计是具体地编写程序

B. 详细设计是细化成很容易地从中产生程序图纸

C. 详细设计的结果基本决定了最终程序的质量

D. 详细设计中采用的典型方法是结构化程序设计方法

【答案】A

【解析】详细设计阶段,主要对模块内的算法和模块内的数据结构进行设计,具体编写程序属于编码阶段的任务。

6. 软件维护是保证软件正常、有效的重要手段,而软件的下述特性中,( )有利于软件的维护。

①可测试性

②可理解性

③可修改性

④可移植性

A.

只有

B.

C.

D. 都有利

【答案】D

【解析】软件的可测试性、可修改性、可理解性、可移植性都对维护起很重要的作用。

7. 标记稱合是指( )。

A. 两个模块之间没有直接的关系,它们之间不传递任何信息

B. 两个模块之间有调用关系,传递的是简单的数据值

C. 两个模块之间传递的是数据结构

D. —个模块调用另一个模块时,传递的是控制变量

【答案】C

【解析】标记耦合指两个模块之间传递的是数据结构,如高级语言中的数组名、记录名、文件名等这些名字即为标记,其实传递的是这个数据结构的地址。

8. 消息连接的定义是( )。

A. 消息连接是OOA 模型中对对象之间行为依赖关系的表示

B. 两种消息连接符号来表示对象之间的消息传送关系

C. 表示同一个控制线程内部的消息连接

D. 表示不同控制线程之间的消息连接

【答案】A

【解析】消息连接是OOA 模型中对对象之间行为依赖关系的表示。即:若类A 的对象在它的服务执行时需要向类B 的对象发送消息,则称存在着从A 到B 的消息连接。

9. 在McCall 质量度量模型中,对于以下软件质量概念的正确解释是( )。

A. 可维护性。修改或改进一个已投入运行的软件所需工作量的程度

B. 可测试性。找到并改正程序中的一个错误所需代价的程度

C. 适应性。将一个系统耦合到另一个系统所需的工作量

D. 可重用性。一个软件(或软件的部件)能再次用于其他相关应用的程度

【答案】D

【解析】McCall 质量度量模型针对面向软件产品的运行、修正、转移,软件质量概念,其定义如下:

①可维护性,找到并改正程序中的一个错误所需代价。

②可测试性,测试软件以确保其能够执行预定功能所需工作量。

③适用性,修改可运行程序所需要付出的努力。

④可重用性,一个软件(或软件的部件)能再次用于其他相关应用的程度。

10.软件的可维护性是指纠正软件系统出现的错误和缺陷以及为满足新的要求进行修改、( )的容易程度。

A. 维护

B. 扩充与压缩

C. 调整

D. 再工程

【答案】B

【解析】软件可维护性的另一种定义即为软件可维护性是指纠正软件系统出现的错误和缺陷