《软件工程》选择题
一、选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内,每小题1分)
1.软件产品的开发主要是(D)。
A.复制B.再生产C.拷贝D.研制
2.作坊式小团体合作生产方式的时代是(C)时代。
A.程序设计B.软件生产自动化C.程序系统D.软件工程
3.软件工程与计算机科学性质不同,软件工程着重于(C)。
A.理论研究B.原理探讨C.建造软件系统D.原理的理论
4.将每个模块的控制结构转换成计算机可接受的程序代码是(A)阶段的任务。
A.编码B.需求分析C.详细设计D.测试
5.可行性研究的目的是决定(B)。
A.开发项目B.项目值得开发否C.规划项目D.维护项目
6.SA方法用DFD描述(D)。
A.系统的控制流程B.系统的数据结构
C.系统的基本加工D.系统的功能
7.进行需求分析可使用多种工具,但(C)是不适用的。
A.数据流图(DFD)B.判定表C.PAD图D.数据字典
8.结构化分析(SA)方法将欲开发的软件系统分解为若干基本加工,并对加工进行说明,下述是常用的说明工具,其中便于对加工出现的组合条件的说明工具是(A)。a.结构化语言;b.判定树;c.判定表。
A.b和cB.a,b和cC.a和cD.a和b
9.软件概要设计结束后得到(B)。
A.初始化的软件结构图B.优化后的软件结构图
C.模块详细的算法D.程序编码
10.软件设计阶段一般又可分为(B)。
A.逻辑设计与功能设计B.概要设计与详细设计
C.概念设计与物理设计D.模型设计与程序设计
11.软件设计中划分模块的一个准则是(C)。
A.低内聚低耦合B.低内聚高耦合
C.高内聚低耦合D.高内聚高耦合
12.PDL是软件开发过程中用于(C)阶段的描述工具。
A.需求分析B.概要设计C.详细设计D.编程
13.下列语言中哪个语言是低级语言(D)
A.PASCALB.VISUALBASICC.C++D.汇编语言
14.软件测试的目的是(B)。
A.试验性运行软件B.发现软件错误
C.证明软件正确D.找出软件中全部错误
15.软件测试中,白盒法是通过分析程序的(B)来设计测试用例的。
A.应用范围B.内部逻辑C.功能D.输入数据
16.黑盒法是根据程序的(C)来设计测试用例的。
A.应用范围B.内部逻辑C.功能D.输入数据
17.下面的逻辑测试覆盖中,测试覆盖最弱的是(C)
A.条件覆盖B.条件组合覆盖C.语句覆盖D.条件及判定覆盖
18.把一组具有相似特性的对象组合在一起,称之为(C)。
A、多态性B、继承性C、类D、消息
19.面向对象的主要特征除对象唯一性、封装、继承外,还有(A)
A、多态性B、完整性C、可移植性D、兼容
20.下列模型属于成本估算方法的有(A)
A、COCOMO模型B、McCall模型
C、McCabe度量法D、时间估算法
21.软件生存周期中时间最长的是(D)阶段。
A.需求分析B.概要设计C.测试D.维护
22.与计算机科学的理论研究不同,软件工程是一门(C)学科。
A.理论性B.原理性C.工程性D.心理性
23.从结构化的瀑布模型看,在它的生命周期中的八个阶段中,下面的几个选项中哪个环节出错,对软件的影响最大(C)。
A、详细设计阶段B、概要设计阶段C、需求分析阶段D、测试和运行阶段
24.程序的三种基本控制结构的共同特点是(D)。
A.不能嵌套使用B.只能用来写简单程序C.已经用硬件实现D.只有一个入口和一个出口
25.软件工程的出现主要是由于(C)。
A.程序设计方法学的影响B.其它工程科学的影响C.软件危机的出现D.计算机的发展
26.在软件工程项目中,不随参与人数的增加而使软件的生产率增加的主要问题是(D)
A、工作阶段间的等待时间B、生产原型的复杂性C、参与人员所需的工作站数D、参与人员之间的通信困难
27.SA方法的基本思想是(C)
A.自底向上逐步抽象 B.自底向上逐步分解C.自顶向下逐步分解 D.自顶向下逐步抽象
28.判定表和判定树是数据流图中用以描述加工的工具,它常描述的对象是(D)
A.逻辑判断B.层次分解C.操作条目D.组合条件
29.软件需求说明书是软件需求分析阶段的重要文件,下述哪个(些)是其应包含的内容(D)
a.数据描述
b.功能描述
c.模块描述
d.性能描述
A.b B.c和d C.a,b和c D.a,b和d
30.软件结构图中,模块框之间若有直线连接,表示它们之间存在着(A)关系。
A.调用B.组成C.链接D.顺序执行
31.软件设计中一般将用到图形工具,下列哪种(些)可用作设计的图形工具(C)
a.结构图
b.实体联系图
c.IPO图
d.层次图
A、a和bB、c和dC、a,c,dD、全部
32.程序设计语言一般简单来说,可划分为低级语言和高级语言两大类,与高级语言相比,用低级语言开发的程序,具有如下哪种特点(C)
A、运行效率低,开发效率低B、运行效率低,开发效率高
C、运行效率高,开发效率低D、运行效率高,开发效率高
33.下面的叙述哪些是正确的(C)
(1)在软件开发过程中,编程作业的代价最高。
(2)良好的程序设计风格应以缩小程序占用的存储空间和提高程序的运行速度为原则。
(3)为了提高程序的运行速度,有时采用以存储空间换取运行速度的方法。
(4)对同一算法,用高级语言编写的程序比用低级语言编写的程序运行速度快。
(5)COBOL是一种非过程型语言。
(6)LISP是一种逻辑型程序设计语言。
A、(1)、(3)、(5)B、(2)、(3)、(4)
C、(3)D、(4)、(6)
34、为了提高软件测试的效率,应该(D)。
A.随机地选取测试数据
B.取一切可能的输入数据作为测试数据
C.在完成编码以后制定软件的测试计划
D.选择发现错误可能性较大的数据作为测试用例
35.与设计测试用例无关的文档是(A)。
A.项目开发计划B.需求规格说明书C.设计说明书D.源程序
36.使用白箱测试方法时确定测试数据应根据(A)和指定的覆盖标准。
A.程序的内部逻辑B.程序的复杂程度C.使用说明书D.程序的功能
37.软件部件的内部实现与外部可访问性的分离,是指软件的(C)。
A.继承性B.共享性C.封装性D.抽象性
38、一个面向对象系统的体系结构通过它的成分对象和对象间的关系确定,与传统的面向数据流的结构化开发方法相比,它具有的优点是(A).
A、设计稳定B、变换分析C、事务分析D、模块独立性
39、软件管理的主要职能包括(D)
A.人员管理、计划管理 B.标准化管理、配置管理C.成本管理、进度管理 D.(A)和(B)
40、任何项目都必须精心做好项目管理工作,最常用的计划管理工具是(D)
A.数据流程图 B.程序结构图C.因果图 D.PERT图
41.软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实施的主要保证是(C)
A、硬件环境B、软件开发的环境C、软件开发工具和软件开发的环境D、开发人员的素质
42.在下面的软件开发方法中,哪一个对软件设计和开发人员的开发要求最高(B)
A、结构化方法B、原型化方法C、面向对象的方法D、控制流方法
43.软件开发中常采用的结构化生命周期方法,由于其特征而一般称其为(A)
A、瀑布模型B、对象模型C、螺旋模型D、层次模型
44.对于分层的DFD,父图与子图的平衡指子图的输入、输出数据流同父图相应加工的输入、输出数据流(A)。
A.必须一致B.数目必须相等C.名字必须相同D.数目必须不等
45.软件需求分析阶段的工作,可以分为四个方面:对问题的识别.分析与综合.编写需求分析文档以及(B)
A.软件的总结B.需求分析评审C.阶段性报告D.以上答案都不正确
46.在结构化分析方法中,用以表达系统内数据的运动情况的工具有(B)
A.数据流图 B.数据字典C.结构化语言 D.判定表与判定树
47.为了提高模块的独立性,模块内部最好是(C)。
A.逻辑内聚B.时间内聚C.功能内聚D.通信内聚
48.面向数据流的设计方法把(C)映射成软件结构。
A、数据流B、模块化C、控制结构D、信息流
49..数据流图是常用的进行软件需求分析的图形工具,其基本图形符号是(C)
A.输入.输出.外部实体和加工B.变换.加工.数据流和存储
C.加工.数据流.数据存储和外部实体D.变换.数据存储.加工和数据流
50.软件结构使用的图形工具,一般采用(C)图。
A.DFDB.PADC.SCD.ER