软件工程试题答案DOC.docx
《软件工程试题答案DOC.docx》由会员分享,可在线阅读,更多相关《软件工程试题答案DOC.docx(31页珍藏版)》请在冰豆网上搜索。
软件工程试题答案DOC
选择题
1.开发软件的高成本和产品的低质量之间有着尖锐的矛盾,这称作(B)。
A.软件投机B.软件危机C.软件工程D.软件产生
2.软件工程学是应用科学理论和工程上的技术指导软件开发的学科,其目的是(B)。
A.引入新技术提高空间利用率B.用较少的投资获得高质量的软件C.缩短研制周期扩大软件功能D.硬软件结合使系统面向应用
3.瀑布模型把软件生存周期划分为软件定义、软件开发和(C)三个阶段,而每一阶段又可细分为若干个更小的阶段。
A.详细设计B.可行性分析C.运行及维护D.测试与排错
4.一个软件项目是否进行开发的结论是在(B)文档中作出的。
A.软件计划B.可行性报告C.测试报告D.需求分析说明书
5.常用的成本估计技术不包括(D)。
A.任务分解B.自动估计成本C.代码行D.投资回收估算
6.需求分析说明书不能作为(A)。
A.可行性研究的依据B.用户和开发人员之间的合同C.系统概要设计的依据D.软件验收测试的依据
7.需求分析需要确定的系统基本需求不包括(A)。
A.开发语言B.功能C.性能D.接口
8.状态图中定义的状态不包括(D)。
A.初态B.终态C.中间状态D.事件
9.验证软件正确性不包括(B)。
A.一致性B.易操作性C.完整性D.有效性
10.软件的(A)设计主要任务是建立软件系统的总体结构。
A.总体B.抽象C.逻辑D.规划
11.下面(D)不是模块化设计的目的。
A.可采用结构化设计方法B.降低复杂度
C.有利于信息隐蔽D.描述系统的功能与性能
12.模块内部的算法设计在结构化方法的(C)阶段进行。
A.系统分析B.概要设计C.详细设计D.可行性分析
13.(D)先于任何技术活动之前开始,贯穿于软件的整个生命周期中。
A.项目计划B.风险评估C.软件测试D.软件项目管理
14.实现包括编码和(B)两个阶段。
A.选择开发工具B.测试C.数据库设计D.程序复杂度计算
15.类构件的重用方式不包括(C)。
A.继承重用B.实例重用C.动态重用D.多态重用
16.下面具有继承关系的一组是(C)。
A.铅笔-钢笔B.冰箱-空调C.汽车-客车D.教师-学生
17.软件的(D)是理解和使用该系统的容易程度。
A.可维护性B.可靠性C.效率D.可理解性
18.软件配置管理是在软件的生命期内管理变化的活动,不能用来(B)。
A.标识变化B.预测变化C.控制变化D.确保实现变化
19.能力成熟度的级别最高的是(A)。
A.优化级B.已管理级C.已定义级D.可重复级
20.面向对象语言的重要优点不包括(C)。
A.可重用性B.一致的表示方法C.简单性D.可维护性
21.计算机系统可以划分为软件系统和硬件系统,软件是一种(A)
A.逻辑产品B.文档资料C.程序代码D.物理装置
22.可行性分析研究的主要目的是(B)
A.定义项目B.项目是否值得开发C.开发项目D.规划项目
23.在下列四种模块的耦合性中,信息隐蔽性能最好的是( C )
A.控制耦合B.内容耦合C.数据耦合D.特征耦合
24.需求分析是回答系统必须( D )的问题。
A.为谁做B.怎么做C.何时做D.做什么
25.在UML中,类是用(A)表示的
A矩形框B椭圆C箭头D菱形框
26.编码阶段是位于哪个阶段之后(A)
A.详细设计B.可行性研究C.总体设计D.需求分析
27.在数据流图中,圆圈符号表示的是(B)
A.数据源点或终点B.数据处理C.数据存储D.数据流
28.内聚是衡量模块内部聚合能力的量度。
内聚越高,说明模块内各成分彼此联系的程度(C)
A.越松散 B.彼此相等C.越紧密 D.没有联系
29.在瀑布模型中,将软件划分为若干个时期,软件项目的可行性研究一般归属于( D )
A、维护时期B、开发时期C、运行时期D、计划时期
30.软件维护有四种,下面哪一个不是的(B)
A.完善性维护B.测试性维护C.预防性维护D.适应性维护
31.结构化程序设计采用的三种基本控制结构是( A )
A.顺序、选择、重复B.选择、循环、重复
C.顺序、分支、选择D.输入、变换、输出
32.软件测试的目的是( B )
A.为了表明程序没有错误B.为了发现程序中的错误
C.为了说明程序能正确地执行D.为了评价程序的质量
33.在UML(面向对象建模语言)的用例图中,人形符号表示的是(C)
A关联B用例C角色D系统
34.软件测试方法中,黑盒、白盒测试法是常用的方法,其中白盒测试主要用于测试( D )
A、结构合理性B、软件外部功能C、程序正确性D、程序内部逻辑
35.下面哪些测试属于黑盒测试( C )。
A、路径测试B、循环测试C、等价类划分D、条件判断
36.(A)是把对象的属性和操作结合在一起,构成一个独立的对象,其内部信息对外界是隐蔽的,外界只能通过有限的接口与对象发生联系。
A封装B继承C多态性D消息
37.在UML中,协作图反映收发消息的对象的结构组织,它与(B)是同构的
A用例图B时序图C活动图D类图
38.需求分析是软件生存周期中的一个重要阶段,它的应该是在( C )进行。
A、维护阶段B、软件开发全过程 C、软件定义阶段D、软件运行阶段
39.下面哪个阶段不属于软件的开发时期(D)
A.编码B.测试C.需求分析D.维护
40.模块内聚可分为七类,最低的内聚是(D)
A.顺序内聚B.时间内聚C.过程内聚D.偶然性内聚
41.在下列工具与环境中(C)属于较早期的CASE。
A.基于信息工程CASEB.人工智能CASE
C.结构的基于图形CASED.集成的CASE环境
42.Putnam成本估算模型是一个(D)模型。
A.静态单变量B.动态单变量C.静态多变量D.动态多变量
43.在McCall软件质量度量模型中,(C)属于面向软件产品修改。
A.可靠性B.可重用性C.适应性D.可移植性
44.ISO的软件质量评价模型由3层组成,其中用于评价设计质量的准则是(D)
A.SQICB.SQMCC.SQRCD.SQDC
45.软件复杂性度量的参数包括(B)
A.效率B.规模C.完整性D.容错性
46.对象实现了数据和操作的结合,使数据和操作(C)于对象的统一体中。
A.结合B.隐藏C.封装D.抽象
47.软件调试技术包括(B)
A.边界值分析B.演绎法C.循环覆盖D.集成测试
48.瀑布模型的存在问题是(B)
A.用户容易参与开发B.缺乏灵活性C.用户与开发者易沟通D.适用可变需求
49.软件测试方法中的静态测试方法之一为(A)
A.计算机辅助静态分析B.黑盒法C.路径覆盖D.边界值分析
50.软件生命周期中所花费用最多的阶段是(D)
A.详细设计B.软件编码C.软件测试D.软件维护
51.第一个体现结构化编程思想的程序设计语言是(B)
A.FORTRAN语言B.Pascal语言C.C语言 D.PL/1语言
52.程序的三种基本控制结构是(B)
A.过程、子程序和分程序B.顺序、选择和重复C.递归、堆栈和队列D.调用、返回和转移
53.在详细设计阶段,经常采用的工具有(A)
A.PADB.SAC.SCD.DFD
54.详细设计的结果基本决定了最终程序的(C)
A.代码的规模B.运行速度C.质量D.可维护性
55.需求分析中开发人员要从用户那里了解(A)
A.软件做什么B.用户使用界面C.输入的信息D.软件的规模
56.结构化程序设计主要强调的是(D)
A. 程序的规模B. 程序的效率C. 程序设计语言的先进性D. 程序易读性
57.IDEF。
图反映系统(D)
A.怎么做B.对谁做C.何时做D.做什么
58.经济可行性研究的范围包括(C)
A.资源有效性B.管理制度C.效益分析D.开发风险
59.可行性分析是在系统开发的早期所做的一项重要的论证工作,它是决定该系统是否开发的决策依据,因必须给出(B)的回答。
A.确定B.行或不行C.正确D.无二义
60.需求分析阶段的任务是确定(D)
A.软件开发方法B.软件开发工具C.软件开发费D.软件系统的功能
61.软件工程管理的具体内容不包括对_________管理。
( D )
A.开发人员B.组织机构C.控制D.设备
62.在McCall软件质量度量模型中,_________属于面向软件产品操作。
( C )
A.正确性B.可维护性 C.适应性D.互操作性
63.在快速原型模型的开发过程中,用原型过程来代替全部开发阶段所用模型是_________模型。
( B )
A.探索型原型B.演化型原型C.实验型原型D.增量型原型
64.维护中因删除一个标识符而引起的错识是_________副作用。
( C )
A.文档B.数据 C.编码D.设计
65.软件维护的困难主要原因是( C )
A.费用低B.人员少C.开发方法的缺陷D.维护难
66.用白盒法技术设计测试用例的方法包括( C )
A.错误推测B.因果图C.基本路径测试D.边界值分析
67.软件测试中根据测试用例设计的方法的不同可分为黑盒测试和白盒测试两种,它们( D )
A.前者属于静态测试,后者属于动态测试
B.前者属于动态测试,后者属于静态测试
C.都属于静态测试D.都属于动态测试
68.程序设计语言的心理特性在语言中表现不应包括( C )
A.歧义性B.简洁性C.保密性D.传统性
69.程序的三种基本控制结构的共同特点是( C )
A.只能用来描述简单程序B.不能嵌套使用
C.单入口,单出口D.仅用于自动控制系统
70.JSP方法是一种面向_________的设计方法。
( D )
A.控制结构B.对象 C.数据流D.数据结构
71.当一个模块直接使用另一个模块的内部数据,这种模块之间的耦合为( D )
A.数据耦合B.公共耦合C.标记耦合D.内容耦合
72.软件设计的方法有多种,_________方法不属于面向数据流的设计方法。
( A )
A.基于Jackson图的设计B.基于IDEF0图的设计
C.交换分析设计D.事务分析设计
73.为高质量地开发软件项目,在软件结构设计时,必须遵循_________原则。
( A )
A.信息隐蔽B.质量控制C.程序优化D.数据共享
74.数据流图(DFD)是_________方法中用于表示系统的逻辑模型的一种图形工具。
( A )
A.SA(需求分析)B.SDC.SPD.SC
75.螺旋模型是一种将瀑布模型和_________结合起来的软件开发模型。
( A )
A.增量模型B.专家系统 C.喷泉模型D.变换模型
76.需求规格说明书的作用不包括( C )
A.软件验收的依据
B.用户与开发人员对软件要做什么的共同理解
C.软件可行性研究的依据D.软件设计的依据
77.数据字典是用来定义_________中的各个成份的具体含义的。
( D )
A.流程图B.功能结构图 C.系统结构图D.数据流图
78.设年利率为i,现存入p元,不计复利,n年后可得钱数为( A )
A.p﹡(1+i﹡n)
B.p﹡(i+1)*n
C.p﹡(1+i)﹡n
D.p﹡(i+n)
79.在软件生产的程序系统时代由于软件规模扩大和软件复杂性提高等原因导致了( A )
A.软件危机B.软件工程C.程序设计革命D.结构化程序设计
81.“软件工程的概念是为解决软件危机而提出的”这句话的意思是(C)
A.强调软件工程成功解决了软件危机的问题
B.说明软件危机的存在总是使软件开发不像传统工程项目那样容易管理
C.说明软件工程这门学科的形成是软件发展的需要
D.说明软件工程的概念,即:
工程的原则、思想、方法可解决当时软件开发和维护存在的问题
82.瀑布模型的主要特点是(A)
A.将开发过程严格地划分为一系列有序的活动B.将开发过程分解为阶段
C.提供了有效的管理模式D.缺乏灵活性
83.在软件工程的需求分析阶段,不属于问题识别内容的是(D)
A.功能需求B.性能需求 C.环境需求D.输入/输出需求
84.画某系统的数据流图时,顶层图有(B)
A.0张B.1张 C.2张D.3张及其以上
85.软件模块内聚性最强的是(A)
A.功能内聚B.通信内聚C.偶然内聚D.逻辑内聚
86.最早提出软件系统维护问题的阶段是(A)
A.可行性分析B.需求分析C.概要设计D.详细设计
87.SD(结构化设计)方法设计的结果是(B)
A.模块B.模块结构图 C.模块的算法D.数据流图
88.在进行软件测试时,首先应当进行以下哪项测试,然后再进行组装测试,最后再进行有效性测试(A)
A.单元测试B.系统测试 C.集成测试D.确认测试
89.软件详细设计阶段的任务是(A)
A.算法与数据结构设计B.功能设计C.调用关系设计D.输入/输出设计
90.下列属于静态测试方法的是(D)
A.黑盒法B.路径覆盖C.白盒法D.人工检测
91.Fortran语言主要作为以下哪个方面的语言(A)
A.科学工程计算B.系统软件C.事务处理D.人工智能
92.用结构化语言来描述加工逻辑的外层结构时,以下不属于基本结构的是(C)
A.顺序结构B.选择结构C.嵌套结构D.重复结构
93.可维护软件的主要特性包括(A)
A.可理解性、可修改性、可移植性 B.可使用性
C.可维护性、可使用性、可靠性D.可测试性
94.程序设计语言不具有的特性是(C)
A.心理特性B.工程特性C.应用特性D.技术特性
95.下列不属于项目进度安排主要方法的是(D)
A.工程网络图B.Gantt图C.进度结构图D.任务资源表
96.下列不属于通常冗余技术的是(D)
A.结构冗余B.信息冗余 C.时间冗余D.代码冗余
97.下列工具中,属于需求追踪工具的是(A)
A.在DBMS上的应用运行工具B.追踪和状态报告 C.访问和版本控制机构D.文件和修改管理
98.关于软件测试的目的,下面观点错误的是(C)
A.为了发现错误而执行程序的过程 B.一个好的测试用例能够发现至今尚未发现的错误
C.证明程序是正确、没有错误的D.一个成功的测试用例是发现了至今尚未发现的错误的测试
99.在制定项目开发计划文档时,不包含的内容是(C)
A.项目概述B.实施计划C.测试计划D.交付期限
100.面向对象的开发方法中,以下哪种方法原是面向Ada语言的,并处于面向对象开发方法的奠基性地位(A)
A.Booch方法B.Coad方法 C.UML语言D.OMT方法
填空题
1.面向对象方法=对象+类+继承+用消息通信。
面向对象=对象+类+继承+通过消息的通信对象:
一组属性及其上的操作的封装体类:
一组有相同属性和操作的对象的集合继承:
一个类为另一个类上的扩充的方式,子类继承父类,主要目的是代码复用消息:
对象间通信的手段
2.常用的软件过程模型有:
瀑布模型、原型模型、增量模型、螺旋模型、喷泉模型等。
3.软件的对象模型通常由下述5个层次组成:
主题层、类与对象层、结构层、属性层和服务层。
4.开发一个铁路售票系统,请完成图1所示的数据流图,从供选择的答案中选出A、B、C、D、E的内容。
供选择的答案:
车次表、接受的请求、售票记录、购票请求、拒绝的请求。
A购票请求、B接受、C拒绝的请求、D车次表、E售票记录。
5.计算一个班学生的平均成绩,层次图如图2所示,确定标号为
(1)至(4)的四个模块的内聚类型。
(1)、
(2)、(3)、(4)。
图1铁路售票系统数据流图图2计算一个班学生平均成绩层次图
6.图2所示的软件结构中,模块
(2)的扇入是1,该软件结构的宽度是4。
7.常用的软件规模估算技术有代码行技术和项目估算方法功能点技术。
8.基线就是通过了正式复审的软件配置项。
9.软件过程的输出信息可以分为3类:
计算机程序、描述计算机程序的文档和程序数据。
10.根据软件规模可以估算出完成该项目所需的工作量,常用的估算模型为静态单变量模型、和COCOMO2模型和动态多变量模型IBM模型。
Gannt图
11.常用(【1】耦合)和内聚这两个定性度量标准来评定模块的独立性。
12.结构化设计方法以数据流图为基础,按一定步骤映射成软件结构,数据流图有两种基本结构:
变换型结构和(【2】事务流型结构)。
13.软件的定义可以简单的表述为:
软件=(【3】程序+文档)
14.测试技术有黑盒测试和白盒测试两种,根据程序的功能来设计测试用例,这种方法称为(【4】黑盒)测试。
15.在面向对象的系统设计过程中,有4种主要的设计组件必须定义,它们是领域组件、(【5】人机交互组件)、任务管理组件和数据管理组件。
16.统一建模语言是面向对象软件工程所使用的一种建模工具,其英文缩写是(【6】UML)
17.软件结构的深度、宽度、扇人、扇出四个特征,定义了软件结构的形态。
(【7】扇出)是指一个模块直接调用的下属模块的数目。
18.软件维护的内容包括纠错性维护,(【8】适应性维护)、完善性维护和(【9】预防性维护)。
19.向一个已经拖期的项目追加开发人员,可能使它完成得更晚。
鉴于这一发现的重要性,许多文献称之为(【10】Brooks)定律。
20.在UML的图形符号中,虚线箭头表示的是两个元素之间的(【11】依赖)关系。
21.软件的测试可以分为4个步骤,主要包括(【12】单元测试)、集成测试、(【13】确认测试)和系统测试。
22.在软件的开发过程中,必须遵循的原则是抽象、信息隐蔽和(【14】模块化 )。
23.为使软件适应运行环境的改变而进行的一类维护称之为(【15】适应性维护)。
24.在软件开发过程中要产生大量的信息,要进行大量的修改,(【16】软件配置管理)能协调软件开发,并使混乱减到最低程度。
25.规定功能的软件,在一定程度上对自身错误的作用(【17】软件错误)具有屏蔽能力,则称此软件具有(【18】容错功能)的软件。
26.McCall提出的软件质量模型包括11个(【19】软件质量)特性。
27.软件可维护性度量的七个质量特性是可理解性、(【20】可测试性)、可修改性、可靠性、可移植性、可使用性和效率。
28.为了便于对照检查,测试用例应由(输入数据)和预期的输出结果两部分组成。
29.程序设计语言的心理特性主要表现在(歧义性)、简洁性、传统性、局部性和顺序性。
30.软件结构是以(模块)为基础而组成的一种控制层次结构。
31.在结构化分析中,用于描述加工逻辑的主要工具有三种,即:
结构化语言、(判定表)、判定树。
32.(结构化语言)是介于自然语言和形式语言之间的一种半形式语言。
33.若年利率为i,不计复利,n年后可得钱数为F,则现在的价值(P=F/(1+(n*i))。
34.在面向对象方法中,对象实现了数据和操作的结合,使数据和操作_封装__于对象的统一体中。
35.面向对象分析的目的是对客观世界的系统进行______建模______。
36.软件维护工作的生产性活动包括分析评价、修改设计和________编写程序代码__________等。
37.为了使应用软件适应计算机环境的变化而__修改软件________________的过程称为适应性维护。
38.一个进行学生成绩统计的模块其功能是先对学生的成绩进行累加,然后求平均值,则该模块的内聚性是_顺序内聚_________________。
39.基于IDEF0图的设计是以系统的功能模型和____信息结构______________为基础设计系统的软件结构。
40.软件结构图的宽度是指一层中___最大_______________的模块个数。
41.投资回收期就是使累计的经济效益等于__最初的投资费用________________所需的时间。
42.软件生存周期是指一个软件从提出开发要求开始直到_____软件废弃____软件报废_________为止的整个时期。
43.可行性研究从技术可行性、经济可行性、__工程可行性_社会可行性____三方面进行分析。
44.IDEF0方法用来描述系统的功能活动及其联系,建立系统的____功能___模型。
45.结构化方法总的指导思想是__自顶向下_____逐层分解。
46.在一段程序中,将多次出现的一组语句设计为一个子程序,供多个部分调用,这种情况出现的内聚称为_偶然内聚_______。
47.软件部件的内部实现与外部可访问性分离,这是指软件的__封装____。
48.用来模拟被测模块的上级调用模块的模块称为__驱动模块_____。
49.软件复杂性度量的参数很多,主要有规模、__难度_____、结构、智能度。
50.软件开发环境中最主要的组成部分是_需求分析工具__软件工具___。
51.软件工程管理的具体内容包括对开发人员、组织机构、用户和___文档资料__文档管理_等方面的管理。
52.增量模型根据增量方式和形式的不同,分为__渐增模型___和原型模型。
名词解释
1.白盒法
该方法把测试对象看作一个打开的盒子,测试人员须了解程序的内部结构和处理过程,以检查处理过程的细节为基础,对程序中尽可能多的逻辑路径进行测试,检查内部控制结构和数据结构是否有错,实际的运行状态与预期的状态是否一致。
白盒法也不可能进行穷举测试。
2.类
具有相同或相似性质的对象的抽象就是类。
3.信息隐蔽
指在设计和确定模块时,使得一个模块内包含的信息(过程或数据),对于不需要这些信息的其它模块来说,是不能访问的。
4.路径覆盖
指设