聪明文档网

聪明文档网

最新最全的文档下载
当前位置: 首页> 太原理工大学 软件工程复习题

太原理工大学 软件工程复习题

时间:2020-06-14 23:57:43    下载该word文档

软件工程复习题

一、单选题

1、软件开发的结构化设计(SD)方法,全面指导模块划分的最重要原则应该是( c )

A模块高内聚 B模块低耦合 C模块独立性 D程序模块化

2、软件工程方法的提出起源于软件危机,而其目的应该是最终解决软件的什么问题?( D )

A产生危机 B质量保证 C开发效率 D生产工程化

3、软件工程开发的可行性研究是决定软件项目是否继续开发的关键,而可行性研究的结论主要相关于( A )

A软件系统目标 B软件的性能

C软件的功能 D软件的质量

4、软件需求分析一般应确定的是用户对软件的( D )

A.功能需求 B.非功能需求 C.性能需求 D.功能需求和非功能需求

5、软件测试是满足软件的功能和性能要求,保证软件正确性的措施,一般软件测试计划的制订应始于软件开发的哪个阶段? ( D )

A.需求分析 B.软件设计 C.程序编码 D.软件计划

6、软件工程方法是在实践中不断发展的方法,而早期的软件工程方法主要是指( B )

A.原型化方法 B.结构化方法 C.面向对象方法. D.功能分解法

7、数据流图描述数据在软件中流动和被处理变换的过程,它是以图示的方法来表示,即.( A )

A.软件模型 B.软件功能 C.软件结构 D.软件加工

8、软件工程学涉及到软件开发技术和工程管理两方面的内容,下述内容中哪一个不

属于开发技术的范畴?( D

A.软件开发方法 B.软件开发工具 C.软件工程环境 D.软件工程经济

9、软件文档是软件工程实施中的重要成份,它不仅是软件开发的各阶段的重要依据,而且也影响软件的( )

A.可理解性 B.可维护性 C.可扩展性 D.可靠性

10、从( )语言开始,软件摆脱了对硬件的依赖。

A.第一代 B.第二代 C.第三代 D.第四代

11、在下面列出的基本成分中,哪个不是实体关系图的基本成分? ( )

A.实体 B.数据存储 C.关系 D属性

12、结构化程序设计主要强调程序的( C

A.效率 B.速度 C.可读性 D.大小

13、在软件工程中根据程序的功能说明,而不关心程序内部逻辑的测试方法为( A )

A.黑盒法 B.白盒法 C.灰盒法 D.综合法

14、软件开发的结构化分析方法,常用的描述软件功能需求的工具有( C )

A业务流程图,数据字典 B.软件流程图,模块说明

C.数据流图,数据字典 D.系统流程图,程序编码

15、结构化程序设计思想的核心是要求程序只由顺序、循环和( A )三种结构组成。

A.分支 B.单人口 C.单出口 D.有规则GOTO

16、确定软件系统的主要功能,即进行系统功能分析,提出软件系统的目标、范围与功能说明称为结构化方法中的( D )

A.需求分析 B.可行性研究 C.总体设计 D.问题定义

17、.在结构化方法中,软件功能分解应属于软件开发中的哪一阶段?( A )

A.总体设计 B.需求分析 C.详细设计 D.编程调试

18、在软件结构化设计中,好的软件结构设计应该力求做到(B )

A.顶层扇出较少,中间扇出较高,底层模块低扇入

B.顶层扇出较高,中间扇出较少,底层模块高扇入

C顶层扇入较少,中间扇出较高,底层模块高扇入

D.顶层扇入较少,中间扇入较高,底层模块低扇入

19、在软件测试方法中,黑盒测试法和白盒测试法是常用的方法,其中黑盒测试法主要是用于测试( B )

A.结构合理性 B.软件外部功能 C.程序正确性 D.程序内部逻辑

20、数据字典是软件需求分析阶段的最重要的工具之一,其最基本的功能是(C )

A.数据库设计 B.数据通讯 C.数据定义 D.数据维护

21、软件测试是软件开发过程中重要和不可缺少的阶段,其包含的内容和步骤甚多,而在测试过程的多种环节中最基础的是(B )

A.集成测试 B.单元测试 C.系统测试 D.验收测试

22、软件工程开发的可行性研究是决定软件项目是否继续开发的关键,而可行性研究的结论主要相关于(A )

A.软件系统目标 B.软件的可测试性 C.软件的功能 D.软件的质量

23、结构化程序设计理论认为,实现良好的程序结构要应用( A )的分析方法。

A.自顶向下 B.自底向上 C.面向对象 D.基于组件

24、在下面列出的基本成分中,哪个不是数据流程图的基本成分?.( D )

A.信息处理 B.信息存储 C.外部实体 D.系统状态

25、PAD(Problm hmlysis Diagam)图是一种( B )工具。

A.系统描述 B.详细设计 C.测试 D.编程辅助

26、耦合是软件中各模块间相互联系的一种度量,耦合的强弱取决于模块间的复杂程度。耦合的若干种类中,耦合度最高的是.( A )

A.内容耦合 B.非直接耦合 C.数据耦合 D.控制耦合'

27、在软件工程中,软件测试的目的是( B )

A.试验性运行软件 B.发现软件错误

C.证明软件是正确的 D.找出软件中全部错误

28、下面哪一项不是软件设计规格说明中模块的内容?( C )

A.接口描述 B.数据的组织

C.外部文件结构 D.处理过程描述

29、需求分析的主要任务是( B )

A.确定软件系统的主要功能,即进行系统功能分析,提出软件系统的目标、范围与功能说明

B.分析用户要求,将软件功能和性能描述为具体的规格说明书

C.对问题定义阶段所确定的问题实现的可能性和必要性做出研究

D.建立软件系统的总体结构,子系统划分,并提出软件结构图

30、软件结构中,由一模块直接调用的其他模块数称为( C )

A.深度 B.宽度 C.扇入数 D.扇出数

31、在数据字典中,( B )给出了某个文件的定义,文件的定义通常也是列出其记录的组成。

A加工 B.数据存储 C.数据流 D.数据项

32、面向数据流的软件设计方法,一般是把数据流图中的数据流划分为什么样的两种流,再将数据流图映射为软件结构?( B )

A.数据流与事务流 B.变换流与事务流 C.信息流与控制流 D.变换流与数据流

33、软件计划是软件开发的早期和重要阶段,此阶段要求交互和配合的是( B )

A.设计人员和用户 B.分析人员和用户

C.分析人员和设计人员 D.编码人员和用户

34、数据字典是对数据定义信息的集合,它所定义的对象都包含于( A )

A数据流图 B.程序框图 C.软件结构 D.方框图

35、判定树和判定表是用于描述结构化分析方法中( B )环节的工具。

A.功能说明 B.数据加工 C.流程描述 D.性能说明

36、在结构图这种概念模式中,矩形框代表( B )

A.处理过程 B.模块 C.外部实体 D.内部实体

37、分层数据流图是一种比较严格又易于理解的描述方式,它的顶层描绘了系统的( A )

A.总貌 B.细节 C.抽象 D.软件的作用

38、为了提高测试的效率,应该(D )

A.随机地选取测试数据 B.取一切可能的输入数据作为测试数据

C.在完成编码后制订软件的测试计划 D.选择发现错误可能性大的数据作为测试数据

39、软件维护是指( C )

A维护软件的正常进行 B.软件的配置更新

C.对软件的改进、适应和完善 D.软件开发期的一个阶段

40、下列哪一项不是软件危机的表现形式?( D )

A.软件需求定义不明确,易偏离用户需求

B.软件生产高成本,价格昂贵

C.软件的可维护性差

D.系统软件与应用软件的联系越来越困难

41、数据流图是描绘信息在软件系统中流动和处理情况的图形工具,下列哪一个图形符号代表数据存储?( D )

A.箭头 B.圆框 C.直线 D.开口方框

42、软件设计中,可应用于详细设计的工具有 ( A )

A.程序流程图、PAD图、N-S图和伪码 B.数据流程图、PAD图、结构图和伪码

C.业务流程图、N-S图和伪码 D.数据流程图、PAD图、N-S图和伪码

43、程序流程图是一种传统的程序设计表示工具,有其优点和缺点,使用该工具时应注意( C

A支持逐步求精 B考虑控制流程 C.遵守结构化程序设计原则 D.数据结构表示

44、在软件的结构化设计(SD)方法中,一般分为总体设计和详细设计两个阶段,其中总体设计主要是建立( A )

A.软件结构 B.软件流程 C.软件模型 D.软件

45、瀑布模型把软件生存周期划分为软件定义、软件开发与(C )三个阶段,而每个阶段又可分为若干更小的阶段。

A.详细设计阶段 B.可行性研究阶段 C.运行及维护 D.问题定义

46、软件工程的结构化生命周期方法中将软件生命周期分为若干阶段,软件详细设计是属于( B )阶段。

A.计划阶段 B.开发阶段 C.运行阶段 D.维护阶段

47、在软件的分析阶段,常用( C )来描述业务处理系统的信息来源、存储、处理和去向。

A.E-R图 B.框图 C.DFD D.时序网络

48、与设计测试数据无关的文档是( D )

A.需求说明书 B.设计说明书 C.源程序 D.项目开发设计

49、模块的内聚是从功能的角度来度量模块内的联系,内聚度最强的是( B

A.通信内聚 B.功能内聚 C.顺序内聚 D.逻辑内容

50、结构化分析方法以数据流图、( D )和加工说明等描述工具,即用直观的图和简洁的语言来描述软件系统模型。

A.DFD图 B.PAD图 C.IPO图 D.数据字典

51、在软件工程中,高质量的文档标准是完整性、一致性和( C )

A.统一性 B.安全性 C无二义性 D.组合性

52、结构图中,带有注释的小箭头表示( B )

A.模块 B.调用 C.数据 D.模块间判断

53、下列叙述中不是关于有利于软件可维护性的描述是( C )

A.在进行需求分析时应考虑维护问题

B.使用维护工具和支撑环境

C.在进行总体设计时,应加强模块之间的联系

D.重视程序结构的设计,使程序具有较好的层次结构

54、软件设计包括总体设计和详细设计两部分,下列陈述中哪个是详细设计的内容?( B

A软件结构 B模块算法 C制定测试计划 D数据库设计

55、由事务型数据流图映射为软件结构的设计首先应设计一个( A ),它有两个功能,接收事务数据,另一个是根据事务类型调度相应的处理模块。

总控模块 B事务中心 C变换中心 D接收分支

56、软件设计中,设计复审是和设计本身一样重要的环节,其主要目的和作用是( )

A.减少测试工作量 B.避免后期付出高代价

C.保证软件质量 D.缩短软件开发周期

57、软件工程的结构化生命周期方法是将软件开发的全过程划分为相互独立而又相互依存的阶段,软件的逻辑模型形成于( C )

A.开发阶段 B.计划阶段

C.分析阶段 D.设计阶段

58、( B )是指信息沿输入通路进入系统,同时由外部形式变换成内部形式,进入系统的信息通过变换中心,经加工处理后再沿输出通路变换成外部形式离开软件系统。

A.数据流 B.变换流 C.事务流 D.数据结构

59、数据流图中,下列哪一种数据流的流向是不可能发生的?( B )

A.从加工流向加工 B.从数据存储流向外部实体

C.从加工流向外部实体 D.从外部实体流向加工

60、确定每一个模块使用的数据结构属于软件设计的哪 一个阶段?( D

A总体设计 B需求分析 C编程调试 D详细设计

61.概要设计的结果是提供一份__ A __。

A.模块说明书 B。框图 C 程序 D 数据结构

62.需求分析是由分析员了解用户的要求,认真细致地调研。分析,最终应建立目标系统的逻辑模型并写出(B)。

A.模块说明书 B。 软件规格说明书 C。项目开发计划 D。合同文档

63.变换型和事务型是程序结构的标准形式。从某处获得数据,再对这些数据作处理,然后将结果送出是属于____。

A.变换型 B 事务型

64.PAD(Problem Analysis Diagram)图是一种B工具。

A.系统描述 B。详细设计 C。测试 D。编程辅助

65.分析员是____。

A. 用户中系统的直接使用者B.用户和软件人员的中间人

C.软件的编程人员 D。用户和软件人员的领导

66.在软件开发中,有利于发挥集体智慧的一种做法是____。

A. 设计评审B.模块化C.主程序员制D。进度控制

67.在开发软件时,____可用来提高程序员的工作效率。

A.程序开发环境 B.操作系统的作业管理功能

C.编译程序的优化功能 D。并行运算的大型计算机

68.软件测试中设计测试实例(test case)主要由输入数据和____两部分组成。

A. 测试规则 B.测试计划

C.预期输出结果 D.以往测试记录分析

69.结构化程序设计主要强调程序的____。

A. 效率 B.速度 C.可读性 D.大小

70.开发软件需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称作____。

A.软件投机 B.软件危机 C.软件工程 D.软件产生

71.成功的测试是指______。

A.运行测试实例后未发现错误项 B.发现程序的错误

C.证明程序正确 D.改正程序的错误

72.系统开发的需求分析阶段的重要工作之一是____。

A.数据定义 B.数据库设计 C.数据维护 D.数据结构实现

73.文档是软件开发人员.维护人员.用户以及计算机之间的____, 软件开发人员在各个阶段以文档作为前段工作成果的_____和后段工作的_____。

A. 接口 B.桥梁 C.科学 D.继续 E.体现 F.基础

74.单独测试一个模块时,有时需要一个_____程序调用被测试的模块.有时还要有一个或几个_____模块模拟由被测试模块调用的模块 。

1.A.理解 B.驱动 C.管理 D.传递

2.A.子(Sub) B.仿真(Initation) C.栈(Ssack) D.桩(Ssub)

75.在结构化程序设计思想提出以前,在程序设计中曾强调程序的____。现在,与程序的____相比,人们更重视程序的____。

A。安全性B。专用性C。一致性D。合理性 E。可理解性F。效率

76.软件测试中,白箱方法是通过分析程序的____ 来设计测试实例的方法,除了测试程序外,还适用于对____阶段的软件文档进行测试。黑箱方法是根据程序的__ __来设计测试实例的方法,除了测试程序外,它适用于____阶段的软件文档进行测试。

A.应用范围 B.内部逻辑 C.功能 D.输入数据

2、4A.编码 B.软件详细设计 C.软件概要设计 D.需求分析

77.(1)在软件生命期周期中,_____阶段所需工作量最大,约占70%;

(2)结构化分析方法产生的系统说明书由一套____,一本数据字典和一组小说明及补充材料组成;

(3)软件的____一般由两次故障平均间隔时间和故障平均恢复时间来度量;

(4)采用____且编写程序,可提高程序的可移植性;

(5)仅依据规格说明书描述的程序功能来设计测试实例的方法称为____。

1.A.分析B.设计C 编码D 测试 E 维护

2.A.因果B。分层数据流图C PAD图 D 程序流程图

3.A.可维护性 B可靠性 C效率 D互理解性

4.A.机器语言 B宏指令 C汇编语言 D高级语言

5.A.白箱法 B表态分析法 C黑箱法 D人工分析法

78.____是以发现错误为目的的,而____是以定位,分析和改正错误为目的的。

A.测试 B.排错(调试) C.维护 D.开发

79.请按顺序写出软件生命期的几个阶段____,____ ,____,____,____,____。

A.维护 B.测试 C.详细设计 D.概要设计 E.编码 F.需求分析

80.软件的____设计又称为总体设计,其主要任务是建立软件系统的总体结构。

A.概要 B.抽象 C.逻辑 D.规划

81.结构化分析SA是软件开发需求分析阶段所使用的方法,____不是SA所使用的工具。

A.DFD图 B.PAD图 C.结构化英语 D.判定表

82.结构化分析方法以数据流图、____和加工说明等描述工具,即用直观的图和简洁的语言来描述软件系统模型。

A.DFD图 B.PAD图 C.IPO图 D.数据字典

83.在软件研究过程中,CASE是____。

A.指计算机辅助系统工程 B.CAD和CAM技术的发展动力

C.正在实验室用的工具 D.指计算机辅助软件工程

84.软件(结构)设计阶段(概要设计)的文档是____。

A.系统模型说明书 B.程序流程图

C.系统功能说明书 D.模块结构图和说明书

85.逆向工程在软件工程中主要用于____阶段。

A.分析 B.设计 C.编码 D.维护

86.软件工程中,只根据程序的功能说明而不关心程序内部的逻辑结构的测试方法,称为____测试。

A.白盒法 B.灰盒法 C.黑盒法 D.综合法

87.软件的可维护性是指____。

A.软件的可理解程度,程序修改的难易程度

B.软件文档修改的难易程度

C.程序修改的难易程度

D.使用维护工具进行维护的难易程度

88.数据流图的小说明中描述的最基本部分是____。

A.激发条件 B.加工逻辑 C.优先级 D.执行频率

89.系统的健壮性是指____。

A.系统能够正确地完成预期的功能 B.系统能有效地使用计算机资源

C.在有干扰或输入数据不合理等意外情况下,系统仍能进行适当地工作

D.在任何情况下,系统均具有错误自修复功能

90.软件工程学是应用科学理论和工程上的技术指导软件开发的学科,其目的是____。

A.引入新技术提高空间利用率 B.用较少的投资获得高质量的软件

C.缩短研制周期扩大软件功能 D.硬软件结合使系统面向应用

91.不适于作为数据流图处理(加工)框名称的是____。

A.人工校核工资数据 B.工资支票数据

C.打印工资支票 D.计算职工工资

92.某模块的功能是打印录取通知书或不录取通知书,调用模块可通过向此模块传递布尔标志信息决定本次调用哪种通知书的打印,这种模块之间的耦合称为____。

A.数据耦合 B.混合耦合 C.公共耦合 D.控制耦合

93.适应性维护的含义是____所进行的维护。

A.为使软件在改变了的环境下仍能使用

B.为改正在开发时期产生、测试阶段没有发现、运行时出现的错误

C.为改善系统性能、扩充功能

D.为软件的正常执行

94.采用白盒法测试模块(程序),应根据____。

A.内部逻辑结构 B.算法复杂度 C.外部功能特性 D.支撑环境

95.下列关于软件工程方面的叙述中,正确的说法是____。

A.软件的质量标准中,某些因素是不可兼得的

B.数据字典包括数据流、文件、模块调用关系等三种条目

C.测试过程即调试

D.白盒法测试用例中,满足条件覆盖的一定满足判定覆盖

96.程序编写(实现)阶段完成的文档有____。

A.详细设计说明书 B.详细设计说明书、用户手册

C.模块开发宗卷、操作手册 D.用户手册、操作手册

97.软件总体结构的内容应在____文档中阐明。

A.软件需求规格说明书 B.概要设计规格说明书

C.详细设计规格说明书 D.数据要求规格说明书

98.使用结构化分析方法时,采用的基本手段是____。

A.分解和抽象 B.分解和综合 C.归纳与推导 D.试探与回溯

99.决定软件可维护性的主要因素可概括为____。

A.可测试性、可理解性、可修改性 B.一致性、结构性、自我描述性

C.可计测性、可访问性、可通讯性 D.可扩充性、简洁性、结构性

100.要减少两个模块之间的耦合,则必须____。

A.两个模块间的调用次数要少

B.模块间传递的参数要少

C.模块间传递的参数要少且布传递开关型参数

D.模块间传递的参数要少且不传递开关型参数以及两模块不引用同样的全局变量

101.软件开发中系统分析阶段产生的文档是____。

A.数据流图 B.系统说明书 C.模块结构图和模块说明书 D.数据字典

102.初始化模块和结束模块从块内联系看,被称为____模块。

A.过程内聚 B.功能内聚 C.时间内聚 D.逻辑内聚

103.结构化设计方法采用变换分析和事务分析技术实现____。

A.从数据结构导出程序结构 B.从模块结构导出程序结构

C.从模块结构导出数据结构 D.从数据流图导出初始化结构图

104.在软件测试中,确认(验收)测试主要用于发现____阶段的错误。

A.软件计划 B.需求分析 C.软件设计 D.编码

105.结构化系统分析主要是通过____进行分析的。

A.算法分解 B.控制结构分解 C.数据结构分解 D.处理功能分解

106.结构化设计方法是面向____的设计方法。

A.过程 B.对象 C.数据流 D.数据结构

107.划分软件生存周期的阶段时所应遵循的基本原则是_____

A、各阶段的任务尽可能相关性 B、各阶段的任务尽可能相对独立

C、各阶段的任务在时间上连续 D、各阶段的任务在时间上相对独立

108.OOA模型规定了一组对象如何协同才能完成软件系统所指定的工作。这种协同在模型中是以表明对象通信方式的一组_____连接来表示的。

A、消息 B、记录 C、数据 D、属性

109.用黑盒法设计测试用例时采用的方法包括______

A、判定覆盖法 B、条件覆盖法 C 、因果图法 D、路径分析法

110.软件维护过程中,______将会引起维护副作用。

A、修改代码或数据后未作测试 B、进行改正性维护时错误未全部改正

C、进行完善性、适应性或预防性维护时考虑因素不全面

D、维护过程中发生系统运行错误

111.下面所列的性质中,_____不属于面向对象程序设计的特性。

A、继承性 B、重用性 C、封装性 D、可视化

112.一般来说,在管理软件中,软件生存周期各个阶段的工作量以______所占的比例最大。

A、需求分析与设计阶段 B、编码实现阶段 C、测试阶段 D、维护阶段

113.系统开发人员使用系统流程图或其他工具描述系统,估计每种方案的成本和效益的工作是在______阶段进行的。

A、需求分析 B、总体设计 C、详细设计 D、编码阶段

114.结构化设计方法采用变换分析和事务分析技术实现______

A、从数据结构导出程序结构 B、从数据流图导出初始结构图

C、从模块结构导出数据结构 D、从模块结构导程序结构

115.设一模块内部的处理动作为:成分A的输出是成分B的输入,则该模块的聚合性称为______

A、顺序内聚 B、功能内聚 C、过程内聚 D、通信内聚

116.某个模块的作用域是指______

A、被该模块调用的所用模块 B、调用该模块的所有模块

C、与该模块相关联的所有模块 D、受该模块内的判定所影响的所有模块

117.在软件测试中,确认(验收)测试主要用于发现______阶段的错误。

A、软件计划 C、需求分析 B、软件设计 D、编码

118.如果按用户要求增加新功能或修改已有的功能而进行的维护工作,称为_____

A、完善性维护 B、适应性维护 C、预防性维护 D、改正性维护

119.软件维护阶段是软件生存周期中持续时间最长的阶段,它从______时算起。

A、产生可执行程序 B组装测试通过

C、软件交付使用 D、用户提出第一份维护报告

120.下面_____不属于结构化设计需解决的问题范围。

A、确定系统应由哪些系统和模块组成 B、模块什么方式联结,接口如何

C、如何编写结构程序 D、如何以恰当方式表达系统的软件结构

121.下列耦合度表示中,最弱的耦合形式是______

A、特征耦合 B、公共耦合 C、数据耦合 D、数据结构

122.在结构化系统分析中,判定表和判定树常用于表达数据流图中的_____

A、加工 B、数据流 C、数据存储 D、外部项

123.用由底向上渐增式方式对软件进行测试时,需要为每个模块准备一个_____ ,它的作用是调用被测的模块。

A、主模块 B、桩模块 C、驱动模块 D、输入模块

124.全局数据结构的错误通常在______中检查。

A、单元测试 B、有效性测试 C、集成(系统)测试 D、确认测试

125.现有一个计算类型的程序,它的输入只有一个Y,其范围是—50≤Y≤50。现从输入的角度考虑设计了一组测试用例:—100,100,0。设计这组测试用例的方法是_____

A、条件覆盖法 B、等价类划分法 C、边界值分析法 D 、错误推测法

126.为软件系统今后改进和发展打好基础而进行的维护工作称为______

A、改正性维护 B、适应性维护 C、完善性维护 D、预防性维护

127.下列系统设计工具中,______不属于详细设计工具。

A、N—S图 B、数据流图 C、程序流程图 D、PAD

128.软件生存周期中,运行期的主要任务_____

A、软件开发 B、软件维护 C、版本更换 D、功能扩充

129.系统开发的需求分析阶段的重要工作之一是______

A、数据定义 B、数据库设计 C、数据维护 D、数据结构实现

二、填空题

1、 在结构化分析中,_____________用于详细地定义数据流图中的成分。(数据字典)

2、 耦合性和内聚性是衡量_________________的两个定性的标准。(模块独立性

3、 提高程序的可理解、可修改、可测试的程度,就意味着增强软件件的___________(可维护性)

4、 从数据流图导出初始模块结构图,主要是通过_____________两项技术。(变换和事务)

5、 结构化程序设计是一种程序设计技术,它采用________________的设计方法和顺序、选择、循环三种基本控制结构构造常态程序。(自顶向下、逐步求精)

6、 结构化分析方法中,数据流图的四种基本成分为:加工、源点或终点__________(数据流和文件)

7、 从模块内外的联系来看,结构化设计的要求是____________________(模块内联系大、模块间联系小)

8、 在需求分析中,可从有关问题的简述中提取组成数据流图的基本成分。通常问题简述中的动词短语将成为数据流图中的_______________成分。(加工)或处理

9、 如果两模块间的通信信息是若干个参数,而每个参数是单一的数据项,则称这种耦合性为_____________耦合。(数据)

10、 如果按用户要求增加新功能或个性已有的功能而进行的维护工作,称为(完善性维护)

11、 在系统设计时,当数据流图中数据的流动路径几乎是线性时,应采用______________策略设计系统结构图。(变换中心)

12、 由底向上渐增式是在测试层次结构的大型软件时常用的一种方法。用由底向上渐增式方法对软件进行测试时,需要为每个模块准备一个__________________,它的作用是调用被测的模块。(驱动模块)

13、 现有一个计算类型的程序,它的输入只有一个Y,其范围是—50≤Y≤50。现采用黑盒法进行测试,设计了一组测试用例:—100,100,0。设计这组测试用例的方法是___________________。(等价类划分法)

14、 现有一种软件开发方法,它将软件开发过程分成以下阶段:需求分析、原型开发和评价、系统设计和系统实现。这种软件开发方法称为____________________ (原型法)

15、 如果某个程序的输入数据的可能值划分为n个合理等价类、m个不合理等价类,这些等价类均为数轴上的一个有限范围,则采用边缘值测试方法至少需要_________个测试用例。(2(m+n))

16、 模块内部的算法设计在结构化方法的___________________阶段进行。(详细设计)

17、 在数据流图中,用以表示软件系统之外的人员、设备等外部实体的基本成分(元素)称为___________________(外部项)

18、 一个模块直接用另一个模块内部的代码和数据的模块间接的耦合方式称为______________耦合。(内容)

19、 _____________测试解决的主要问题是模块间接口和连接的测试。(集成)

20、 一般来说,在管理软件中,软件生存周期各个阶段的工作量以________________阶段所占的比例最大。(维护)

21、 定性度量模块独立性的两个标准是内聚性和__________________。(耦合性)

22、 改正性维护中,根据文档是提供的测试用例,重新对修改部分进行的测试称为_______测试。(回归)

23、 在模块结构图中,直接调用某一模块的其他模块数称为该模块的________________(扇入数)

24、 __________________测试中,主要测试详细设计和编码实现阶段中的错误。(单元)

25、 软件能被理解、被修改、被测试的易难程度称为_____________性。(可维护)

26、 选择足够的测算数据,使得判定中的每个条件获得各种可能的值的测试用例产生的方法称为___________________覆盖。(条件)

27、 如果一个软件系统完成从卡片机上读入一叠卡片,检查卡片的信息是否合理,然后对旧文件进行修改,产生一个修改过的新文件,并被修改的记录打印成一份报告。对此系统的数据流图,应采用_________________设计策略,导出模块结构。(变换流)

28、 若模块内的各处理元素都在同一时间间隔内执行完成,这种模块内元素间的联系称为__________________内聚。(时间)

三、名词解释

1、软件:在计算机系统中,与硬件相互依存的逻辑部件,它由程序、数据及相关文档组成。

2、软件工程:是指导计算机软件开发和维护的工程学科。采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来。

3、数据字典:是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。

4、模块化:是把程序划分成若干个模块,每个模块完成一个子功能,把这些模块集总起来组成一个整体,可能完成指定的功能满足问题的需求。

5、类:对具有相同数据和相同操作的一组相似对象的定义。

6、软件危机: 是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。

7、软件维护:在软件已经交付使用之后,为了改正错误或满足新的需要而修改软件的过程.

8、继承:子类自动地共享基类中定义的数据和方法的机制.

9、投资回收期: 就是使累计的经济效果等于最初投资的需要的时间。

10、结构化分析方法: 就是面向数据流自顶向下逐步求精进行需求分析的方法。

11、软件的生命周期:一个软件从定义、开发、使用和维护,直到最终被废弃所经历的一系列时期。

12、投资回收期:就是使累计的经济效果等于最初投资的需要的时间。

13、结构化分析方法:就是面向数据流自顶向下逐步求精进行需求分析的方法。

14、模块:数据说明、可执行语句等程序对象的集合,它是单独命名的而且可通过名字来访问。

15、宽度:是软件结构内同一个层次上的模块总数的最大值。

16、事务流:数据沿输入通路到达一个处理,这个处理根据输入数据的类型在若干个动作序列中选出一个来执行。这类数据流应该划分为一类特殊的数据流,称为事务流。

17、耦合:衡量不同模块彼此间互相依赖的紧密程度。

18、事件:是某个特定时刻所发生的事情,它是对引起对象从一种状态转换到另一种状态的现实世界中的事件的抽象。

19、函数重载:指在同一作用域内的若干个参数特征不同的函数可以使用相同的函数名字。

20、存根模块:用以模拟被测模块运行过程中所调用模块或是被测模块下层模块的替代程序。

21、变换流:信息沿输入通呼进入系统,同时由外部形式变换成内部形式,进入系统的信息通过变换中心,经加工处理以后再沿输出通路变换成外部形式离开软件系统,当数据流图具有这些特征时,这种信息流就叫变换流。

22、内聚:衡量一个模块内部各个元素彼此结合的紧密程度

23、扇出:是一个模块直接控制的模块数目。

24、多态性:子类对象可以像父类对象那样使用,同样的消息既可以发送给父类对象也可以发送给子类对象。

25、驱动模块:用以模拟被测模块的上级调用模埠,或向被测模块输以数据输出一些必要信息,调用被测模块。

四、简答题

1、软件生命周期分为哪三个时期?每一时期所完成的基本任务是什么?

2、简述需求分析阶段的具体任务有哪些?

3、什么是结构化程序设计?结构化程序设计采用几种控制结构?

4、程序设计语言的特点?

5、软件测试的基本任务是什么?测试与调试的区别是什么?

6、管理复审与技术审查的任务是什么?

7、可行性研究的步骤?

8、从哪些方面验证软件需求的正确性?

9、对象的特点?

10、用面向对象方法开发软件时,通常需要建立哪三种形式的模型?

11、什么是模块的作用域?什么是模块的控制域?

12、简述两种不同集成测试策略的比较?

13、什么是类?类与对象间是什么关系?

14、面向对象方法特征有哪些?

15、可行性研究的目的?应该从哪些方面研究目标系统的可行性?

16、什么是软件工程?构成软件工程的要素是什么?

17、简述软件测试的步骤?

18、对象有哪几种定义?

19、类—&—对象间的关系可以概括为哪三种?

20、简述渐增模型的特点?

21、总体设计的过程如何?

22、有几种效益的分析方法?

23、面向对象方法的主要优点有哪些?

答案

1、答:软件定义时期,开发时期,维护时期。

定义时期的任务:问题定义;可行性研究;需求分析。

开发时期的任务:总体设计;详细设计;编码与单元测试;综合测试。

维护时期的任务:使软件持久地满足用户的需要。

2、答:软件定义时期,开发时期,维护时期。

定义时期的任务:问题定义;可行性研究;需求分析。

开发时期的任务:总体设计;详细设计;编码与单元测试;综合测试。

维护时期的任务:使软件持久地满足用户的需要。

3、答:结构程序设计:是一种设计程序的技术,它采用自顶向下逐步求精的设计方法和单入口单出口的控制结构。顺序,选择,循环。

4、答:1、名字说明 2、类型说明 3、初始化 4、程序对象的局部性 5、程序模块

6、循环控制结构 7、分支控制结构 8、异常处理 9、独立编译

5、答:任务是在软件投入生产性运行之前,尽可能多地发现软件中的错误。

与测试的区别:测试是为了发现软件中的错误,而调试是诊断并改正错误。

6、管理复审:复查各个阶段的经费、开销、成本以及进度,投资回收期前景的展望。

技术审查:对每个阶段进行严格的审查,从而保证了各个阶段技术的正确性,防上错误的积累和复审。

7、答:(1)复查系统规模和目标。 (2)研究目前正在使用的系统。

(3)导出新系统的高层逻辑模型。 (4)重新定义问题。

(5)导出和评价供选择的解法。 (6)推荐行动方针。

(7)草拟开发计划。 (8)书写文档提交审查

8、答:(1)一致性,即所有需求必须是一致的,任何一条需求不能和其他需求互相矛盾。

(2)完整性,需求必须是完整的,规格说明书应该包括用户需要的每一个功能或性能。

(3)现实性,指定的需求应该是用现有的硬件技术和软件技术基本上可以实现的。

(4)有效性,必须证明需求是正确有效的,确实能解决用户面对的问题。

9、对象的特点?

答:(1)以数据为中心。(2)对象是主动的。(3)实现了数据封装。(4)本质上具有并行性。

(5)模块独立性好。

10、答:(1)描述系统数据结构的对象模型。(2)描述系统控制结构的动态模型。(3)描述系统功能的功能模型。

11、答:模块的作用域定义为受该模块内一个判定影响的所有模块的集合。模块的控制域是这个模块本身以及所有直接或间接从属于它的模块的集合。

12、答:自顶向下测试方法主要优点是不需要测试驱动程序,能够在测试阶段的早期实现并验证系统的主要功能,而且能在早期发现上层模块的接口错误。自顶向下测试方法的主要缺点是需要存根程序,可能遇到与此相联系的测试困难,低层关键模块中的错误发现较晚,而且用这种方法在早期不能充分展开人力。自底向上测试言法的优缺点与自顶向下测试方法的优缺点刚好相反。

13、答:类是对具有相同数据和相同操作的一组相似对象的定义。类是对具有相同属性和行为的一个或多个对象的描述,而对象是某个特定类所描述的一个具体对象。

14、答:(1)客观世界是由各种对象组成的。

(2)所有对象都划分成各种对象类,每个对象类都定义了一组数据和一组方法。

(3)按照子类与父类的关系,把若干个对象类组成一个层次结构的系统。

(4)对象彼此之间仅能通过传递消息互相联系。

15、答:用最小的代价在尽可能短的时间内确定问题是否能够解决。

(1)技术可行性 (2)经济可行性 (3)操作可行性  (4)法律可行性

16、答:软件工程:是指导计算机软件开发和维护的工程学科。采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来。要素是:方法、工具、过程。

17、答:(1)模块测试(2)子系统测试(3)系统测试(4)验收测试(5)平行运行

18、答:(1)对象是具有相同状态的一组操作的集合。(2)对象是对属性值和操作的封装。(3)对象::= ID:是对象的标识或名字 MS是对象中的操作集合

DS:是对象的数据结构 MI :是对象受理的消息名集合

19、答:1、归纳关系:它反映了一个类与若干个互不相容的子类之间的分类关系。

2、组合关系:它反映了对象之间的构成关系。

3、关联关系:反映对象之间相互依赖、相互作用的关系。

20、答:(1)在整个开发过程中需求都可能有变化。(2)对应用领域不熟悉。

(3)高风险项目(4)用户完全参与到整个开发过程中。

(5)使用面向对象语言或第四代语言。

21、答:(1)设想供选择的方案。(2)选取合理的方案。

(3)推荐最佳方案。(4)功能分解。(5)设计软件结构。(6)数据库设计。

(7)制定测试计划(8)书写文档(9)审查和复审

22、答:(1)货币的时间价值(2)投资回收期(3)纯收入(4)投资回收率

23、答:(1)与人类习惯的思维方法一致。

(2)稳定性好。(3)可重用性好。(4)可维护性好。

1.为什么要进行软件测试? 软件测试的主要手段有哪几种?

解:· 对一个软件系统,尤其是规模大、复杂性高的大型软件系统,虽经过了分析、设计和编程阶段但仍会存在错误。为了保证软件系统的质量,就要对软件系统进行检验和测试。

· 软件测试的手段有三类:动态检查、静态检查和正确性证明。

2.为什么要进行软件评审? 怎样有效地进行软件评审?

解:· 进行软件评审主要是人工阅读文档或程序,从而发现其中的错误 ,这对软件的成功是绝对必要的。

· 评审组长在评审会举行前1至2周将评审材料(文档或程序)发给评审员,要求各人仔细阅读,评审员阅毕应给评审组长一个书面通知证实已读过所有材料。

3. 软件测试的基本原则是什么?

解:测试阶段应注意的一些基本原则:

1) 测试用例应该由以下两部分组成:

·输入数据。

·预期的输出结果。

2) 不仅要选用合理的输入数据作为测试用例,还应选用不合理的输入数据作为测试用例。

3) 除了检查程序是否做了它应做的工作之外,还应检查程序是否还做了它不应做的事情。

4) 应该长期保留所有的测试用例,直至这个程序系统被废弃不用为止。

4.采用白盒法进行测试时,测试用例覆盖路径的种类有哪几种?它们相互之间是什么关系?

解:· 采用白盒法进行测试时,测试用例覆盖路径的种类有:

Ø 语句覆盖。 Ø 判定覆盖。Ø 条件覆盖。Ø 判定/条件覆盖。Ø 条件组合覆盖。

· 它们相互之间的关系:

Ø“语句覆盖”是很不充分的一种标准。

Ø“判定覆盖”比“语句覆盖”严格,因为如果每个分支都执行过了,则每个语句也就执行过了。

Ø“条件覆盖”比“判定覆盖”强,因为它使一个判定中的每一个条件都取到了两个不同的结果,而判定覆盖则不保证这一点。

Ø 满足“条件组合覆盖”的测试用例是一定满足“判定覆盖”、“条件覆盖”和“判定/条件覆盖”的。

5.采用黑盒法进行测试时,怎样设计测试用例?

解:采用黑盒法进行测试时,它不关心程序内部的逻辑,而只是根据程序的功能说明来设计测试用例。

6.某城市电话号码组成规则是:地区码 + 前缀 + 后缀。

地区码:空白 | 3位数字;

前缀:非0或者1开头的3 位数字;

后缀:4位数字。

被测试程序模块接受符合以上条件的电话号码,拒绝所有不符合规定的号码。用等价分类法设计测试方案。

解:第1步:划分等价类:

第2步:设计测试用例:

7.联合测试的模块集成方式有哪几种?系统测试包括哪些方面?

解:· 联合测试的模块集成方式有两种:渐增式和非渐增式。

· 系统测试包括功能测试、容量测试、紧张度测试、使用性测试、安全性测试、性能测试、可靠性测试、恢复测试、文档测试、工序测试。

8.测试计划的内容包括哪些?

解:测试计划一般包括以下内容:  

免费下载 Word文档免费下载: 太原理工大学 软件工程复习题

  • 29.8

    ¥45 每天只需1.0元
    1个月 推荐
  • 9.9

    ¥15
    1天
  • 59.8

    ¥90
    3个月

选择支付方式

  • 微信付款
郑重提醒:支付后,系统自动为您完成注册

请使用微信扫码支付(元)

订单号:
支付后,系统自动为您完成注册
遇到问题请联系 在线客服

常用手机号:
用于找回密码
图片验证码:
看不清?点击更换
短信验证码:
新密码:
 
绑定后可用手机号登录
请不要关闭本页面,支付完成后请点击【支付完成】按钮
遇到问题请联系 在线客服