当前位置:文档之家› 软件工程题库及参考答案

软件工程题库及参考答案

软件工程题库及参考答案
软件工程题库及参考答案

《软件工程》练习测试题库

一、单项选择题

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

()

A.软件工程

B.软件周期

C.软件危机

D.软件产生

2.研究开发所需要的成本和资源是属于可行性研究中的()研究的一方面。

A.技术可行性

B.经济可行性

C.社会可行性

D.法律可行性

3.IDEF0图不反映出系统()

A.系统做什么

B.系统功能如何实现

C.系统由谁来做

D.系统实现的约束条件

4.模块的内聚性最高的是()

A.逻辑内聚

B.时间内聚

C.偶然内聚

D.功能内聚

5.在SD方法中全面指导模块划分的最重要的原则是()

A.程序模块化

B.模块高内聚

C.模块低耦合

D.模块独立性

6.软件详细设计主要采用的方法是()

A.模块设计

B.结构化设计

语言 D.结构化程序设计

7.下列关于JSP方法不正确的说法是()

方法主要用于规模不大的数据处理系统

方法不明确的划分软件概要设计和详细设计的两个阶段

方法适用于输入数据和输出数据之间有对应关系的问题求解

方法根据输入、输出的数据结构,按一定的规则映射成软件的体系结构。因此它只适用于详细设计阶段

8.不适合作为科学工程计算的语言是()

A. Pascal

B. C

C. Fortran

D. Prolog

9.黑盒测试在设计测试用例时,主要需要研究()

A.需求规格说明与概要设计说明

B.详细设计说明

C.项目开发计划

D.概要设计说明与详细设计说明

10.若有一个计算类型的程序,它的输入量只有一个X,其范围是[,],现从输入

的角度考虑一组测试用例:,,,。设计这组测试用例的方法是()

A.条件覆盖法

B.等价分类法

C.边界值分析法

D.错误推测法

11.下列属于维护阶段的文档是()

A.软件规格说明

B.用户操作手册

C.软件问题报告

D.软件测试分析报告

12.快速原型模型的主要特点之一是()

A.开发完毕才见到产品

B.及早提供全部完整的软件产品

C.开发完毕后才见到工作软件

D.及早提供工作软件

13.因计算机硬件和软件环境的变化而做出的修改软件的过程称为()

A.较正性维护

B.适应性维护

C.完善性维护

D.预防性维护

14.类库这种机制是()级别的信息共享。

A.同一类

B.不同类

C.同一应用

D.不同应用

15.只有单重继承的类层次结构是()层次结构。

A.网状型

B.星型

C.树型

D.环型

16.在屏蔽硬件错误的冗错技术中,冗余附加技术有()

A.三模冗余

B.信息冗余

C.冗余备份程序的存储及调用

D.关键程序和数据的冗余存储和调用

17.软件按照设计的要求,在规定时间和条件下达到不出故障,持续运行的要求的

质量特性称为()

A.可用性

B.可靠性

C.正确性

D.完整性

18.下列文档与维护人员有关的有()

A.软件需求说明书

B.项目开发计划

C.概要设计说明书

D.操作手册

19.采用Gantt图表示软件项目进度安排,下列说法中正确的是()

A.能够反映多个任务之间的复杂关系

B.能够直观表示任务之间相互依赖制约关系

C.能够表示哪些任务是关键任务

D.能够表示子任务之间的并行和串行关系

20.下列模型属于成本估算方法的有()

模型模型

度量法 D.时间估算法

21.瀑布模型的关键不足在于()

A. 过于简单

B. 不能适应需求的动态变更

C. 过于灵活

D. 各个阶段需要进行评审

22.在面向对象软件开发方法中,类与类之间主要有以下结构关系()

A. 继承和聚集

B. 继承和一般

C. 聚集和消息传递

D. 继承和方法调用

23.以下哪一项不是软件危机的表现形式()

A. 成本高

B. 生产率低

C. 技术发展快

D. 质量得不到保证

24.以下哪一项不是面向对象的特征()

A. 多态性

B. 继承性

C. 封装性

D. 过程调用

25.面向对象模型主要由以下哪些模型组成()

A. 对象模型、动态模型、功能模型

B. 对象模型、数据模型、功能模型

C. 数据模型、动态模型、功能模型

D. 对象模型、动态模型、数据模型

26.软件可行性研究一般不考虑()

A. 是否有足够的人员和相关的技术来支持系统开发

B. 是否有足够的工具和相关的技术来支持系统开发

C. 待开发软件是否有市场、经济上是否合算

D. 待开发的软件是否会有质量问题

27.软件维护的副作用主要有以下哪几种()

A. 编码副作用、数据副作用、测试副作用

B. 编码副作用、数据副作用、测试副作用

C. 编码副作用、数据副作用、文档副作用

D. 编码副作用、文档副作用、测试副作用

28.软件项目计划一般不包括以下哪项内容()

A. 培训计划

B. 人员安排

C. 进度安排

D. 软件开发标准的选择和制定

29.以下哪一项不属于面向对象的软件开发方法()

A. coad方法

B. booch方法

C. jackson方法

D. omt方法

30.以下哪种测试方法不属于白盒测试技术()

A. 基本路径测试

B. 边界值分析测试

C. 循环覆盖测试

D. 逻辑覆盖测试

31.软件生命周期中所花费用最多的阶段是()

A. 详细设计

B. 软件编码

C. 软件测试

D. 软件维护

32.在软件开发过程中,DFD是面向()分析方法的描述工具。

A. 数据结构

B. 数据流

C. 对象

D. 构件(component)

33.在画分层DFD时,应注意保持()之间的平衡。

A. 父图与子图

B. 同一父图的所有子图

C. 不同父图的所有子图

D. 同一子图的所有直接父图

34.DFD中从系统的输入流到系统的输出流的一连串连续变换形成一种信息流,这

种信息流可分为()两大类。

A. 控制流和变换流

B. 变换流和事务流

C. 事务流和事件流

D. 事件流和控制流

35.通常影响软件易维护性的因素有易理解性、易修改性和()。

A. 易使用性

B. 易恢复性

C. 易替换性

D. 易测试性

36.在软件的开发过程中往往采取各种措施来提高软件的易维护性。如()

有助于提高软件的易修改性。

A. 高效的算法

B. 信息隐蔽原则

C. 增强健壮性

D. 身份认证

37.在软件质量特性中,()是指在规定的一段时间和条件下,与软件维持

其性能水平的能力有关的一组属性。

A. 正确性

B. 准确性

C. 可靠性

D. 易使用性

38.在软件质量特性中,()是指防止对程序及数据的非授权访问的能力。

A. 安全性

B. 适应性

C. 灵活性

D. 容错性

39.软件设计中划分模块的一个准则是()。

A. 低内聚低耦合

B. 低内聚高耦合

C. 高内聚低耦合

D. 高内聚高耦合

40.一个模块内部的内聚种类中()内聚的内聚度最高。

A. 偶然

B. 逻辑

C. 功能

D. 过程

41.OMT是一种对象建模技术,它定义了三种模型,它们分别是()。

A. 对象模型、动态模型、功能模型

B. 静态模型、动态模型、功能模型

C. 对象模型、时序模型、功能模型

D. 对象模型、动态模型、计算模型

42.对象建模技术中,表示瞬时行为上的系统的“控制”特征,通常可用()

来表示。

A. 类图

B. 状态图

C. 对象图

D. 数据流图

43.为了提高软件的可移植性,应注意提高软件的()。

A. 使用方便性

B. 简洁性

C. 可靠性

D. 设备不依赖性

44.可维护性通常包括()。

A. 可用性和可理解性

B. 可修改性、数据独立性和数据一致性

C. 可测试性和稳定性

D. 可理解性、可修改性和可测试性

45.()维护是为了补充软件的功能或提高原有软件的性能而进行的维护活

动。

A. 功能性

B. 扩展性

C. 合法性

D. 完善性

46.()是指系统万一遇到未预料的情况时,能够按照预定的方式做合适的

处理。

A. 可用性

B. 正确性

C. 稳定性

D. 健壮性

47.在设计测试用例时,()是用得最多的一种黑盒测试方法。

A. 等价类划分

B. 边值分析

C. 因果图

D. 判定表

48.在实际应用中,一旦纠正了程序中的错误后,还应选择部分或全部原先已测试过的测试用例,对修改后的程序重新测试,这种测试称为()。

A. 验收测试

B. 强度测试

C. 系统测试

D. 回归测试

49.在软件工程的设计阶段中,()法只提供了重要的设计准则,没有规定出具体的工作步骤。

A. SD

B. Jackson

C. Parnas

D. 以上皆非

50.软件测试的目的是()。

A. 表明软件的正确性

B. 评价软件质量

C. 尽可能发现软件中错误

D. 判定软件是否合格

51.通常,()是在代码编写阶段可进行的测试,它是整个测试工作的基础。

A. 系统测试

B. 安装测试

C. 验收测试

D. 单元测试

52.逻辑覆盖标准主要用于()。

A. 黑盒测试方法

B. 白盒测试方法

C. 灰盒测试方法

D. 软件验证方法

53.逻辑覆盖中最强的覆盖标准是()。

A. 条件覆盖

B. 条件组合覆盖

C. 判定覆盖

D. 语句覆盖

54.软件维护工作越来越收到重视,它的花费常常要占软件生存周期全部花费的()%左右。

A. 10~20

B. 20~40

C. 60~80

D. 90以上

55.为了减少维护工作的困难,可以考虑采取的措施是()。

A. 设法开发出无错的软件

B. 增加维护人员数量

C. 切实加强维护管理,并在开发过程中就采取有利于未来维护的措施

D. 限制修改的范围

56.软件测试是软件质量保证的主要手段之一。“高产”的测试是指()。

A. 用适量的测试用例,说明被测试程序正确无误

B. 用适量的测试用例,说明被测试程序符合相应的要求

C. 用少量的测试用例,发现被测试程序尽可能多的错误

D. 用少量的测试用例,纠正被测试程序尽可能多的错误

57.Jackson结构化程序设计方法主要适用于规模适中的()系统的开发。

A. 数据处理

B. 文字处理

C. 实时控制

D. 科学计算

58.单元测试在试验阶段进行,它所依据的模块功能描述和内部细节以及测试方案应在()阶段完成,目的是发现编程错误。

A. 需求分析

B. 概要设计

C. 详细设计

D. 结构设计

59.使用白盒测试方法时,确定测试数据应根据()和指定的覆盖标准。

A. 程序的内部逻辑

B. 程序的复杂程度

C. 使用说明书

D. 程序功能

60.软件的集成测试工作最好由()承担,以提高集成测试的效果。

A. 该软件的设计人员

B. 该软件开发组的负责人

C. 该软件的编程人员

D. 不属于该软件开发组的软件设计人员

二、名词解释

1、集成测试

2、CASE

3、SA

4、软件工程

5、可互操作性

6、法律可行性研究

7、数据流图

8、需求分析

9、过程抽象

10、模块独立性

11、数据性块间联系

12、判定表

13、事务型数据流图

14、耦合性

15、面向数据设计

16、系统响应时间

17、判定-条件覆盖

18、路径覆盖

19、静态测试

20、α测试

三、判断题

1、螺旋模型是在瀑布模型和增量模型的基础上增加了风险分析活动。

2、数据字典是对数据流图中的数据流,加工、数据存储、数据的源和终点进行详细定义。

3、软件是指用程序设计语言(如PASCAL ,C,VISUAL BASIC 等)编写的程序,软件开发实际上就是编写程序代码。

4、软件模块之间的耦合性越弱越好。

5、过程描述语言可以用于描述软件的系统结构。

6、如果通过软件测试没有发现错误,则说明软件是正确的。

7、快速原型模型可以有效地适应用户需求的动态变化。

8、模块化,信息隐藏,抽象和逐步求精的软件设计原则有助于得到高内聚,低耦合度的软件产品。

9、软件概要设计包括软件系统结构设计以及数据结构和数据库设计。

10、软件定义的基本任务是确定软件系统的工程需求。

11、为支持软件开发、维护、管理而研制的计算机程序系统称为软件工具。

12、软件提交是指把软件提交给用户,必要时还应负责把软件安装到用户环境中。

13、系统规格说明评审完成以后,系统开发可以按照硬件工程、软件工程、数据库工程、人机工程等并行开展工作。

14、—个模块内所有处理元素集中于相同的数据结构,其块内联系属功能性块内联系。

15、流程图不是结构化设计工具。

16、从软件的生存期来看,软件测试只涉及编码阶段,即在编写出每个模块之后所进行的模块测试(又称单元测试),测试者应是该模块的作者。

17、好的测试用例应当是合理的输入条件。

18、软件测试中综合策略的通常做法是用白盒法设计基本的测试方案,再用黑盒法补充一些必要的测试方案。

19、一次性组装方式进行集成测试的思想和增殖式组装方式进行集成测试的思想是一致的。

20、人工测试中走查方法和代码评审方法是同一种方法。

四、简答题

1. 简述软件危机的表现。

2. 软件开发模型可以分为那几类?

3. 采用快速原型技术的步骤是什么?

4. 数据字典的作用是什么?

5.软件工程的原则有哪些?

6. 简述提高可维护性的方法。

7. 在软件工程实践中,形成组合模型的方式有那几种?

8. 软件项目定义阶段的任务是什么?

9. 为什么要采用实体—关系图?

10.简述人机界面风格的演变。

11.设计规格说明包括什么内容?

12.可行性研究的任务是什么?

13.结构化分析方法通过那些步骤来实现?

14.写源程序时的原则是什么?

15.数据输入设计的指导原则是什么?

16.选择程序设计语言的依据是什么?

17.黑盒测试用于发现哪些类型的错误?

18.使用边界值分析方法选择测试用例的原则是什么?

19.简述软件重用的类型。

20.数据规格说明应该遵守的原则是什么。

五、论述题

1.某旅馆的电话服务如下:

可以拨分机号和外线号码。分机号是从7201至7299。外线号码先拨9,然后是市话号码或长话号码。长话号码是以区号和市话号码组成。区号是从100到300中任意的数字串。市话号码是以局号和分局号组成。局号可以是455,466,888,552中任意一个号码。分局号是任意长度为4的数字串。

要求:写出在数据字典中,电话号码的数据条目的定义(即组成)。

2.某报表处理系统要求用户输入处理报表的日期,日期限制在2003年1月至2008年12月,即系统只能对该段期间内的报表进行处理,如日期不在此范围内,则显示输入错误信息。系统日期规定由年、月的6位数字字符组成,前四位代表年,后两位代表月。现要求用黑盒测试法中的边界值法写出测试用例。

3.采用综合测试策略,对以下模块进行测试。要求写出测试方法,列出所有的判定,并给出所选择的用例。模块功能为:使用直接插入法将10 个整数按递增次序排列。

main( ) /* 使用直接插入法

{ int data[ ]={23,56,234,1,45,34,21,394,3,35};

int i, j, temp;

for(i=1;i<10;i++)

{

j=i-1; temp=data[i];

while(data[j]>temp&&j>=0) /*大者后移

{

data[j+1]=data[j]; j--;

}

data[j+1]=temp; /* 插入正确位置

}

for(i=0;i<10;i++)

printf(”%d”,data[i]);

printf(”\n”);

}

4.某校教务系统具备以下功能,输入用户ID号及口令后,经验证进入教务管理系统,可进行如下功能的处理:

查询成绩:查询成绩以及从名次表中得到名次信息。

学籍管理:根据学生总成绩排出名次信息。

成绩处理:处理单科成绩并输入成绩表中。

就以上系统功能画出0层,1层的DFD图。

更多课程资料请到大学课程网学习

《软件工程》测试题库参考答案

二、单项选择题

答案:

1、C

2、B

3、B

4、D

5、D

6、D

7、D

8、D

9、A

10、 C

11、 C

12、 D

13、 B

14、 D

15、 C

16、 D

17、 B

18、 C

19、 D

20、 A

21、 B

22、 A

23、 C

24、 D

25、 A

26、 D

27、 C

28、 D

29、 C

30、 B

31、 D

32、 B

33、 A

34、 B

35、 D

36、 B

37、 C

38、 A

39、 C

40、 C

41、 A

42、 B

43、 D

44、 D

45、 D

46、 D

47、 B

48、 D

49、 C

50、 C

51、 D

52、 B

53、 B

54、 C

55、 C

56、 C

57、 A

58、 C

59、 A

60、 D

三、名词解释

答案:

1、集成测试也称组装测试或联合测试。是指在单元测试的基础上,将所有模块按照设计要求组装成一个完整的系统进行的测试。组装模块的方式有两种:渐增式测试和非渐增式测试。

2、CASE是一组工具和方法的集合,可以辅助软件开发生命周期各阶段进行软件开发。CASE把软件开发技术、软件工具和软件开发方法集成到一个统一而一致的

框架中,并且吸收了CAD(计算机辅助设计)、软件工程、操作系统、数据库、网络和许多其他计算机领域的原理和技术。因而,CASE领域是一个应用、继承和综合的领域。

3、结构化分析方法是需求分析中使用最多的方法之一,适用于数据处理类型软件的需求分析。基本思想是采用自顶向下,逐步分解的方法分析整个系统,有效地控制系统开发的复杂性。

4、软件工程是用工程、科学和数学的原则与方法研制、维护计算机软件的有关技术及管理方法。它由方法、工具和过程三部分组成。

5、多个软件元素相互通信并协同完成任务的能力。为了实现可互操作性,软件开发通常要遵循某种标准,支持这种标准的环境将为软件元素之间的互操作提供便利。

6、计算机系统工程是指与构造基于计算机系统有关的过程、方法和技术。它是一种问题求解活动。

7、研究在系统开发过程中可能涉及的各种合同、侵权、责任以及各种与法律相抵触的问题。

8、数据流图就是用来刻画数据流和转换的信息系统建模技术。

9、需求分析是指开发人员要准确理解用户的要求,进行细致的调查分析,经用户非形式化的需求陈述转化为完整的需求定义,再由需求定义转化到相应的形式功能规约的过程。

10、过程抽象是一个命名的指令序列,它具有一个特定的和受限的功能。

11、每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单。

12、判定表提供了一种把各种动作和条件(在处理解说词中描述的)专换为表格形式的表示法。

13、某个加工将它的输入分离成一串发散的数据流,形成许多活动路径,并根据输入的值选择其中一条路径。具有这样特征的数据流图称为事务型数据流图。

14、是软件系统结构中各模块间相互联系紧密程度的一种度量。也称块间联系。

15、面向数据的设计就是根据数据结构的表示来获取软件表示。

16、系统响应时间指当用户执行了某个控制动作后(例如,按回车键,点击鼠标器等),系统做出反应的时间(指输出所期望的信息或执行对应的动作)。

17、用判定-条件覆盖所设计的测试用例能够使得判断中每个条件的所有可能取值至少执行一次,同时每个判断的所有可能判断结果至少执行一次。

18、路径覆盖就是设计足够的测试用例,覆盖程序中所有可能的路径。

19、是指被测程序不再机器上运行,而是采用人工测试和计算机辅助静态分析的手段对程序进行检测。

20、α测试是由一个用户在开发场所进行的,用户在开发者的“指导”下对软件进行的测试,开发者负责记录错误和使用中出现的问题。

四、判断题

答案:

1、(对)

2、(错)

3、(错)

4、(对)

5、(错)

6、(错)

7、(对)

8、(对)

9、(对)

10、(对)

11、(对)

12、(错)

13、(对)

14、(错)

15、(错)

16、(错)

17、(错)

18、(错)

19、(错)

20、(错)

五、简答题

答案:

1.软件危机有如下表现:

.对软件开发成本和进度的估计不准确;

.对已经完成的软件,用户不满意的现象经常发生;

.软件产品的质量靠不住;

.软件常常不可维护;

.软件通常没有适当文档;

.软件成本在系统中所占比例逐年上升;

.软件生产率低。

2.软件开发模型大体上可分为三种类型。第一种是以软件需求完全确定为前提的瀑布模型。第二种是在软件开发初始阶段只能提供基本需求时采用的渐进式开发模型,如原型模型、螺旋模型等。第三种是以形式化开发方法为基础的变换模型。3.(1)利用本课时及后面将要介绍的各种分析技术、方法,生成一个简化的需求规格说明。

(2)对已经完成的需求规格说明进行检查、修订后,生成设计规格说明。

(3)在现有工具或环境的帮助下快速生成可运行的软件原型并进行测试、改进。

(4)将原型提交用户评估并征询改进意见。

(5)上述过程将反复进行,直到用户完全首肯。

4.利用数据字典可以对数据流图中的数据流、数据源及外部实体进行描述、组织和管理。

5.抽象、信息隐藏、模块化、局部化、一致性、完整性和可验证性。

6.(1)建立明确的软件质量目标

(2)利用先进的软件开发技术和工具

(3)建立明确的质量保证工作

(4)选择可维护的程序设计语言

(5)改进程序文档

7.第一种方式是以一种模型为主,嵌入另外一种或几种模型。第二种方式是建立软件开发的组合模型。软件开发者可以根据软件项目和软件开发环境的特点,选择一条或几条软件开发路径。

8.①制定软件项目规划。

②软件需求分析和定义。

③确定软件性能和资源约束,这对软件设计特性会产生直接的影响。

④为软件要素定义验收标准,它也是制定软件测试计划的基础。

9.在数据密集型应用问题中,对复杂数据之间复杂关系的分析和建模将成为需求分析的重要任务。显然,这项任务是简单的数据字典机制无法胜任的。所以,有必要在数据流分析方法中引进适合于复杂数据建模的实体—关系图。

10.最早,在图形显示、鼠标、高速工作站等技术出现之前,现实可行的界面方式只能是命令和询问方式,通信完全以正文形式并通过用户命令和用户对系统询问的响应来完成。

第二代界面是简单的菜单式。

第三代界面能同时显示不同种类的信息;用户通过下拉式菜单可方便执行控制型和对话型任务;引入图标、下拉式菜单、按钮和滚动杆技术。

最新一代HCI把第三代HCI技术与超文本、多任务概念结合起来,使用户可同时执行多个任务(以用户的观点)。

11.设计说明书的第一节描述与设计活动有关的各个方面,该节中许多信息取自系统规格说明书和系统定义阶段产生的其他文档。第二节具体指明引用信息的出处,第三节的设计描述是概要设计的产物,第四、五两节是概要设汁向详细设计过渡后形成的,第六节是与需求规格说明书的交叉访问表,第七节是测试的初步计划,第八节将逐条说明这种限制和造成的影响,九、十两节包括若干辅助数据。12.可行性研究的任务是了解用户的要求及现实环境,从技术、经济和社会等几个方面研究并论证软件系统的可行性。

13.(1)了解当前系统的工作流程,获得当前系统的物理模型。

(2)抽象出当前系统的逻辑模型。

(3)建立目标系统的逻辑模型。

(4)作进一步的补充和说明。

14.(1)遇处理框,写出其处理的内容。

(2)遇选择框或重复框,则按语言模式写出相应的语句。

15.①尽量减少用户输入的动作;

②保证信息显示方式与数据输入方式的协调一致;

③允许用户定做输入格式;

④采用灵活多样的交互方式,允许用户自选输入方式;

⑤隐藏当前状态下不可选用的命令;

⑧允许用户控制交互过程;

⑦为所有输入动作提供帮助信息;

⑧删除所有无实现意义的输入。

16.(1)应用领域;

(2)算法和计算复杂性;

(3)软件运行环境;

(4)用户需求中关于性能方面的需要;

(5)数据结构的复杂性;

(6)软件开发人员的知识水平;

(7)可用的编译器与交叉编译器。

17.①功能不符合要求或遗漏;

②界面错误;

③数据结构或外部数据库访问错误;

④性能错误;

⑤初始化或终止错误。

18.①如果输入条件规定了值的范围,则应取刚达到这个范围的边界的值,以及刚刚超越这个范围边界的值作为测试输人数据。

②如果输入条件规定了值的个数,则用最大个数、最小个数、比最大个数多1、比最小个数少1的数作为测试数据。

③根据规格说明的每个输出条件,使用原则①。

④根据规格说明的每个输出条件,使用原则②。

⑤如果程序的规格说明给出的输入域或输出域是有序集合(如有序表、顺序文件等),则应选取集合的第一个元素和最后一个元素作为测试用例。

⑥如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构的边界上的值作为测试用例。

⑦分析规格说明,找出其他可能的边界条件。

19.(1)代码重用

代码重用就是对程序库中的某个模块进行子程序调用,它包括源代码的拼接、源代码的拷贝、继承、对目标码的拼接、运行时连接几种形式。这是一种重用性低的重用方法。

(2)设计结果重用

设计结果重用指的是重用某程序的设计模型,例如面向对象设计的模型,这是一种重用性比较高的重用方法。

(3)分析结果重用

分析结果的重用是指对问题空间描述的重用.例如对面向对象分析结果或其他一些分析描述方法结果的重用,这是一种重用性更高的重用方法。

20.(1)用于功能(function)和行为(behaviour)的系统分析原则也应用于数据设计。

(2)应确定所有的数据结构及每项上所进行的操作。

(3)应建立数据字典,用来定义数据和程序设计。

(4)低层的数据设计决策,应在设计过程的后期进行。

(5)数据结构的表达式应当是那些有名的模型。

(6)应当开发数据结构及其操作的实用库。

(7)软件设计和编程语言应当支持抽象数据类型的规格说明和实现。六、应用题

答案:

1、电话号码=分机号|外线号码

分机号=7201 (7299)

外线号码=9+[市话号码|长话号码]

长话号码=区号+市话号码

区号=100 (300)

市话号码=局号+分局号

局号=[455|466|888|552]

分局号=4{数字}4

2、如下表:

3、

(1). 采用综合测试策略,先进行静态测试:人工查走。未发现错误。

(2). 使用白盒法进行动态测试

只考虑关键路径,判定情况有:

循环:for(i=1;i<10;i++)

while(data[j]>temp&&j>=0)

(3). 选择一种覆盖标准,确定用例。

注意:所确定的用例应该包括两部分:输入数据(10个整数),预期的输出结果。

(4). 将实际输出与预期的输出结果进行比较,得出分析结论。

4、

图1 教务系统0层DFD 图

图2 教务系统1层DFD 图

更多课程资料请到大学课程网学习

软件工程试题及答案

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、软件重用的效益是什么?

软件工程试题及答案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、原型化方法是用户和软件开发人员之间进行的一种交互过程,适用于(A )系统。 A需求不确定的B需求确定的C管理信息D决策支持 4、单元测试的测试用例主要根据( D )的结果来设计。 A需求分析B源程序C概要设计D详细设计 5、(A )是软件生存期中的一系列相关软件工程活动的集合,它由软件规格说明、软件设计与开发、软件确认、软件改进等活动组成。 A软件过程B软件工具C软件生存周质量保证D软件工程 6、(A )意味着一个操作在不同的类中可以有不同的实现方式。 A多态性B类的复用C封装 7、软件测试计划开始于需求分析阶段,完成于(D )阶段。 A需求分析B软件设计C软件实现D软件测试 8、在软件生存周期的瀑布模型中一般包括计划、(C )、设计、编码、测试、维护等阶段。 A可行性分析B需求采集C需求分析D问题定义 9. 软件需求分析阶段的测试手段一般采用( C )。 A总结B阶段性报告C需求分析评审D不测试 10. (C )是把对象的属性和操作结合在一起,构成一个独立的对象,其内部信息对外界是隐蔽的,外界只能通过有限的接口与对象发生联系。 A多态性B继承C封装D消息 11. 软件测试是为了(B )而执行程序的过程。 A纠正错误B发现错误C避免错误D证明正确 12. 在结构化分析方法中,(C )表达系统内部数据运动的图形化技术。 A数据字典B实体关系图C数据流图D状态转换图 13. 软件工程的基本要素包括方法、工具和( A )。 A过程B软件系统C硬件环境D人员 14. TURBO PASCAL是(A)软件。

软件工程考试题带答案

一、选择题 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)。

软件工程试题(附答案)

软件工程试题(附答案)

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

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

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

软件工程试题与答案

安徽三联学院2011-2012学年度第一学期 《软件工程》期终考试试卷(A卷) 一、选择题(每小题2分,计20分) 1.请按顺序写出软件生命期的几个阶段__F__,__D__ ,__C__,___E_,__B__,___A_。 A.维护B.测试C.详细设计D.概要设计E.编码F.需求分析 2.一个模块直接控制(调用)的下层模块的数目称为模块的_____B__。 A.扇入数 B、扇出数 C、宽度 D、作用域 3.在进行软件测试时,首先应当进行以下哪项测试,然后再进行组装测试,最后再进行有效性测试 (A) A.单元测试 B.系统测试 C.集成测试D.确认测试 4.一个软件项目是否进行开发的结论是在___B___文档中作出的。 A.软件开发计划B、可行性报告C、需求分析说明书D、测试报告 5.系统开发人员使用系统流程图或其他工具描述系统,估计每种方案的成本和效益的工作是在 (B)阶段进行的。 A.需求分析B.总体设计C.详细设计D.编码阶段 6.CMMI标准的5个级别分别是完成级、管理级、定义级、量化管理级和( C ) A.初始级B.可重复级C.优化级D.过程级 7.PAD(Problem Analysi s Diagram)图是一种____工具。( B) A.系统描述B.详细设计C.测试D.编程辅助 二、填空题(每空格1分,计20分) 1、软件的通俗解释是软件= 程序+ 数据+ 文档资料。 4、系统测试包括的4种类型:恢复测试、安全测试、强度测试和性能测试。 6、统一建模语言(UML)提供的9种图分别是:用例图、类图、对象图、 状态图、顺序图、协作图、活动图、组件图和部署图。 7、软件工程标准的5个级别:国际标准、国家标准、行业标准、企业 规范 和项目规范。 三、名词解释题(每题4分,计20分) 1、软件工程: 软件工程是研究和应用如何以系统性的、规范化的、可定量的过程化方法去开发和维护软件,以及如何把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来。 2、再工程: 软件再工程是指对既存对象系统进行调查,并将其重构为新形式代码的开发过程3.模块化: 模块化是指解决一个复杂问题时自顶向下逐层把系统划分成若干模块的过程,有多种属性,分别反映其内部特性 四、简答题(每题5分,计20分) 1、简述软件工程的基本原理? 1.严格按照软件生命周期计划进行管理.2.坚持进行阶段评审.3.实行严格的产品控制. 4.采用先进的程序设计技术. 5.结果应能清楚的审查.6.开发小组成员应少而精.7.承认不断改进软件工程实践的必要性

《软件工程》试题及参考答案(第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.需求分析说明书不能作为______。

软件工程试题与答案 ()

《软件工程》试卷及答案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。用户和软件人员的领导

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

一、填空题(每空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提出的,它是一种面向()的软件 设计方法。

软件工程试题与答案

《软件工程模拟试题及参考答案》(一) 一、单向选择题(四选一、每小题3分,共18分) 1、面向对象(Object Oriented)方法是将现实世界的事物以对象的方式(B )到计算机世界的方法。 对应 映射 反映 反射 2、盒图也称为(D)或Chapin图。这种表达方式取消了流程线,它强迫程序员以结构化方式思考和解决问题。 流程图 框图 判定表 N-S图 3、面向数据的设计方法就是根据问题的数据结构定义一组映射,把问题的数据结构转换为问题解的(A)结构。 程序 数据 逻辑 物理 4、人机界面的风格大致经过了(B)代的演变。

三 四 五 六 5、以下不属于白盒测试技术的是(D) 逻辑覆盖 基本路径测试 循环覆盖测试 等价类划分 6、为改正软件系统中潜藏的错误而进行的维护活动称为(A)。 纠错性维护 适应性维护 改善性维护 预防性维护 二、填空题(每空2分,共18分) 1.文档—一种数据媒体和其上所记录的(数据)。 2.机器语言、汇编语言:依赖于机器,面向(机器) 3.软件有效性,指软件系统的时间和(空间)效率。 4.软件定义过程可通过软件系统的(可行性研究)和需求分析两个阶段来完成。 5.软件定义的基本任务是确定软件系统的工程(需求),也就是要搞清“做什么”。 6.为了使用户需求逐步精细化、完全化、一致化,通常采用(需求建模技术)。

7.一个软件的深度是指其控制的(层数)。 8.以详细设计说明书为输入,将该输入用某种程序设计语言翻译成计算机可以理解并最终 可运行的代码的过程叫(编码)过程。 9.软件维护是软件生命周期的(最后)一个阶段。 三、判断题(每小题2分,共24分,错误打X、正确打√) 1.缺乏有力的方法学的指导和有效的开发工具的支持,这往往是产生软件危机的原因之 一。(√) 2.一个好的开发人员应具备的素质和能力不包括具有良好的书面和口头表达能力。(X) 3.在用户需求分析时观察用户手工操作过程不是为了模拟手工操作过程,而是为了获取第 一手资料,并从中提取出有价值的需求。(√) 4.快速原型技术的适用于软件产品要求大量的用户交互、或产生大量的可视输出、或设计 一些复杂的算法等场合。(√) 5.流程图也称为程序框图是最常用的一种表示法。(√) 6.面向数据设计方法一般都包括下列任务:确定数据结构特征;用顺序、选择和重复三 种基本形式表示数据等步骤。(√) 7.理想的人机界面应针对具有典型个性的特定的一类用户设计。(√) 8.数据输入的一般准则中包括尽量增加用户输入的动作。(X) 9.用穷举测试是较现实的测试方法。(X) 四、简答题(每小题4分,共20分)

软件工程试题及答案

软件工程 一、选择题 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. 软件生命期各阶段的任务是什么? 答:软件生命期分为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折)。 按照路径覆盖法设计测试用例。

软件工程期末测试题答案版

一、填空题 1、形式化说明技术是指描述系统性质的基于数学的技术。 2、可行性研究的目的是用最小的代价在尽可能短的时间内确定问题是否能够解决。 3、软件过程的输出信息可以分成3类:_计算机程序(源代码和可执行程序),描述计算机程序的文档(供技术人员或用户使用)和_数据(程序内包含或程序外的)。 4、模块独立性可以用两个标准来衡量,分别是____内聚性___ ______和___耦合性_ __________。 5、重载有哪两种形式:_函数重载和__运算符重载。 6、通常有哪几种形式的维护:完善性维护改正性维护预防性维护适应性维护___。 7、软件重用是指同一软件不做修改或稍加改动就多次重复使用。 8、软件可靠性的定义是_软件在规定的时间间隔内,按照软件规格说明书的规定成功运行的概率。 9、软件测试的目的是_在软件投入生产性运行前,尽可能多的发现软件中的错误__。

10、常用的制定进度计划的工具是:Gantt图和工程网络_。 11、喷泉模型的特点是提高软件项目开发效率,节省开发时间,是典型的面向对象的软件过程之一。 12、程序的质量和程序中包含的go to语句的数量成_反比。 二、选择题 1、下面哪个阶段不属于软件开发时期(D) a.详细设计 b.总体设计 c.编码 d.需求分析 2、下面哪种测试不属于黑盒测试(B) a.等价划分 b.控制结构测试 c.错误推测 d. 边界值分 析 3、下面哪些描述是错误的(C) a.模块规模应该适中 b.设计单出口单 入口的模块 c.模块的控制域应该在作用域之内 d.模块功能应 该可以预测 4、软件测试中一个完整的软件配置是( ) a.需求说明书、设计说明书和源代码 b.需求说明书、设计 说明书和测试用例 c.源代码和运行程序 d.调试工具、源代码和运行程序

软件工程考试题含答案

一单项选择 1.软件生命周期一般包括:软件开发期和软件运行期,下述(D )不是软件开发期所应包含的内容。 A需求分析 B 结构设计C程序编制D软件维护 2.软件是一种逻辑产品,它的开发主要是(A )。 A研制B拷贝C再生产D复制 3.以文档作为驱动,适合于软件需求很明确的软件项目的生存周期模型是( C )。 A喷泉模型 B 增量模型C瀑布模型D螺旋模型 4.在软件生存周期中,(B )阶段必须要回答的问题是“要解决的问题是做什么?”。 A详细设计 B 可行性分析和项目开发计划C概要设计D软件测试 5.软件产品与物质产品有很大区别,软件产品是一种(C )产品 A有形 B 消耗C逻辑D文档 6.(C )把瀑布模型和专家系统结合在一起,在开发的各个阶段上都利用相应的专家系统来帮助软件人员完成开发工作。 A 原型模型 B 螺旋模型 C 基于知识的智能模型 D 喷泉模型 7.( B )阶段是为每个模块完成的功能进行具体的描述,要把功能描述转变为精确的、结构化的过程描述。A概要设计 B 详细设计 C 编码 D 测试 8.下列软件开发模型中,适合于那些不能预先确切定义需求的软件系统的开发的模型是( A )。 A 原型模型 B 瀑布模型 C 基于知识的智能模型 D 变换模型 9.下列软件开发模型中,以面向对象的软件开发方法为基础,以用户的需求为动力,以对象来驱动的模型是( C )。 A 原型模型 B 瀑布模型 C 喷泉模型 D 螺旋模型 10.下列软件开发模型中,支持需求不明确,特别是大型软件系统的开发,并支持多种软件开发方法的模型是( D )。 A 原型模型 B 瀑布模型 C 喷泉模型 D 螺旋模型 11.软件特性中,使软件在不同的系统约束条件下,使用户需求得到满足的难易程度称为( C )。 A可修改性B可靠性C可适应性 D 可重用性 12.软件特性中,一个软件能再次用于其他相关应用的程度称为(B )。 A可移植性B可重用性 C 容错性 D 可适应性 13.软件特性中,(A )是指系统具有清晰的结构,能直接反映问题的需求的程度。 A可理解性B可靠性C可适应性 D 可重用性 14.软件特性中,软件产品交付使用后,在实现改正潜伏的错误、改进性能、适应环境变化等方面工作的难易程度称为( B )。 A可理解性 B 可维护性C可适应性 D 可重用性 15.软件特性中,软件从一个计算机系统或环境移植到另一个上去的难易程度指的是( C ). A可理解性B可修改性C可移植性 D 可重用性 16.软件特性中,在给定的时间间隔内,程序成功运行的概率指的是( D )。 A有效性B可适应性C正确性 D 可靠性 17.软件特性中,允许对软件进行修改而不增加其复杂性指的是(A )。 A可修改性B可适应性C可维护性 D 可移植性 18.软件特性中,多个软件元素相互通讯并协同完成任务的能力指的是( B )。 A可理解性B可互操作性C可维护性 D 可追踪性 19.软件特性中,根据软件需求对软件设计、程序进行正向追踪,或根据程序、软件设计对软件需求进行逆向追踪的能力指的是( C )。 A 可理解性 B 可互操作性C可追踪性 D 可维护性

相关主题
文本预览
相关文档 最新文档