搜档网
当前位置:搜档网 › 软件工程复习题(带答案)

软件工程复习题(带答案)

软件工程复习题(带答案)
软件工程复习题(带答案)

软件工程复习题

一、单选题

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属性

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

A.效率

B.速度

C.可读性

D.大小

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

A.黑盒法

B.白盒法

C.灰盒法

D.综合法

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

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

C.数据流图,数据字典

D.系统流程图,程序编码

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

A.分支

B.单人口

C.单出口

D.有规则GOTO

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

A.需求分析

B.可行性研究

C.总体设计

D.问题定义

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

A.总体设计

B.需求分析

C.详细设计

D.编程调试

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

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

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

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

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

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

A.业务流程图、处理说明

B.软件流程图、模块说明

C.数据流程图、数据字典

D.系统流程图、程序编码

22、在软件测试方法中,黑盒测试法和白盒测试法是常用的方法,其中黑盒测试法主

要是用于测试( B )

A.结构合理性

B.软件外部功能

C.程序正确性

D.程序内部逻辑

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

A.数据库设计

B.数据通讯

C.数据定义

D.数据维护

24、软件测试是软件开发过程中重要和不可缺少的阶段,其包含的内容和步骤甚多,

而在测试过程的多种环节中最基础的是(B )

A.集成测试

B.单元测试

C.系统测试

D.验收测试

25、软件工程开发的可行性研究是决定软件项目是否继续开发的关键,而可行性研究

的结论主要相关于(A )

A.软件系统目标

B.软件的可测试性

C.软件的功能

D.软件的质量

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

方法。

A.自顶向下

B.自底向上

C.面向对象

D.基于组件

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

A.信息处理

B.信息存储

C.外部实体

D.系统状态

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

A.系统描述

B.详细设计

C.测试

D.编程辅助

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

A.内容耦合

B.非直接耦合

C.数据耦合

D.控制耦合'

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

A.试验性运行软件

B.发现软件错误

C.证明软件是正确的

D.找出软件中全部错误

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

A.接口描述

B.数据的组织

C.外部文件结构

D.处理过程描述

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

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

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

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

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

33、软件结构中,由一模块直接控制的其他模块数称为( C )

A.深度

B.宽度

C.扇入数

D.扇出数

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

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

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

A.数据流与事务流

B.变换流与事务流

C.信息流与控制流

D.变换流与数据流

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

A.设计人员和用户

B.分析人员和用户

C.分析人员和设计人员

D.编码人员和用户

37、数据字典是对数据定义信息的集合,它所定义的对象都包含于( A ) A数据流图 B.程序框图 C.软件结构 D.方框图

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

A.功能说明

B.数据加工

C.流程描述

D.性能说明

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

A.处理过程

B.模块

C.外部实体

D.内部实体

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

A.总貌

B.细节

C.抽象

D.软件的作用

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

A.随机地选取测试数据

B.取一切可能的输入数据作为测试数据

C.在完成编码后制订软件的测试计划

D.选择发现错误可能性大的数据作为测试数据

51、软件维护是指( C )

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

C.对软件的改进、适应和完善

D.软件开发期的一个阶段

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

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

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

C.软件的可维护性差

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

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

A.箭头

B.圆框

C.直线

D.开口方框

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

A.程序流程图、PAD图、N-S图和伪码

B.数据流程图、PAD图、结构图和伪码

C.业务流程图、N-S图和伪码

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

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

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

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

A.软件结构

B.软件流程

C.软件模型

D.软件

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

A.详细设计阶段

B.可行性研究阶段

C.运行及维护

D.问题定义

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

A.计划阶段

B.开发阶段

C.运行阶段

D.维护阶段

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

A.E-R图

B.框图

C.DFD

D.时序网络

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

A.需求说明书

B.设计说明书

C.源程序

D.项目开发设计

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

(B)

A.通信内聚

B.功能内聚

C.顺序内聚

D.逻辑内容

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

A.DFD图

B.PAD图

C.IPO图

D.数据字典

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

A.统一性

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

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

A.模块

B.调用

C.数据

D.模块间判断

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

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

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

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

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

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

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

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

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

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

A.减少测试工作量

B.避免后期付出高代价

C.保证软件质量

D.缩短软件开发周期

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

A.开发阶段

B.计划阶段

C.分析阶段

D.设计阶段

71、面向数据流的软件设计方法,一般是把数据流图中的数据流划分为

(B )两种

A.数据流与事务流

B.变换流与事务流

C.信息流与控制流

D.变换流与数据流

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

A.数据流

B.变换流

C.事务流

D.数据结构

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

A.从加工流向加工

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

C.从加工流向外部实体

D.从外部实体流向加工

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

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

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

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

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

77、分析员是____。

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

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

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

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

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

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

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

80、软件测试中设计测试实例(test case)主要由输入数据和____两部

分组成。

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

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

81、结构化程序设计主要强调程序的____。

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

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

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

83、成功的测试是指______。

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

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

84、在结构化程序设计思想提出以前,在程序设计中曾强调程序的

____。现在,与程序的____相比,人们更重视程序的____。

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

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

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

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

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

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

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

A.DFD图 B.PAD图 C.结构化英语 D.判定表89、结构化分析方法以数据流图、____和加工说明等描述工具,即用直观的图和简洁的语言来描述软件系统模型。

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

90、在软件研究过程中,CASE是____。

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

C.正在实验室用的工具 D.指计算机辅助软件工程44.软件工程中,只根据程序的功能说明而不关心程序内部的逻辑结构的测试方法,称为____测试。

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

91、软件的可维护性是指____。

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

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

C.程序修改的难易程度

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

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

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

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

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

A、消息

B、记录

C、数据

D、

属性

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

A、继承性

B、重用性

C、封装性

D、可视化

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

A、需求分析

B、总体设计

C、详细设计

D、编

码阶段

96、在面向对象软件方法中,“类”是_______。

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、 若模块内的各处理元素都在同一时间间隔内执行完成,这种

模块内元素间的联系称为__________________内聚。(时

间)

29、 软件危机的事实使人们意识到:计算机要推广使用,其关键

在于_____________技术的革新。(软件开发)

30、 所谓“用户要求”是指软件系统必须满足的______________

和限制。(所有性质)

31、 软件工程技术中,控制复杂性的两个基本手段“分解”和

____________。(抽象)

32、 Jzckcon法的设计原则是:使程序结构同_________________

相对应。(数据结构)

33、 编程的目标是编写出逻辑上正确又易于_______________的程

序。(阅读或理解)

34、 检验是软件开发过程中不可缺少的部分,检验的目的在于

_______。(发现错误并及时改正)

35、 在联合测试时,采用先独立测试每一模块,然后再连到一起

运行,这种方式称为_______联调。(非渐增式)

36、 面向对象的开发,最大的优点是帮助分析者、设计者及用户

清楚地表述 ________,便于互相进行交流通讯。(抽象概

念)

37、 程序评价和测试系统PET的主要功能是支持对FORTRAN程序采

用白盒法测试,可以监视测试的______________ 。(实际覆

盖程度)

三、名词解释

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、假设一家工厂的采购部每天需要一张定货报表,报表按零件编号排序,表中列出所有需要再次定货的零件。对于每个需要再次定货的零件

应该列出下述数据:零件编号,零件名称,定货数据,目前价格,主要供应者,次要供应者。零件入库或出库称为事务,通过放在仓库中的CRT终端把事务报告给定货系统。当某种零件的库存数量少于库存量临界值时就应该再次定货。画出上述定货系统的数据流图?

2、根据统计,软件维护工作量占软件整个生存周期工作量的

10%~70%,这个比例随着时间的退役还在增加,为什么软件维护需要这么大的工作量?

3、某仓库的业务工作流程如下:职工填写领料单,主任审查签名,职工拿单领料,管理员审查单是否有签名,填写是否正确,不正确的退回,正确则给料并修改库存清单,产生定货报表,当某零件的数量低于临界值时,登记信息,下班和前为采购部门采购订单。请画出数据流图表示。

4、计算机技术已不再是单一学科的发展,它是许多相关学科的融合和渗透。举例说明你所熟悉的这方面的技术、方法和应用。

5、某商店派出采购员分赴全国十大城市采购100类畅销产品,共有10

张“采购单”,每张“采购单”中列出这100类产品的采购量,要求汇总成一张总的“进货表”,并计算每类产品的平均价格?(用结构图表示)6、为什么说软件测试是软件开发中不可缺少的重要的环节,但不是软件质量保证的“安全网”?

7、画出下列伪码N—S图。

START

IF p1 THEN

WHILE q DO f

END DO

ELSE IF p2 g

END IF

WHILE p3 DO h

END DO

END IF

STOP

8、测试的具体任务是什么?为什么说调试是软件开发过程中最艰巨的任务?151

9、将下列PAD图转换成N—S图。

10、影响软件维护工作的因素有哪些?并举例说明?

复习题参考答案

三、名词解释

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

软件工程试题及答案

4. 面向对象的分析方法主要是建立三类模型,即( D )。 A) 系统模型、ER模型、应用模型 B) 对象模型、动态模型、应用模型 C) E-R模型、对象模型、功能模型D) 对象模型、动态模型、功能模型 5. 在E-R模型中,包含以下基本成分( )。 A) 数据、对象、实体B) 控制、联系、对象C) 实体、联系、属性 D) 实体、属性、操作 9.若有一个计算类型的程序,它的输入量只有一个X,其范围是[, ],现从输入的角度考虑一组测试用例:, , , . 设计这组测试用例的方法是( c ) A.条件覆盖法 B.等价分类法C.边界值分析法 D.错误推测法 10、详细设计的基本任务是确定每个模块的( d )A.功能B.调用关系C.输入输出数据 D.算法 11.设函数C(X)定义问题X的复杂程序,函数E(X)确定解决问题X需要的工作量(时间)。对于两个问题P1和P2,如果C(P1)>C(P2)显然E(P1)>E(P2),则得出结论E(P1+P2)>E(P1)+E(P2)就是:( a ) A.模块化的根据 B.逐步求精的根据 C.抽象的根据 D.信息隐藏和局部化的根据13.面向数据流的设计方法把( D )映射成软件结构。 A.数据流 B.系统结构 C.控制结构 D.信息流 14.内聚程度最低的是( A.偶然 )内聚A.偶然 B.过程 C.顺序 D.时间 15.确定测试计划是在( D )阶段制定的.A.总体设计 B.详细设计 C.编码 D.测试 16.需求分析的产品是( D ) A.数据流程图案 B.数据字典 C.判定表D.需求规格说明书 17.数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是( C ) A.数据库设计 B.数据通信 C.数据定义 D.数据维护 18.( D )引入了“风险驱动”的思想,适用于大规模的内部开发项目。 A.增量模型 B.喷泉模型 C.原型模型D.螺旋模型 (×)2、系统测试的主要方法是白盒法,主要进行功能测试、性能测试、安全性测试及可靠性等测试。 (×)4、软件需求分析的任务是建立软件模块结构图。 (√)5、尽可能使用高级语言编写程序(×)6、以结构化分析方法建立的系统模型就是数据流图。 (×)7、进行总体设计时加强模块间的联系。(×)8、编码时尽量多用全局变量. (√)9、用CASE环境或程序自动生成工具来自动生成一部分程序.(×)10、软件测试是要发现软件中的所有错误。 1. 软件生命期各阶段的任务是什么答:软件生命期分为7个阶段:1、问题定义:要解决的问题是什么 2、可行性研究:确定问题是否值得解,技术可行性、经济可行性、操作可行性 3、需求分析:系统必须做什么 4、总体设计:系统如何实现,包括系统设计和结构设计 5、详细设计:具体实现设计的系统 6、实现:编码和测试 7、运行维护:保证软件正常运行。 2、软件重用的效益是什么?

软件工程考试复习题--CDIO

《软件工程》期末考试复习训练题 一、选择题 1、软件质量的好坏决定着软件的生命力,一般说来,一个质量好的软件应具备(D)。 A、功能正确、界面友善、占内存少、足够可靠、易于维护 B、功能正确、结构良好、程序短小、足够可靠、易于维护 C、功能正确、界面友善、速度足够、足够可靠、易于维护 D、功能正确、界面友善、程序易读、结构良好、文档齐全 2、黑盒子、白盒子测试法是常采用的测试方法,其中白盒子测试主要用于测试(D )。 A、结构合理性 B、软件功能 C、程序正确性 D、程序内部结构 3、在以下几种耦合中,最低耦合是(C )。 A、数据耦合 B、内容耦合 C、非直接耦合 D、公共耦合 4、面向对象的程序设计方法具有比结构化程序设计方法无比优越性,是因为(B ) A、OO方法具有封装性、动态性、多态性 B、O O方法具有封装性、继承性、多态性 C、O O方法具有封装性、客观性、动态性 D、OO方法具有客观性、动态性、动态性 5、UML中采用(C )表现系统的动态性 A、类图 B、对象图 C、交互图 D、配置图 6、软件工程是一门交叉学科,其研究领域包括(ABD)。 A、软件开发模型与开发方法 B、软件开发环境与工具 C、计算机辅助设计与制造CAD/CAM D、软件工程经济学 7、可行性研究的主要任务是了解客户的要求及现实环境,从技术、经济和社会因素等三方 面研究并论证本软件项目的可行性,编写可行性研究报告,制定( B)。 A、项目总体规划 B、初步项目开发计划 C、需求规格说明书 D、总体解决方案 8、软件系统开发对技术性能的指标要求主要包括:存储容量限制、执行速度、响应时间和 (A)等。 A、吞吐量 B、安全性 C、正确性 D、可靠性 9、需求分析过程负责分析当前系统与目标系统的差别,建立目标系统的() A、物理模型 B、逻辑模型 C、过程模型 D、数据模型 10、问题分析图(PAD)包括的基本控制结构有:顺序结构、选择结构、重复结构和()。 A、并行结构 B、多分支选择型 C、逻辑结构 D、物理结构 11、面向对象分析,就是抽取和整理用户需求并建立问题域精确模型的过程,具体包括对 象模型、动态模型和()三个子模型。 A、过程模型 B、资源模型 C、功能模型 D、交互模型 12、模块内聚度越高,说明模块内各成分彼此结合的程度越() A、松散 B、紧密 C、无法判断 D、相等 13、结构化程序设计的三种基本控制结构是()。 A、过程、子程序和分程序 B、顺序、选择和循环 C、递归、堆栈和队列 D、调用、返回和转移 14、面向对象模型主要由以下哪些模型组成()。 A、对象模型、动态模型、功能模型 B、对象模型、数据模型、功能模型 C、数据模型、动态模型、功能模型 D、对象模型、动态模型、数据模型

软件工程试题及答案34385

软件工程期末试卷(A) 说明:本试卷为04级计算机专业(专升本)软件工程期末试卷,总计100分,时间100分钟 一、选择题:(每题1分,共20分)(将答案写在题号前的()中) ( C )1. 软件是()。 A. 处理对象和处理规则的描述 B. 程序 C. 程序及其文档 D. 计算机系统 ( B )2. 软件需求规格说明的内容不应包括()。 A. 主要功能 B. 算法的详细描述 C. 用户界面及运行环境 D. 软件的性能 ( B )3. 程序的三种基本控制结构是()。 A. 过程、子程序和分程序 B. 顺序、选择和重复 C. 递归、迭代和回溯 D. 调用、返回和转移 ( D) 4. 面向对象的分析方法主要是建立三类模型,即( )。 A) 系统模型、ER模型、应用模型 B) 对象模型、动态模型、应用模型 C) E-R模型、对象模型、功能模型 D) 对象模型、动态模型、功能模型 ( C ) 5. 在E-R模型中,包含以下基本成分( )。 A) 数据、对象、实体 B) 控制、联系、对象 C) 实体、联系、属性 D) 实体、属性、操作 ( A ) 6. 各种软件维护的类型中最重要的是( )。 A) 完善性维护B) 纠错性维护C) 适应性维护D) 预防性维护 ( B ) 7.软件测试的目标是()。 A. 证明软件是正确的 B. 发现错误、降低错误带来的风险 C. 排除软件中所有的错误 D. 与软件调试相同 ( D )8.软件生命周期中所花费用最多的阶段是() A.详细设计 B.软件编码 C.软件测试 D.软件维护 ( C )9.若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0, 1.0],现从输入的角度考虑一组测试用例:-1.001, -1.0, 1.0, 1.001.设计这组测试用例的方法是()A.条件覆盖法 B.等价分类法 C.边界值分析法 D.错误推测法 ( D )10、详细设计的基本任务是确定每个模块的( )设计 A.功能 B.调用关系 C.输入输出数据 D.算法 ( A )11.设函数C(X)定义问题X的复杂程序,函数E(X)确定解决问题X需要的工作量(时间)。对于两个问题P1和P2,如果C(P1)>C(P2)显然E(P1)>E(P2),则得出结论E(P1+P2)>E(P1)+E(P2)就是:() A.模块化的根据B.逐步求精的根据C.抽象的根据D.信息隐藏和局部化的根据 ( D )12.下面几种白箱测试技术,哪种是最强的覆盖准则() A.语句覆盖B.条件覆盖C.判定覆盖D.条件组合覆盖

软件工程试题及答案

软件工程 窗体顶端 1: 92.下面说法哪个不属于设计准则() 1.①提高模块的内聚,降低模块间的耦合 2.②降低模块接口的复杂程度 3.③模块大小要适中 4.④模块要有重用性 2:88.计算机的体系结构对程序设计语言具有() 1.①反作用 2.②促进作用 3.③抑制作用 4.④完善作用 3:79.程序图的作用是() 1.①定性度量软件的复杂程度 2.②定量度量软件的复杂程度 3.③预测软件的质量标准 4.④估计软件中的错误数量 4: 87.下面说法正确的是() 1.①模块的作用域在模块的控制域之内 2.②模块的控制域在模块的作用域之内 3.③模块的作用域和模块的控制域有时相同

4.④模块的作用域和模块的控制域都是一种层次结构5:94.等价类划分属于() 1.①白盒测试 2.②黑盒测试 3.③穷尽测试 4.④系统测试 6:90.软件维护组织包括() 1.①系统维护人员和系统管理人员 2.②系统程序员和硬件维护人员 3.③系统程序员和操作员 4.④打字员和软件工程师 7: 86.可行性研究阶段使用的图形工具是() 1.①DFD图 2.②N-S图 3.③PAD图 4.④Warnier图 8: 85.好的软件结构它的外观形状一般呈() 1.①线性 2.②扇形 3.③椭圆形 4.④层次型

9: 93.变换型结构的数据流呈() 1.①线性形状 2.②辐射状 3.③椭圆形 4.④阶梯形 10:78.结构化程序设计就是要() 1.①保留GOTO语句 2.②取消前转GOTO语句 3.③限制GOTO语句的使用 4.④取消后转GOTO语句 11: 89.若要保证开发出来的软件局部优化,而且能尽早发现设计上的错误,应采用() 1.①自顶向下的开发方法 2.②自底向上的开发方法 3.③渐增式的开发方法 4.④非渐增式的开发方法 12: 软件工程的七条基本原理中有一条是“坚持进行阶段评审”,要这么做的理由有(1 )。 ①大部分错误是在编码之前造成的 ②在软件开发过程中插入阶段评审是为了张弛有度、提高开发效率 ③错误发现得越晚,所付出的修正代价越高 ④为了便于控制开发进度 1.供选择的答案: 1.A. ①② 2.B. ①③

软件工程考试题带答案

一、选择题 1.软件开发瀑布模型中的软件定义时期各个阶段依次是:(B) A) 可行性研究,问题定义,需求分析。 B) 问题定义,可行性研究,需求分析。 C) 可行性研究,需求分析,问题定义。 D) 以上顺序都不对。 2.可行性研究主要从以下几个方面进行研究:(A) A)技术可行性,经济可行性,操作可行性。 B)技术可行性,经济可行性,系统可行性。 C)经济可行性,系统可行性,操作可行性。 D)经济可行性,系统可行性,时间可行性。 3 耦合是对软件不同模块之间互连程度的度量。各种耦合按从强到弱排列如下:(C) A) 内容耦合,控制耦合,数据耦合,公共环境耦合。 B) 内容耦合,控制耦合,公共环境耦合,数据耦合。 C) 内容耦合,公共环境耦合,控制耦合,数据耦合。 D) 控制耦合,内容耦合,数据耦合,公共环境耦合。4.在详细设计阶段所使用到的设计工具是:(A) A) 程序流程图,PAD图,N-S图,HIPO图,判定表,判 定树. B) 数据流程图,Yourdon 图,程序流程图,PAD图, N-S图,HIPO图。 C) 判定表,判定树,PDL,程序流程图,PAD图,N-S 图。 D) 判定表,判定树,数据流程图,系统流程图,程序流程 图,层次图。 5 按照软件工程的原则,模块的作用域和模块的控制域之间的关系是:(A) A)模块的作用域应在模块的控制域之内。 B)模块的控制域应在模块的作用域之内。

C)模块的控制域与模块的作用域互相独立。 D)以上说法都不对。 6在软件生命周期中,能准确确定软件系统的体系结构的功能阶段是(C) A.概要设计 B.详细设计 C.需求分析 D.可行性分析 7下面不是软件工程的3个要素的是(C) A过程 B.方法 C.环境 D.工具 8.下面不属于软件的组成的是(B) A程序 B.记录 C.文档 D.数据 9在瀑布模型中,将软件分为若干个时期,软件项目的可行性研究一般归属于(C) A.维护时期 B.运行时期 C.定义时期 D.开发时期 10.在瀑布模型中,下面(C)是其突出的缺点。 A.不适应平台的变动 B.不适应算法的变动 C.不适应用户需求的变动 D.不适应程序语言的变动 11下面不属于软件的特点的是(D)。 A软件是一种软件产品 B软件产品不会用坏,不存在磨损、消耗问题 C软件产品的生产主要是研制 D软件产品非常便宜 12 软件开发工具是协助开发人员进行软件开发活动所使用的软件或环境。下面不是软件开发工具的是(A)。 A.维护工具 B.编码工具 C.测试工具 D.需求分析工具 13.下列叙述中不属于软件生命周期模型的是(D)。 A.原型模型 B.瀑布模型 C.螺旋模型 D.快速组装模型 14.软件设计中,用抽象和分解的目的是(B)。 A.提高易读性 B.降低复杂性 C.增加内聚性 D.降低耦合性 15软件生命周期中所花费用最多的阶段是(D)。 A.详细设计 B.软件编码 C.概要设计 D.软件测试和维护 16.开发软件时对提高开发人员工作效率至关重要的是(B)。

软件工程复习题库(挂答案)

一、选择题 1、白盒测试法是通过分析程序的(C)来设计测试用例的。 A.应用范围 B.功能 C.内部逻辑 D.输入数据 2、风险预测从两个方面评估风险,即风险发生的可能性以及(D)。 A.风险产生的原因 B.风险监控技术 C.风险能否消除 D.风险发生所产生的后果 3、极限编程(XP)由价值观、原则、实践和行为四部分组成,其中价值观包括沟通、简单性和(C)。 A.好的计划 B.不断的发布 C.反馈和勇气 D.持续集成 4、等价分类法的关键是(C)。 A.确定等价类的边界条件 B.按照用例来确定等价类 C.划分等价类 D.确定系统中相同和不同的部分 5、下列不属于黑盒测试的技术是(A)。 A.程序段或语句的功能 B.模块的接口 C.数据的名称和用途 D.模块的功能 6、为了提高模块的独立性,模块之间最好是(D)耦合。 A.控制耦合 B.公共耦合 C.内容耦合 D.数据耦合 7、一个软件开发过程描述了“谁做”,“做什么”,“怎么做”和“什么时候做”,RUP用(A)来表述“谁做”。 A.角色 B.活动 C.制品 D.工作流 8、功能性注释嵌入在源程序内部,它是用来说明(A)。 A.程序段或语句的功能 B.模块的接口 C.数据的名称和用途 D.模块的功能 9、在结构化分析方法中,数据字典是重要的文档。对加工的描述是数据字典的组成内容之一,常用的加工描述方法有( C )。 A.只有结构化语言 B.有结构化语言和判定树 C.有结构化语言、判定树和判定表 D.有判定树和判定表 10、某银行为了使其网上银行系统能够支持信用卡多币种付款功能而进行扩充升级,这需要对数据类型稍微进行一些改变,这一状况需要对网上银行系统进行( B )维护。 A.正确性 B.适应性 C.完善性 D.预防性 11、软件危机的主要原因是(A)。 A软件本身特点与开发方法B对软件的认识不够 C软件生产能力不足D软件工具落后 12、DFD是常用的进行软件需求分析的图形工具,其基本符号是(C)。 A.输入、输出、外部实体和加工

软件工程试题(附答案)

软件工程试题(附答案)

《软件工程》作业 班级2000(春)计算机本科姓名罗国南学号001000490 成绩____________ 一、判断题 可行性研究的最根本的任务是对以后的行动方针提出建议。√ PDL语言是详细设计的重要工具,可方便地实现程序的自动生成。√ 模块的控制域应该在作用域之内。 面向对象方法把对象作为数据及可以施加在这些数据上的操作所构成的统一体。√ 软件是一种逻辑实体,而不是具体的物理实体。√ 软件测试时经常要输入无效的,不合理的数据进行测试。√ 高级程序设计语言从应用的角度看,可以分为基础语言、结构化语言和专用语言三大类。√

软件维护的前提是不能失去原有软件的基本功能。√ Gantt图可以明确地表示出各子任务之间的依赖与制约关系。× 与其它开发的方法相比较,结构化方法的主要优点之一是对用户需求的变更响应迅速。× 适应性维护的目的是为了适应计算机软、硬件环境的变化。√ 系统流程图可以描述系统的逻辑模型,它的基本思想是用图形符号以黑盒子形式描绘系统里 的每个部件。× 工程网络图可以描绘各子任务作业的工作时间和可以机动(延长)时间。√ 在面向对象方法中,对象是进行处理的主体。√ 调试是在测试出错误之后,找到错误的位置并改正的过程。√

不允许使用GOTO语句是结构程序的特征。× 面向对象技术的最大优点是减少了软件的开发时间。× 用盒图和PAD图设计出来的算法必定是结构化的。√ 逻辑输入数据流是离物理输入端最远,且沿同一输入路径输入的数据流。√ 可行性研究的结果有可能将软件开发项目否定。√ 在面向对象方法学中,使用“对象”不仅需要知道它向外界提供的接口形式,而且必须知道它的内部实现算法。× 传统的流程框图不能用来进行结构化程序设计。× 一个模块执行时,必须引用另一个模块的某些数据,则这个模块的独立性不强。√ 成功的测试是没有发现错误的测试。×

《软件工程》试题及参考答案(第6套)

第一部分选择题 一、单项选择题(本大题共20小题,每小题1分,共20分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。 1、()是软件生存期中的一系列相关软件工程活动的集合,它由软件规格说明、软件设计与开发、软件确认、软件改进等活动组成。 A 软件过程 B 软件工具 C 质量保证 D 软件工程 2、在各种不同的软件需求中,功能需求描述了用户使用产品必须要完成的任务,可以在用例模型或方案脚本中予以说明,()是从各个角度对系统的约束和限制,反映了应用对软件系统质量和特性的额外要求。 A 业务需求 B 功能要求 C 非功能需求 D 用户需求 3、软件测试计划开始于需求分析阶段,完成于()阶段。 A 需求分析 B 软件设计 C 软件实现 D 软件测试 4.下面关于面向对象方法中消息的叙述,不正确的是( )。 A. 键盘、鼠标、通信端口、网络等设备一有变化,就会产生消息 B.操作系统不断向应用程序发送消息,但应用程序不能向操作系统发送消息 C. 应用程序之间可以相互发送消息 D.发送与接收消息的通信机制与传统的子程序调用机制不同 5.美国卡内基—梅隆大学SEI提出的CMM模型将软件过程的成熟度分为5个等级,以下选项中,属于可管理级的特征是( )。 A.工作无序,项目进行过程中经常放弃当初的计划 B.建立了项目级的管理制度 C.建立了企业级的管理制度 D.软件过程中活动的生产率和质量是可度量的 6.在McCall软件质量度量模型中,()属于面向软件产品修改。 A.可靠性B.可重用性C.适应性 D.可移植性 7.软件生命周期中所花费用最多的阶段是() A.详细设计 B.软件编码 C.软件测 试 D.软件维护 8.需求分析阶段的任务是确定() A.软件开发方法 B.软件开发工具 C.软件开发费 D.软件系统的功能

软件工程试题及答案

综合练习一答案 一.选择题: 1.软件危机出现于____,为了解决软件危机,人们提出了用____的原理来设计软件,这是软件工程诞生的基础。 A.50年代末 B.60年代初C.60年代末 D.70年代初 A.运筹学B.工程学 C.软件学 D.软件学 E.数字 2.开发软件需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称作____。 A.软件投机B.软件危机C.软件工程D.软件产生 3.产生软件危机的原因有如下几点,除了______。 A、软件开发过程未经审查 B、软件开发不分阶段,开发人员没有明确的分工 C、所开发的软件,除了程序清单外,没有其他文档 D、采用工程设计的方法开发软件,不符合软件本身的特点 4.软件工程学是应用科学理论和工程上的技术指导软件开发的学科,其目的是____。 A.引入新技术提高空间利用率B.用较少的投资获得高质量的软件 C.缩短研制周期扩大软件功能D.硬软件结合使系统面向应用 5.请按顺序写出软件生命期的几个阶段____,____ ,____,____,____,____。 A.维护 B.测试 C.详细设计 D.概要设计 E.编码 F.需求分析6.瀑布模型把软件生存周期划分为软件定义、软件开发和____三个阶段,而每一阶段又可细分为若干个更小的阶段。 A.详细设计B.可行性分析C.运行及维护D.测试与排错7.划分软件生存周期的阶段时所应遵循的基本原则是_____。 A、各阶段的任务尽可能相关性 B、各阶段的任务尽可能相对独立 C、各阶段的任务在时间上连续 D、各阶段的任务在时间上相对独立 8.一个软件项目是否进行开发的结论是在______文档中作出的。 A、软件开发计划 B、可行性报告 C、需求分析说明书 D、测试报告 9.分析员是____。 A.用户中系统的直接使用者B.用户和软件人员的中间人 C.软件的编程人员 D。用户和软件人员的领导 10.下列叙述中,_______不属于数据字典的作用。 A、作为编码阶段的描述工具 B、为用户与开发人员之间统一认识 C、作为概要设计的依据 D、为需求分析阶段定义各类条目 11.使用结构化分析方法时,采用的基本手段是____。 A.分解和抽象 B.分解和综合C.归纳与推导D.试探与回溯12.结构化系统分析主要是通过____进行分析的。 A.算法分解B.控制结构分解 C.数据结构分解D.处理功能分解13.分层数据流图是一种比较严格又易于理解的描述方式,它的顶层描述了系统的____。 总貌B.细节C.抽象D.软件的作者 13.变换型和事务型是程序结构的标准形式。从某处获得数据,再对这些数据作处理,然后将结果送出是属于____。 A.变换型 B 事务型 14.需求分析说明书不能作为______。

软件工程期末考试复习题-精品

软件工程期末考试复习题-精品 2020-12-12 【关键字】方案、情况、方法、环节、条件、动力、空间、文件、质量、计划、运行、传统、认识、问题、系统、机制、有效、务必、密切、整体、尽早、平衡、合理、良好、合作、沟通、执行、统一、发展、细化、建立、制定、提出、发现、了解、研究、特点、突出、关键、安全、稳定、网络、准则、成果、要素、基础、需要、素质、环境、工程、项目、职能、资源、体系、能力、需求、方式、作用、标准、增量、结构、科学性、任务、反映、速度、关系、分析、提倡、逐步、形成、满足、严格、规划、管理、保证、维护、服务、指导、支持、优化、调整、完善、方向、适应、实现、提高、实施、改进、规范、中心、关心、规范化、有效性、复杂性、重要性 一、选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内,每小题1分) 软件工程 1.软件产品的开发主要是(D )。 A.复制 B.再生产 C.拷贝 D.研制 2.作坊式小团体合作生产方式的时代是(C )时代。 A.程序设计 B.软件生产自动化 C.程序系统 D.软件工程 3.软件工程与计算机科学性质不同,软件工程着重于( C )。 A.理论研究 B.原理探讨 C.建造软件系统 D.原理的理论 4.与计算机科学的理论研究不同,软件工程是一门( C )学科。 A.理论性 B.原理性 C.工程性 D.心理性 5.软件工程的出现主要是由于( C )。 A.程序设计方法学的影响 B.其它工程科学的影响 C. 软件危机的出现 D.计算机的发展 6.在软件工程项目中,不随参与人数的增加而使软件的生产率增加的主要问题是( D ) A、工作阶段间的等待时间 B、生产原型的复杂性 C、参与人员所需的工作站数 D、参与人员之间的通信困难 7.软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实施的主 要保证是(C ) A、硬件环境 B、软件开发的环境 C、软件开发工具和软件开发的环境 D、开发人员的素质 8、下列不属于软件工程方法学三要素的是( D ): A、方法 B、工具 C、过程 D、操作 周期 1.将每个模块的控制结构转换成计算机可接受的程序代码是(A )阶段的任务。 A.编码 B.需求分析 C.详细设计 D.测试 2.可行性研究的目的是决定( B )。 A.开发项目 B.项目值得开发否 C.规划项目 D.维护项目 3.据国家标准GB8566-8计算机软件开发的规定,软件的开发和维护划分为八个阶段,其中 组装测试的计划是在( C )阶段完成的?

软件工程试题与答案 ()

《软件工程》试卷及答案A卷 专业年级姓名得分 一、名词解释(每个2分,共10分) 1.软件危机 2.纯收入 3.模块 4.原型 5.BROOKS定律 二、填空题(每题2分,共20分) 1.____是计算机程序及其说明程序的各种文档。_____是有关计算机程序功能、设计、编制、使用的文字或图形资料。 2.软件生存周期是指一个软件从提出开发要求开始直到该软件报废不止的整个时期。通常,软件生存周期包括问题定义、____、____、总体设计、详细设计、____、____、软件维护活动,可以将这些活动以适当方式分配到不同阶段去完成。 3.软件详细设计阶段采用的工具有______。 4.____的目的就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得去开发。 5.模块的耦合性分为四种类型:____、____、____、____。 6.内聚性有七种类型,最强的是____,最弱的是____。 7.结构图的深度指结构图______,结构图宽度指________。 8.集成测试采用的具体方法有--____、______ 9.对于变换型的数据流图,按照软件设计思想,要将一个大型复杂的软件进行分解,要确定数据流图的 ____、逻辑输入、逻辑输出。 10.软件编码阶段要善于积累编程的经验,使得编出的程序____,易于____,从而提高软件质量。 三、选择题(每题2分,共20分) 1.系统定义明确之后,应对系统的可行性进行研究。可行性研究应包括()。 A.软件环境可行性、技术可行性、经济可行性、社会可行性 B.经济可行性、技术可行性、操作可行性 C.经济可行性、社会可行性、系统可行性 D.经济可行性、实用性、社会可行性 2.通过()可以完成数据流图的细化。 A.结构分解 B、功能分解 C、数据分解 D、系统分解 3.模块(),则说明模块的独立性越强。 A.耦合越强 B、扇入数越高 C、耦合越弱 D、扇入数越低 4.模块()定义为受该模块内一个判断影响的所有模块集合。 A.控制域 B、作用域 C、宽度 D、接口 5.面向数据结构的设计方法(Jackson方法)是进行()的形式化的方法。 A.系统设计 B、详细设计 C、软件设计 D、编码

软件工程试题库集及答案

综合练习一答案 选择题: 1.软件危机出现于____,为了解决软件危机,人们提出了用____的原理来设计软件,这是软件工程诞生的基础。 A.50年代末B.60年代初C.60年代末D.70年代初 A.运筹学B.工程学C.软件学D.软件学E.数字2.开发软件需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称作____。 A.软件投机B.软件危机C.软件工程D.软件产生 3.产生软件危机的原因有如下几点,除了______。 A、软件开发过程未经审查 B、软件开发不分阶段,开发人员没有明确的分工 C、所开发的软件,除了程序清单外,没有其他文档 D、采用工程设计的方法开发软件,不符合软件本身的特点 4.软件工程学是应用科学理论和工程上的技术指导软件开发的学科,其目的是____。 A.引入新技术提高空间利用率B.用较少的投资获得高质量的软件 C.缩短研制周期扩大软件功能D.硬软件结合使系统面向应用5.请按顺序写出软件生命期的几个阶段____,____ ,____,____,____,____。 A.维护B.测试C.详细设计D.概要设计E.编码F.需求分析6.瀑布模型把软件生存周期划分为软件定义、软件开发和____三个阶段,而每一阶段又可细分为若干个更小的阶段。 A.详细设计B.可行性分析C.运行及维护D.测试与排错7.划分软件生存周期的阶段时所应遵循的基本原则是_____。 A、各阶段的任务尽可能相关性 B、各阶段的任务尽可能相对独立 C、各阶段的任务在时间上连续 D、各阶段的任务在时间上相对独立 8.一个软件项目是否进行开发的结论是在______文档中作出的。 A、软件开发计划 B、可行性报告 C、需求分析说明书 D、测试报告 9.分析员是____。 A.用户中系统的直接使用者B.用户和软件人员的中间人 C.软件的编程人员D。用户和软件人员的领导

《软件工程》期末考试复习题及参考答案

软件工程复习题 (课程代码252258) 一、填空题(本大题共60小题) 1.数据项是指__不可再分解的___数据单元。 2.软件概要设计的主要任务就是___软件结构的设计___。 3.软件维护的内容包括校正性维持,适应性维护、____完善性维护_____和预防性维护。 4.在建立对象的功能模型时,使用的数据流图中包含有处理、数据流、动作对象和___数 据存储对象___。 5.规定功能的软件,在一定程度上对自身错误的作用(软件错误)具有屏蔽能力,则称此 软件具有容错功能的软件。 6.软件可维护性度量的七个质量特性是可理解性、可测试性、可修改性、可靠性、可移植 性、可使用性和效率。 7.为了便于对照检查,测试用例应由输入数据和预期的输出结果两部分组成。 8.软件结构是以模块为基础而组成的一种控制层次结构。 9.在结构化分析中,用于描述加工逻辑的主要工具有结构化语言、判定表和判定表三种。 10.软件工程是将系统化的、规范的、可定量的方法应用于软件的开发、运行和维护的过程, 它包括方法、工具和过程三个要素。 11.PDL是一种介于___自然语言___和形式化语言之间的半形式化语言。 12.从软件的功能角度划分,协助用户开发软件的工具性软件称为_支撑__软件 13.消除软件结构中高扇入扇出的做法是______增加中间层次的控制模块_____。 14.如果一个软件系统的全部实际加工都由原子模块来完成,而其他所有非原子模块仅仅执 行控制或协调功能,这样的系统就是____完全因子分解_____的系统。 15.软件的可移植性是指当把软件移植到不同的运行环境时,不需改变其__规格___就能照 原样工作的特性。 16.为满足用户对软件提出的新的要求而对软件进行扩充、改进的维护称为____完善性__ 维护。 17.将整个软件划分成若干单独命名和可编址的部分,称之为___模块___。 18.软件需求的____物理视图_____给出处理功能和数据结构的实际表示形式。 19.在面向对象的开发技术中,__类___是一组具有相同数据结构和相同操作的对象的集合。 20.软件不存在磨损和老化问题,但却存在着____退化__问题。 21.软件工程的各个阶段中,________概要设计__________阶段是将软件需求转化为数据结

软件工程考试试题(含答案)

一、填空题(每空1分,共25分) 1.软件生存周期一般可以划分为,问题定义、____________、____________、设计、 编码、测试和____________。 2.基于软件的功能划分,软件可以划分成__________、__________、__________三种。 3.可行性研究,应从、技术可行性、运行可行性、和开 放方案可行性等方面研究。 4.系统流程图是描绘的传统工具。它的基本思想是用图形符号以 描绘系统里面的每个部件。 5.数据流图的基本四种成分:数据输入的源点和数据输出汇点、、 和。 6.结构化分析方法是面向________________进行需求分析的方法。结构化分析方法使 用________________与________________来描述。 7.是自动地共享类、子类和对象中的方法和数据的机制。 8.软件详细设计工具可分为3类,即________________、________________和 ________________。 9.为了在软件开发过程中保证软件的质量,主要采取下述措施:________________、 复查和管理复审、________________。 10.大型软件测试包括、、确认测试和 四个步骤。 1、可行性研究需求分析运行与维护 2、系统软件支撑软件应用软件 3、经济可行性法律可行性 4、物理系统黑盒子形式 5、加工数据流数据存储文件 6、数据流数据流图DFD 数据字典DD 7、继承性 8、图示工具、设计语言表格工具 9、审查测试 10、单元测试集成测试系统测试 二、单项选择题(每小题2分,共20分) 1 2 3 4 5 C C C A C 6 7 8 9 10 D D A C B 1.软件设计中划分模块的一个准则是()。 A、低内聚低耦合 B、低内聚高耦合 C、高内聚低耦合 D、高内聚高耦合 2.Jackson设计方法是由英国的M. Jackson提出的,它是一种面向()的软件 设计方法。

软件工程试题及答案

软件工程 一、选择题 1、软件需求规格说明的内容不包括(B) A、主要功能 B、算法的详细描述 C、用户界面及运行环境 D、软件的性能 2、面向对象的分析方法主要是建立三类模型,即(D) A、系统模型、ER模型、应用模型 B、对象模型、动态模型、应用模型 C、ER模型、对象模型、功能模型 D、对象模型、动态模型、功能模型 3、在ER模型中,包括以下基本成分(C) A、数据、对象、实体 B、控制、联系、对象 C、实体、联系、属性 D、实体、属性、操作 4、各种软件维护的类型中最重要的是(A) A、完善性维护 B、纠错性维护 C、适应性维护 D、预防性维护 5、若有一个计算类型的程序,它的输入量只有一个X,其范围是[-2.0,2.0],现从输入的角度考虑一组测试用列-2.001,-2,20,2.001,设计这组测试用列的方法是(C) A、条件覆盖法 B、等价分类法 C、边界值分析法 D、错误推测法 6、下列白盒测试法,哪种是最强的覆盖准则(D) A、语句覆盖 B、条件覆盖 C、判定覆盖 D、条件组合覆盖 7、确定测试计划是在(A)阶段制定的。 A、总体设计 B、详细设计 C、编码 D、测试 8、数据字典是软件需求分析阶段最重要的工具之一,其最基本的功能是(C) A、数据库设计 B、数据通信 C、数据定义 D、数据维护 9、软件开发当中,抽取和整理用户需求并建立问题域精确模型的过程(D) A、生成期 B、软件意向 C、结构化程序设计 D、面向对象分析 10、以下不属于IT企业当中过程管理和过程改进模型的是(D) A、ISO9001 B、CMMI C、软件企业文化 D、UML 11、适合互联网上编程并可供不同平台运行的面向对象程序设计的语言是(java) 12、软件结构图中,模块之间用直线连接,则表示他们之间存在(A )。 A、调用关系 B、组成关系 C、链接关系 D、顺序执行关系 13、生命周期方法设计软件的过程中,画用例图属于(A)阶段的工作。 A、需求分析 B、概要设计 C、详细设计 D、软件维护 14、PDL属于(B)语言。 A、高级程序设计语言 B、伪码 C、中级程序设计语言 D、低级程序设计语言 15、成功的测试是(发现至今尚未发现的错误) 16、软件开发的瀑布模型典型的刻画了软件生成周期的阶段划分,与其想适应的软件开发方法是(即瀑布模型采用什么样的软件开发方法?)(B)。 A、构建化方法 B、结构化方法 C、面向对象方法 D、快速原型方法 17、软件结构图的形态特征能反应程序重用率的是(C) A、深度 B、宽度 C、扇入 D、扇出 18、维护过程的本质是(D)的过程。 A、修改程序 B、修改文档 C、修改位置 D、压缩的修改软件定义和开发 19、软件危机的表现: 答:由于软件特点和长期以来一直没有发明一种高校的开发方法,导致软件生产效率非常低,交付期一拖再拖,最终交付的软件产品在质量上很难保障。这种现象早在20世纪60年代被定义为“软件危机”。它的具体表现如下:

软件工程期末考试复习题

《软件工程》选择题 一、选择题(在每小题得四个备选答案中,选出一个正确答案,并将正确答案得序号填在题干得括号内,每小题1分) 软件工程 1、软件产品得开发主要就是(D )。 A、复制B、再生产C、拷贝 D、研制 2、作坊式小团体合作生产方式得时代就是(C )时代。 A、程序设计B、软件生产自动化 C、程序系统 D、软件工程3、软件工程与计算机科学性质不同,软件工程着重于(C )。 A、理论研究 B、原理探讨 C、建造软件系统 D、原理得理论 4、与计算机科学得理论研究不同,软件工程就是一门(C)学科。 A、理论性B、原理性C、工程性D、心理性 5、软件工程得出现主要就是由于( C )。 A、程序设计方法学得影响 B、其它工程科学得影响 C、软件危机得出现 D、计算机得发展 6、在软件工程项目中,不随参与人数得增加而使软件得生产率增加得主要问题就是( D ) A、工作阶段间得等待时间 B、生产原型得复杂性 C、参与人员所需得工作站数 D、参与人员之间得通信困难 7、软件工程方法学得目得就是:使软件生产规范化与工程化,而软件工程方法得以实施得 主要保证就是(C ) A、硬件环境 B、软件开发得环境 C、软件开发工具与软件开发得环境D、开发人员得素质 8、下列不属于软件工程方法学三要素得就是( D ): A、方法 B、工具 C、过程 D、操作 周期 1、将每个模块得控制结构转换成计算机可接受得程序代码就是(A )阶段得任务。 A、编码 B、需求分析 C、详细设计 D、测试 2、可行性研究得目得就是决定( B )。 A、开发项目 B、项目值得开发否 C、规划项目 D、维护项目 3、据国家标准GB8566-8计算机软件开发得规定,软件得开发与维护划分为八个阶段,其中组装测试得计划就是在( C )阶段完成得? A、可行性研究与计划 B、需求分析 C、概要设计D、详细设计4、初步用户手册在( B )阶段编写。 A、可行性研究B.需求分析C.软件概要设计D.软件详细设计 5、在软件得可行性研究中,可以从不同得角度对软件得可行性进行研究,其中就是从软件得 功能可行性角度考虑得就是(B ) A、经济可行性 B、技术可行性C、操作可行性D、法律可行性 6、瀑布模型把软件生命周期划分为八个阶段:问题得定义、可行性研究、软件需求分析、系统总体设计、详细设计、编码、测试与运行、维护。八个阶段又可归纳为三个大得阶段:计划阶段、开发阶段与( C )。 A、详细计划 B、可行性分析 C、运行阶段D、测试与排错

软件工程试题及答案

1. 软件生命期各阶段的任务是什么? 答:软件生命期分为7个阶段: 1、问题定义:要解决的问题是什么 2、可行性研究:确定问题是否值得解,技术可行性、经济可行性、操作可行性 3、需求分析:系统必须做什么 4、总体设计:系统如何实现,包括系统设计和结构设计 5、详细设计:具体实现设计的系统 6、实现:编码和测试 7、运行维护:保证软件正常运行。 2、软件重用的效益是什么? 答:1、软件重用可以显著地改善软件的质量和可靠性。 2、软件重用可以极大地提高软件开发的效率。 3、节省软件开发的成本,避免不必要的重复劳动和人力、财力的浪费。 3、自顶而下渐增测试与自底而上渐增测试各有何优、缺点? 答: ①自顶而下渐增测试 优点:不需要测试驱动程序,能够在测试阶段的早期实现并验证系统的主要功能,而且能够尽早发现上层模块的接口错误。 缺点:需要存根程序,底层错误发现较晚。 ②自底而上渐增测试 优点与缺点和自顶而下渐增测试相反。 4 、提高可维护性的方法有哪些? 答:在软件工程的每一阶段都应该努力提高系统的可维护性,在每个阶段结束前

的审查和复审中,应着重对可维护性进行复审。 在需求分析阶段的复审中,应对将来要扩充和修改的部分加以注明。在讨论软件可移植性问题时,要考虑可能要影响软件维护的系统界面。 在软件设计的复审中,因从便于修改、模块化和功能独立的目标出发,评价软件的结构和过程,还应对将来可能修改的部分预先做准备。 在软件代码复审中,应强调编码风格和内部说明这两个影响可维护性的因素。 在软件系统交付使用前的每一测试步骤中都应给出需要进行预防性维护部分的提示。 在完成每项维护工作后,都应对软件维护本身进行仔细认真的复审。 为了从根本上提高软件系统的可维护性,人们正试图通过直接维护软件规格说明来维护软件,同时也在大力发展软件重用技术。 简述软件测试要经过哪几个步骤,每个步骤与什么文档有关。 【解答】 测试过程按 4 个步骤进行,即单元测试(模块测试)、集成测试(子系统测试和系统测试)、确认测试(验收测试)和平行运行。 单元测试集中对用源代码实现的每一个程序单元进行测试,与其相关的文档是单元测试计划和详细设计说明书。 集成测试把已测试过的模块组装起来,主要对与设计相关的软件体系结构的构造进行测试。与其相关的文档是集成测试计划和软件需求说明书。 确认测试则是要检查已实现的软件是否满足了需求规格说明中确定了的各种需求,以及软件配置是否完全、正确。与其相关的文档是确认测试计划和软件需求说明书。 平行运行把已经经过确认的软件纳入实际运行环境中,与其他系统成份组合在一起进行测试。与其相关的文档:用户指南、使用手册等。 36.简述容错技术的四种主要手段,并解释。

软件工程期末考试题及答案

15、31重复 16. 34. 重复

18. 19.

33.

20. 请就以下需求建立用例图、类图 用时序图描述病人病情异常时系统的情况,其他情况从略 在医院的病房里,将病症监视器安置在每个病床,对病人进行监护。监视器将病人的病症信号(组合)实时地传送到中央监护系统进行分析处理。在中心值班室里,值班护士使用中央监护系统对病员的情况进行监控,监护系统实时地将病人的病症信号与标准的病诊信号进行比较分析,当病症出现异常时,系统会立即自动报警,并打印病情报告和更新病历。系统根据医生的要求随时打印病人的病情报告,系统还定期自动更新病历。

21.OOA模型有哪些元素组成? 22. 现在要对一个自动取款机(A TM)密码功能软件进行黑盒测试,该软件的规格说明如下: 插入ATM机有效银行卡,机器界面显示“请输入六位密码”;若密码正确机器显示“查询、取款等功能界面”;若密码错误显示“密码错误”;若密码错误三次机器吞卡;若插入非银行卡或消磁卡机器显示“无效卡,退出”。有效测试卡的密码是112233。 请用等价类和边界值方法设计测试该软件功能的全部测试用例。 25. 假设你的任务是对一个已有的软件做重大修改,而且只允许你从下述文档中选取两份: (a)程序的规格说明;(b)程序的详细设计结果(自然语言描述加上某种设计工具表示);(c)源程序清单(其中有适当数量的注解)。 你将选取哪两份文档?为什么这样选取?你打算怎样完成交给你的任务? 26. 什么是程序设计风格?为了具有良好的设计风格,应注意哪些方面的问题? 27. 软件测试的步骤是什么?这些测试与软件开发各阶段之间的关系? 28. 某商场在“五一”期间,顾客购物时收费有4种情况:普通顾客一次购物累计少于100元,按A类标准收费(不打折),一次购物累计多于或等于100元,按B类标准收费(打9折);会员顾客一次购物累计少于1000元,按C类标准收费(打8折),一次购物累计等于或多于1000元,按D类标准收费(打7折)。 按照路径覆盖法设计测试用例。

相关主题