搜索
您的当前位置:首页正文

软件工程习题

来源:六九路网
.

软件工程习题

一.选择题:

1.为了提高测试的效率,应该_D___。

A.随机地选取测试数据

B.取一切可能的输入数据作为测试数据库 C.在完成编码后制定软件的测试计划

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

2.注释是提高程序可读性的有效手段,好的程序注释占到程序总量的__D__。 A.1/6 B。1/5 C。1/4 D。1/3

3.PAD(Problem Analysis Diagram)图是一种__B__工具。

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

4.分层数据流图是一种比较严格又易于理解的描述方式,它的顶层描述了系统的__A__。

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

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

A. 测试规则 B.测试计划 C.预期输出结果 D.以往测试记录分析

6.结构化程序设计主要强调程序的__C__。

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

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

A.软件投机 B.软件危机 C.软件工程 D.软件产生 8.成功的测试是指___B___。

A.运行测试实例后未发现错误项 B.发现程序的错误 C.证明程序正确 D.改正程序的错误 9.系统开发的需求分析阶段的重要工作之一是__A__。

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

10. 瀑布模型把软件生存周期划分为软件定义、软件开发和____三个阶段,而每一阶段又可细分为若干个更小的阶段。

A.详细设计 B.可行性分析 C.运行及维护 D.测试与排错

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

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

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

A.DFD图 B.PAD图 C.IPO图 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.月收入<=800元者免税,现用输入数800元和801元测试程序,则采用的是____方法。

A.边缘值分析 B.条件覆盖 C.错误推测 D.等价类 19.采用黑盒法测试程序是根据____。

A.程序的逻辑 B.程序的功能说明 C.程序中的语句 D.程序中的数据 20.使用结构化分析方法时,采用的基本手段是____。

A.分解和抽象 B.分解和综合 C.归纳与推导 D.试探与回溯 21.决定软件可维护性的主要因素可概括为____。

A.可测试性、可理解性、可修改性 B.一致性、结构性、自我描述性 C.可计测性、可访问性、可通讯性 D.可扩充性、简洁性、结构性 22.要减少两个模块之间的耦合,则必须____。

A.两个模块间的调用次数要少 B.模块间传递的参数要少

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

D.模块间传递的参数要少且不传递开关型参数以及两模块不引用同样的全局变量 23.结构化设计方法采用变换分析和事务分析技术实现____。

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

24.某教学设备销售部门制定一项销售优惠政策,一次购买100台或100台以上者按八五折优惠,购买者是教师、学生按九折优惠。设C1表示购买的台数,C2为1、2、0分别表示教师、学生和其他人员,则符合九折优惠判定条件为______。

A、(C1<100)AND NOT(C2=0) B、(C1<100)AND NOT(C2>0) C、NOT(C1>100)AND(C2=0) D、NOT(C1<100)AND(C2>0) 25.面向对象设计时,对象信息的隐藏主要是通过______实现的。

A、 对象的封装性 B、子类的继承性 C、系统模块化 D、模块的可重用

26.程序功能说明中指出:由三个输入数据表示一个三角形的三条边长。根据黑盒法中的边缘值分析法设计测试用例,应选_____。

A、 a=3,b=4,c=5 B、a=1,b=2,c=4 C、上述A、B 项目都应选上 D、a=1,b=2,c=3

27、软件生存周期中,开发期间包括哪几个阶段( ) A、软件计划、结构设计、测试和运行维护 B、需求分析、概要设计、详细设计和编码 C、结构设计、编码、测试和运行维护

D、需求分析、结构设计、详细设计、编码和测试

28、提高程序可读性的有力手段是( ) A、选好一种程序设计语言 B、显式说明一切变量 C、使用三种标准控制语句 D、给程序加注释

29、程序流程图、N-S图和PAD图是( )使用的算法表达工具。 A、设计阶段的概要设计 B、设计阶段的详细设计 C、编码阶段 D、测试阶段

.

.

30、下面所列的性质中,( )不属于面向对象程序设计的特性。 A、继承性 B、重用性 C、封装性 D、可视化

二、填空题:

1、 在结构化分析中,_____________用于详细地定义数据流图中的成分。(数据字典) 2、 耦合性和内聚性是衡量_________________的两个定性的标准。(模块独立性)

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

4、 从数据流图导出初始模块结构图,主要是通过_____________两项技术。(变换和事务) 5、 结构化程序设计是一种程序设计技术,它采用________________的设计方法和顺序、选择、循

环三种基本控制结构构造常态程序。(自顶向下、逐步求精)

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

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

8、 在需求分析中,可从有关问题的简述中提取组成数据流图的基本成分。通常问题简述中的动词

短语将成为数据流图中的_______________成分。(加工)或处理

9、 如果两模块间的通信信息是若干个参数,而每个参数是单一的数据项,则称这种耦合性为_____________耦合。(数据) 10、 如果按用户要求增加新功能或个性已有的功能而进行的维护工作,称为________________。(完善性维护) 11、 在系统设计时,当数据流图中数据的流动路径几乎是线性时,应采用______________策略设计系统结构图。(变换中心) 12、 现有一个计算类型的程序,它的输入只有一个Y,其范围是—50≤Y≤50。现采用黑盒法进行测试,设计了一组测试用例:—100,100,0。设计这组测试用例的方法是___________________。(等价分类) 13、 模块内部的算法设计在结构化方法的___________________阶段进行。(详细设计) 14、 定性度量模块独立性的两个标准是内聚性和__________________。(耦合性) 15、 改正性维护中,根据文档是提供的测试用例,重新对修改部分进行的测试称为_______测试。(回归) 16、 在__________________测试中,主要测试详细设计和编码实现阶段中的错误。(单元) 17、 软件工程技术中,控制复杂性的两个基本手段“分解”和____________。(抽象) 18、 检验是软件开发过程中不可缺少的部分,检验的目的在于_______。(发现错误并及时改正) 19、 适合于作为概念性数据模型的所谓第二代数据模型是___________。(ER模型) 20、 面向对象的开发,最大的优点是帮助分析者、设计者及用户清楚地表述 ________,便于互相进行交流通讯。(抽象概念)

21、一般来说,在管理软件中,软件生存周期各个阶段的工作量以 维护阶段

阶段所占的比例最大。

22、现有一个计算类型的程序,它的输入只有一个Y,其范围是-50≤Y≤50。现采用黑盒法进行测试,设计了一组测试用例:-100,100,0。设计这组测试用例的方法是 等价分类 。 23在 单元 测试中,主要测试详细设计和编码实现阶段中的错误。

24、面向对象的模型包括对象模型、 功能模型 和 动态模型 。

.

.

25、软件维护的类型有改正性维护、适应性维护、 完善性维护 、 预防性维护

三、 简答题

1、软件测试分几个步骤进行?每个步骤解决什么问题?

单元测试、集成测试,系统测试和验收测试。

单元测试:针对每个单元的测试, 以确保每个模块能正常工作为目标。

集成测试:对已测试过的模块进行组装,进行集成测试。 系统测试:检验软件产品能否与系统的其他部分(比如,硬件、数据库及操作人员)协调工作。 验收测试可以分成Alpha测试和Beta测试。 Alpha测试是由用户在开发环境下完成的测试,Beta测试是由用户在用户环境下完成的测试。

2、面向对象的特点是什么?面向对象方法学的主要优点有哪些? 1.抽象 2.继承 3.封装 4.多态性

优点:

1、开发时间短,效率高,可靠性高,所开发的程序更强壮。由于面向对象编程的可重用性,可以在应用程序中大量采用成熟的类库,从而缩短了开发时间。

2、应用程序更易于维护、更新和升级。继承和封装使得应用程序的修改带来的影响更加局部化。

3、什么是软件危机?产生软件危机的原因?

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

要是指如何开发软件,怎样满足对软件日益增长的需求,如何维护数量不断膨胀的先有软件。

原因:a.软件的规模越来越大,结构越来越复杂。

b.软件开发管理困难而复杂。

c.软件开发费用不断增加。

d.软件开发技术落后。

.

.

e.生产方式落后。

f.开发工具落后,生产率提高缓慢。

4、什么是黑盒测试?黑盒测试的常用方法有哪些?

黑盒测试(Black-box Testing,又称为功能测试或数据驱动测试)是把测试对象看作一个黑盒子。利用黑盒测试法进行动态测试时,需要测试软件产品的功能,不需测试软件产品的内部结构和处理

方法:等价类划分、边界值分析、错误推测、因果图和综合策略。

5、学校现欲开发一图书管理信息系统,试对该系统进行需求分析,并画出系统的功能结构图。

1.图书管理

2.管理员账户管理 3.图书类别管理 4.图书查询

.

.

.

.

单纯的课本内容,并不能满足学生的需要,通过补充,达到内容的完善 教育之通病是教用脑的人不用手,不教用手的人用脑,所以一无所能。教育革命的对策是手脑联盟,结果是手与脑的力量都可以大到不可思议。

.

因篇幅问题不能全部显示,请点此查看更多更全内容

Top