2018年武汉大学计算机学院932软件工程专业基础综合之软件工程导论考研基础五套测试题
● 摘要
一、选择题
1. 可行性研究要进行的需求分析和设计应是( )。
A. 详细的
B. 全面的
C. 简化、压缩的
D. 彻底的
【答案】C
【解析】可行性研究首先需要进行概要的分析研究,初步确定项目的规模和目标,确定项目的约束和限制。把它们清楚地列举出来。然后,分析员进行简要的需求分析,经过压缩的设计,探索出若干种可供选择的主要解决办法。
2. 软件可移植性是用来衡量软件的( )重要尺度之一。
A. 通用性
B. 效率
C. 质量
D. 人机界面
【答案】C
【解析】软件的可移植性是指把软件产品从一个硬件/软件环境转移到另一个硬件/软件环境的难易与繁简程度。为了提高软件的可移植性,应尽量使软件与具体硬件设备无关,即提高软件的硬件无关性(或称软件的设备独立性)。软件的可移植性可用来衡量软件的质量。
3. 软件详细设计的主要任务是确定每个模型的( )。
A. 算法和使用的数据结构
B. 外部接口
C. 功能
D. 编程
【答案】A
【解析】软件详细设计的任务包括四点:①为每个模块确定采用的算法;②确定每一模块使用的数据结构;③确定模块接口的细节;④为每一个模块设计出一组测试用例。其中主要的任务是设计每个模块的实现算法、所需的局部数据结构。
4. 以下说法正确的是( )。
A. 程序流程图是一种算法描述工具
B.PAD 图是一种描述程序逻辑结构的工具
C. 过程设计语言是一种用于描述模块算法设计和处理细节的语言
D.PAD 图是一种由左往右展开的二维型结构
【答案】C
【解析】过程设计语言(PDL ), 也称程序描述语言,又称为伪码。它是一种用于描述模块算法设计和处理细节的语言。
5. 每个对象可用它自己的一组属性和它可以执行的一组( )来表现。
A. 行为
B. 功能
C. 操作
D. 数据
【答案】C
【解析】在面向对象的系统中,对象是基本的运行时的实体,它既包括数据,也包括作用于数据的操作,所以一个对象的定义包括它的静态属性和动态操作的定义。
6. 将几个逻辑上相似的成分放在一个模块中,该模块的内聚度是( )的。
A. 逻辑性
B. 瞬时性
C. 功能性
D. 通信性
【答案】A
【解析】逻辑内聚:模块内执行几个逻辑上相似的功能,通过参数确定该模块完成哪一个功能。
7. 需求分析阶段不适于描述加工逻辑的工具是( )。
A. 结构化语言
B. 判定表
C. 判定树
D. 流程流图
【答案】D
【解析】在需求分析阶段结构化语言、判定表或判定树详细描述数据流图中不能被再分解的每一个加工。“数 据流图”描述系统的分解,即描述系统由哪几个部分组成,各部分之间有什么联
系等等。
8. 面向数据结构的设计方法(Jackson 方法)是进行( )的形式化的方法。
A. 系统设计
B. 详细设计
C. 软件设计
D. 编码
【答案】B
【解析】Jackson 方法是一种面向数据结构的设计方法,在完成了软件结构设计之后,可以使用面向数据结构的方法来设计每个模块的处理过程,因此,Jackson 方法适合于在详细设计阶段使用。
9. 软件复杂性度量的参数包括( )。
A. 效率
B. 规模
C. 完整性
D. 容错性
【答案】B
【解析】软件复杂性度量的方法是把程序的复杂程度乘以适当参数即可估算出软件中错误的数量以及软件开发需要用的工作量。定量度量的结果,可以用来比较两个不同设计或两个不同算法的优劣,程序的定量的复杂程度可作为模块规模的精确限度,因此,规模可作为软件复杂性度量的参数。
10.面向对象分析是对系统进行( )的一种方法。
A. 需求建模
B. 程序设计
C. 设计评审
D. 测试验收
【答案】A
【解析】面向对象分析就是抽取和整理用户需求并建立问题域精确模型的过程,即对系统进行需求建模的过 程,它的主要任务包括:①分析陈述用户需求的文件;②深入理解用户需求,抽象出目标系统的本质属性;③用模型准确地表示。
11.一个( )能用不同的方法表示它的特征。
A. 事件
B. 抽象