软件工程期末考试复习题docx.docx
《软件工程期末考试复习题docx.docx》由会员分享,可在线阅读,更多相关《软件工程期末考试复习题docx.docx(20页珍藏版)》请在冰豆网上搜索。
软件工程期末考试复习题docx
一.选择题:
1.软件危机出现于—,为了解决软件危机,人们提出了用—的原理来设计软件,这是软件工程诞生的基础。
A.50年代末B.60年代初C.60年代末D.70年代初
A.运筹学B.工程学C.软件学D.软件学E.数字
2.开发软件需高成本和产品的低质量Z间有着尖锐的矛盾,这种现象称作—o
A.软件投机B.软件危机C.软件工程D.软件产生
3.产生软件危机的原因有如下几点,除了o
A、软件开发过程未经审查
B、软件开发不分阶段,开发人员没有明确的分工
C、所开发的软件,除了程序清单外,没有其他文档
D、采用工程设计的方法开发软件,不符合软件本身的特点
4.软件工程学是应用科学理论和工程上的技术指导软件开发的学科,其目的是—o
A.引入新技术提高空间利用率B.用较少的投资获得高质量的软件
C.缩短研制周期扩大软件功能D.硬软件结合使系统面向应用
5.请按顺序写出软件生命期的儿个阶段—,—,—,—,—,—o
A.维护B.测试C.详细设计D.概要设计E.编码F.需求分析
6.瀑布模型把软件生存周期划分为软件定义、软件开发和—三个阶段,而每一阶段又可细分为若干个更小的阶段。
A.详细设计B.可行性分析C.运行及维护D.测试与排错
7.划分软件生存周期的阶段时所应遵循的基本原则是o
A、各阶段的任务尽可能相关性B、各阶段的任务尽可能相对独立
C、各阶段的任务在吋间上连续D、各阶段的任务在吋间上相对独立
8.一个软件项目是否进行开发的结论是在文档中作出的。
八、软件开发计划B、可行性报告C、需求分析说明书D、测试报告
9.分析员是—o
A.用户中系统的直接使用者B.用八和软件人员的屮间人
C.软件的编程人员D。
用户和软件人员的领导
10.下列叙述中,不属于数据字典的作用。
A.作为编码阶段的描述工具B、为用户与开发人员之间统一认识
C、作为概要设计的依据D、为需求分析阶段定义各类条目
11.使用结构化分析方法时,采用的基本手段是—o
A.分解和抽象B.分解和综合C.归纳与推导D.试探与回溯
12.结构化系统分析主要是通过—进行分析的。
A.算法分解B.控制结构分解C.数据结构分解D.处理功能分解
13.分层数据流图是一种比较严格又易于理解的描述方式,它的顶层描述了系统的_o
总貌B.细节C.抽象D.软件的作者
13.变换型和事务型是程序结构的标進形式。
从某处获得数据,再对这些数据作处理,然后将结果送出是属于—O
A.变换型B事务型
14.需求分析说明书不能作为o
A、可行性研究的依据B、用户和开发人员之间的合同
C、系统概要设计的依据D、软件验收测试的依据
15.结构化分析方法以数据流图、和加工说明等描述工具,即用直观的图和简洁的语言来描述软件系统模型。
A.DFD图B.PAD图C.IPO图D.数据字典
16.不适于作为数据流图处理(加工)框名称的是—o
A.人工校核工资数据B.工资支票数据
C.打印工资支票D.计算职工工资
17.系统开发人员使用系统流程图或其他工具描述系统,估计每种方案的成本和效益的
工作是在阶段进行的。
A、需求分析B、总体设计C、详细设计D、编码阶段
18.软件的_设计又称为总体设计,其主要任务是建立软件系统的总体结构。
A.概要B.抽象C.逻辑D.规划
19.结构化设计方法采用变换分析和事务分析技术实现—o
A.从数据结构导出程序结构B.从模块结构导出程序结构
C.从模块结构导出数据结构D.从数据流图导出初始化结构图
20.结构化设计方法是面向—的设计方法。
A.过程B.对象C.数据流D.数据结构
41.Jackson程序设计方法是一种面向的设计方法。
A、数据结构B、数据流图C、IP0图D、系统流程图
20.Jackson设计方法由英国的M.Jackson提出的,它是一种面向的设计方法。
A.对象B.数据流C.数据结构D.控制结构
21.结构化设计采用模块化方法的主要出发点是o
A、增加内聚性B.减少耦合度C、提髙有效性D、降低复杂度
22.下列不是模块化设计的目的。
A、可采用结构化设计方法B、降低复杂度
C、有利于信息隐蔽D、描述系统的功能与性能
23.—个模块直接控制(调用)的下层模块的数目称为模块的o
A、扇入数B、扇岀数C、宽度D、作用域
24.某个模块的作用域是指o
A、被该模块调用的所用模块B、调用该模块的所有模块
C、与该模块相关联的所有模块D、受该模块内的判定影响的所有模块
25.模块本身的内聚是模块独立性的重要度量因素之一,在七类内聚中,具有最强内聚的一类是—o
A.顺序性内聚B.过程性内聚C.逻辑性内聚D.功能性内聚
26.如果模块中所有成分引用共同的数据,该模块内的联系类型是—o
A.顺序内聚B.功能内聚C.通信内聚D.过程内聚
27.初始化模块和结束模块从块内联系看,被称为—模块。
A.过程内聚B.功能内聚C.时间内聚D.逻辑内聚
28.若一模块内部的处理动作为:
成分A的输出是成分B的输入,则该模块的聚合性称
为。
A、顺序内聚B、功能内聚C、过程内聚D、通信内聚
29.某模块的功能是打印录取通知书或不录取通知书,调用模块可通过向此模块传递布尔标志信息决定本次调用哪种通知书的打印,这种模块Z间的耦合称为—O
A.数据耦合B.混合耦合C.公共耦合D.控制耦合
30.要减少两个模块之I'可的耦合,则必须—o
A.两个模块间的调用次数要少
B.模块间传递的参数要少
C.模块间传递的参数要少且布传递开关型参数
D.模块间传递的参数要少且不传递开关型参数以及两模块不引用同样的全局变量
31.下列耦合度表示中,最弱的耦合形式是。
八、特征耦合B、公共耦合C、数据耦合D、数据结构
32.一个模块传送给另一模块的参数是由单个数据项组成的数组,它属于耦合。
A、数据型B、复合型C、内容型D、公共型
34.PAD(ProblemAnalysisDiagram)图是一种工具。
A.系统描述Bo详细设计Co测试Do编程辅助
35.下列系统设计工具中,不属于详细设计工具。
A、N-S图B、数据流图C、程序流程图D、PAD
36.程序流程图、N・S图和PAD图是使用的表达工具。
A.设计阶段的概要设计B.设计阶段的详细设计
C.编码阶段D.测试阶段
37.模块内部的算法设计在结构化方法的阶段进行。
A、系统分析B、概要设计C、详细设计D编码(实现)
38.源程序的版面文档要求应有变量说明、适当注释和—o
A.框图B.统一书写格式C.修改记录D.编程tl期
39.提高程序可读性的有力手段是o
A、选好一种程序设计语言B、显式说明一切变量
C、使用三种标准控制语句D、给程序加注释
40.文档是软件开发人员.维护人员.用户以及计算机之间的—,软件开发人员在各个阶
段以文档作为前段工作成果的和后段工作的o
A.接口B.桥梁C.科学D.继续E.体现F.基础
41.软件工程中不属于用户文档的内容。
A、功能描述B、安装手册C、系统设计D、使用手册
42.在软件工程中,高质量的文档标准是完整性、一致性和—o
A.统一性B.安全性C.无二义性D.组合性
43.一般來说,在管理软件中,软件生存周期各个阶段的工作量以所占的比例最
大。
A、需求分析与设计阶段B、编码实现阶段C、测试阶段D、维护阶段
44.软件的_一般由两次故障平均间隔时间和故障平均恢复时间来度量;
A.可维护性B可靠性C效率D可理解性
45.采用_且编写程序,可提高程序的可移植性;
A.机器语言B宏指令C汇编语言D高级语言
46.软件工程学是应用科学理论和工程上的技术指导软件开发的学科,其目的是_B_。
A.引入新技术提高空间利用率B.用较少的投资获得高质量的软件
C.缩短研制周期扩大软件功能D.硬软件结合使系统面向应用
47.划分软件生存周期的阶段时所应遵循的基本原则是_b_。
A.各阶段的任务尽可能相关性B.各阶段的任务尽可能相对独立
C・各阶段的任务在时间上连续D.各阶段的任务在时间上相对独立
4&结构化设计方法釆用变换分析和事务分析技术实现—o
A.从数据结构导出程序结构B.从模块结构导出程序结构
C.从模块结构导出数据结构D.从数据流图导出初始化结构图
49.需求分析说明书不能作为o
A.可行性研究的依据B.用户和开发人员之间的合同
C.系统概要设计的依据D.软件验收测试的依据
50.瀑布模型把软件生存周期划分为软件定义、软件开发和—三个阶段,而每一阶段又可细分为若干个更小的阶段。
A.详细设计B.可行性分析C.运行及维护D.测试与排错
51.Jackson设计方法由英国的M.Jackson提出的,它是一种而向的设计方法。
A.对象B.数据流C.数据结构D.控制结构
52.—个模块直接控制(调用)的下层模块的数目称为模块的o
A.扇入数B.扇出数C.宽度D.作用域
53.模块木身的内聚是模块独立性的重要度量因素么一,在七类内聚屮,具有最强内聚的
—类是O
A•顺序性内聚B.过程性内聚C.逻辑性内聚D.功能性内聚
54.
A.数据耦合B.混合耦合
55.程序流程图、N-S图和PAD图是—
A.设计阶段的概要设计
C.编码阶段
56.分析员是o
A.用户屮系统的直接使用者
C.软件的编程人员
57.下列不是模块化设计的目的。
A.可采用结构化设计方法
C.有利于信息隐蔽
C.公共耦合D.控制耦合
使用的表达工具。
B.设计阶段的详细设计
D.测试阶段
B.用户和软件人员的中间人
D.用户和软件人员的领导
B.降低复杂度
D.描述系统的功能与性能
某模块的功能是打印录収通知书或不录取通知书,调用模块可通过向此模块传递布尔标志信息决定本次调用哪种通知书的打印,这种模块之间的耦合称为。
58.软件工程屮不属于用户文档的内容。
A.功能描述B.安装手册C.系统设计手册D.使用手册
59.软件的一般由两次故障平均间隔吋间和故障平均恢复时间来度量。
A.可维护性B.可靠性C.效率D.可理解性
60.一般来说,在管理软件中,软件生存周期各个阶段的工作量以所占的比例最大。
A.需求分析与设计阶段B.编码实现阶段
C.测试阶段D.维护阶段
61.在下列工具与环境中()属于较早期的CASE。
A.基于信息工程CASEB.人工智能CASE
C.结构的基于图形CASED.集成的CASE环境
62.Putnam成本估算模型是一个()模型。
A.静态单变量B.动态单变量C.静态多变量D.动态多变量
63.在McCal1软件质量度量模型中,()属于面向软件产品修改。
A.可靠性B.可重用性C.适应性D.可移植性
64.ISO的软件质量评价模型由3层组成,其中用于评价设计质量的准则是()
D.SQDC
D.容错性
A.SQICB.SQMCC.SQRC
65.软件复杂性度量的参数包括()
A.效率B.规模C.完整性
66.对象实现了数据和操作的结合,使数据和操作()于对象的统一体中。
A.结合B.
67.软件调试技术包括(
A.边界值分析B.
68.瀑布模型的存在问题是
隐藏
)演绎法
()
C.封装
C.循环覆盖
A.用户容易参与开发B.缺乏灵活性
69.软件测试方法屮的静态测试方法Z—为()
A.计算机辅助静态分析B.黑盒法C.路径覆盖D.
70.软件生命周期中所花费用最多的阶段是()
A.详细设计B.软件编码C.软件测试
71.第一个体现结构化编程思想的程序设计语言是()
C.C语言
A.FORTRAN语言B.Pascal语言
72.程序的三种基本控制结构是()
A.过程、子程序和分程序B.顺序、返回和转移
73.
74.
75.
76.
77.
78.
D.
D.
C.用户与开发者易沟通
抽象
集成测试
D.适用町变需求
边界值分析
D.软件维护
D.PL/1语言
选择和重复C.递归、
堆栈和队列D.调用、
在详细设计阶段,经常采用的工具有
A.PADB.SA
详细设计的结果基本决定了最终程序的A.代码的规模B.运行速度
需求分析中开发人员要从用户那里了解A.软件做什么
(
B.用户使用界面
)
)
C.SC
)
C.
)
C.
D.DFD
质量
输入的信息
D.可维护性
D.软件的规模
结构化程序设计主要强调的是(
A.程序的规模B.
序易读性
TDEFo图反映系统()
A.怎么做B.对谁做
经济可行性研究的范I韦I包括-()
A.资源有效性B.管理制度
程序的效率
C.
程序设计语言的先进性D.程
C.何时做
D.做什么
C.效益分析
79.可行性分析是在系统开发的早期所做的一项重要的论证工作,发的决策依据,因必须给出()的回答。
A.确定B.行或不行C.正确
需求分析阶段的任务是确定()
A.软件开发方法B.软件开发工具C.
的功能
面向对象程序设计屮的数据隐藏指的是
A.
B.
C.
D.
D.开发风险
它是决泄该系统是否开
D.无二义
80.
81.
)0
82.
软件开发费
D.
软件系统
输入数据必须输入保密口令数据经过加密处理
对象内部数据结构上建有防火墙对象内部数据结构的不可访问性
与设计测试数据无关的文档是(
A.需求说明书B.设计说明书结构化分析SA方法以数据流图、(
83.
洁的语言来描述软系统模型。
A.DFD图B.数据字典
84.()引入了“风险驱动”的思想,
C.源程序D.
和加工说明等描述工具,
项冃开发设计即用直观的图和简
C.IPO图D.
适用于大规模的内部开发项目0
PAD图
A.增量模型B.喷泉模型C・原型模型D.螺旋模型
85.瀑布模型把软件生存周期划分为软件定义、软件开发和()三个阶段,而每一阶段又可细分为若干个更小的阶段。
A.详细设计B.可行性分析C.运行及维护D.测试与排错
86.若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0,1.0],现从输入的角
度考虑一组测试用例:
-1.001,-1.0,l.OJ.OOlo设计这组测试用例的方法是()。
A.条件覆盖法B.等价分类法C.边界值分析法D.错误推测法
87.数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是()。
A.数据库设计B.数据通信C.数据定义D.数据维护
88.模块本身的内聚是模块独立性的重要度量因素之一,在七类内聚中,具有最强内聚的一
类是()。
A•顺序性内聚B.过程性内聚C・逻辑性内聚D.功能性内聚
89.下面几种白箱测试技术,()是最强的覆盖准则。
A.语句覆盖B.条件覆盖C.判定覆盖D.条件组合覆盖
90.软件需求规格说明的内容不应包扌舌()o
A.主要功能B.算法的详细描述
C・用户界面及运行环境D.软件的性能
91.
面向对象的分析方法主要是建立三类模型,即()。
B.系统结构
C.控制结构
94.下面关于面向对彖方法屮消息的叙述,不正确的是()o
A.键盘、鼠标、通信端口、网络等设备一有变化,就会产生消息
B.操作系统不断向应用程序发送消息,但应用程序不能向操作系统发送消息
C.应用程序之间可以相互发送消息
D.发送与接收消息的通信机制与传统的子程序调用机制不同
95.提高测试的有效性非常重要,成功的测试是指()。
A.证明了被测试程序正确无误B.说明了被测试程序符合相应的要求
C.未发现被测程序的错误D.发现了至今为止尚未发现的错误
二、填空题:
1、在结构化分析中,—数据字典—用于详细地定义数据流图中的成分。
2、耦合性和内聚性是衡量—模块独立性-的两个定性的标准。
3、结构化程序设计是一种程序设计技术,它釆用—自顶向下、逐步求精—的设计方法和顺序、选择、循坏三种基本控制结构构造常态程序。
4、结构化分析方法屮,数据流图的四种基木成分为:
处理、源点或终点数据存储和数据流
5、从模块内外的联系来看,结构化设计的要求是—高内聚低耦合。
6、在需求分析屮,可从有关问题的简述屮提取组成数据流图的基本成分。
通常问题简述中的动词短语将成为数据流图中的—处理—成分。
7.如果两模块问的通信信息是若干个参数,而每个参数是单一的数据项,则称这种耦合性为—数据_耦合。
8.模块内部的算法设计在结构化方法的—详细设计—阶段进行。
9.定性度量模块独立性的两个标准是内聚性和—耦合性__o
10.在模块结构图中,直接调用某一模块的其他模块数称为该模块的—扇入数
O
11.系统流程图是描述物理模型的传统工具,用图形符号表示系统中各个元素表达了系统中各种元素之间的(信息流动)情况。
12.成本效益分析的目的是从(经济)角度评价开发一个项目是否可行。
13.白顶向下结合的渐增式测试法,在组合模块时有两种组合策略:
深度优先策略和(宽度优先策略)。
14.独立路径是指包括一组以前没有处理的语句或条件的一条路径。
从程序图來看,一条独立路径是至少包含有一条(在其他独立路径中未有过)的边的路径。
15.汇编语言是而向(机器)的,可以完成高级语言无法完成的特殊功能,如与外部设备之间的一些接口工作。
16.在JSP方法中解决结构冲突的具体办法是(中间数据结构或中间文件)o
17.详细设计的任务是确定每个模块的内部特性,即模块的算法、(使用的数据)。
18.所有软件维护申请报告耍按规定方式提出,该报告也称(软件问题)报告。
19.有两类维护技术:
在开发阶段使用来减少错误、提高软件可维护性的面向维护的技术;在维护阶段用来提髙维护的效率和质量的(维护支援)技术。
20.科学工程计算需要大量的标准库函数,以便处理复杂的数值计算,可供选择的语言有:
(FORTRAN语言)、PASCAL语言、C语言和PL/1语言。
21.在软件开发过程屮要产生大量的信息,要进行大量的修改,—软件配置管理能
协调软件开发,并使混乱减到最低程度。
22.规定功能的软件,在一定程度上对自身错误的作用(软件错误)具有屏蔽能力,则称此软件具有容错功能的软件。
23.McCall提出的软件质量模型包括丄个软件质量特性。
24.软件可维护性度量的七个质量特性是可理解性、可测试性、可修改性、可靠性、可移植性、可使用性和效率。
25.为了便于对照检查,测试用例应由输入数据和预期的魏出结果两部分组成。
26.程序设计语言的心理特性主要表现在一歧义性_、简洁性、传统性、局部性和顺序性。
27.软件结构是以为基础而组成的一种控制层次结构。
28.在结构化分析中,用于描述加工逻辑的主要工具有三种,即:
结构化语言、判定表、判定树。
29.结构化语言是介于自然语言和形式语言Z间的一种半形式语言。
30.若年利率为i,不计复利,n年后可得钱数为F,则现在的价值P二F/(l+(n*i)°
31.在结构化分析中,(数据字典/数据词典)用于详细地定义数据流图中的成分。
32.耦合性和内聚性是衡量(模块独立性)的两个定性的标准。
33.结构化程序设计是一种程序设计技术,它采用(自顶向下、逐步求精)的设计方法
和顺序、选择、循环三种基本控制结构构造常态程序。
34.结构化分析方法屮,数据流图的四种基本成分为:
处理、源点或终点、数据存储和(数据流)。
35.从模块内外的联系來看,结构化设计的要求是(高内聚低耦合)o
36.在需求分析中,可从有关问题的简述中提取组成数据流图的基本成分。
通常问题简述小的动词短语将成为数据流图中的(加工或处理)成分。
37.如果两模块间的通信信息是若干个参数,而每个参数是单一-的数据项,则称这种耦合性
为()耦合。
38.模块内部的算法设计在结构化方法的()阶段进行。
39.系统流程图是描述物理模型的传统工具,用图形符号表示系统中各个元素表达了系统中
各种元素之间的()情况。
40.在模块结构图中,直接调用某一模块的其他模块数称为该模块的()。
41.()和数据字典共同构成了系统的逻辑模型。
42.()是一种黑盒测试技术,这种技术把程序的输入域划分为若干个数据类,据此
导出测试用例。
43.成本效益分析的目的是从()角度评价开发一个项目是否可行。
44.为了便于对照检查,测试用例应由输入数据和预期的()两部分组成。
45.在结构化分析中,用于描述加工逻辑的主要工具有三种,即:
结构化语言、判定表、()。
46.若年利率为i,不计复利,n年后可得钱数为F,则现在的价值P=()o
47.定性度量模块独立性的两个标准是内聚性和()。
48.自顶向下结合的渐增式测试法,在组合模块吋有两种组合策略:
深度优先策略和()。
49.独立路径是指包括一组以前没有处理的语句或条件的一条路径。
从程序图來看,一条独
立路径是至少包含有一条()的边的路径。
50.软件工程中的结构化分析SA是一种面向()的分析方法。
3.判断
1.软件的开发与运行经常受到硬件的限制和制约。
W)
2.模块内的高内聚往往意味着模块间的松耦合。
(V)
3.Jackson图只能表达程序结构,不能表达数据结构。
(X)
4.上述数据流图表示数据A和B同时输入变换成C。
(X)
5.软件的质量好坏主要由验收人员负责,其他开发人员不必关心。
(X)
6.判定覆盖不一定包含条件覆盖,条件覆盖也不一定包含判定覆盖。
(7)
7.应该尽量使用机器语言编写代码,提高程序运行效率,而减少高级语言的使用。
(X)
8.UML只能应用于软件系统模型的建立。
(X)
9.容错就是每个程序釆用两种不同的算法编写。
(X)
10.软件测试的目的是为了无一遗漏的找岀所有的错误。
(X)
1.软件工程学只有理论意义,没有实际用途。
()
2.软件工程的方法只适用于大型软件的开发,对小型软件的开发没有帮助。
()
3.可行性研究进一步研究问题分析阶段所确定的问题是否有可行的解。
()
4.代码审查方法没有计算机测试方法好。
()
5.验证软件需求的方法主要靠人工审查的方法。
()
6.并发系统中遇到的一个主要问题是定时问题。
()
7.编码风格由个人喜好决定,没有固定格式。
()
8.面向对象建模得到的模型包含系统的3个要索,即静态结构、交互次序和数据变换。
()
9.软件重用是提高软件开发生产率和目标系统质量的重要途径。
10.判定覆盖不一定包含条