软件工程试题与答案(18)

发布时间:2013-12-28 10:50:45   来源:文档文库   
字号:

综合练习一及答案

一、填空题(每空1分,共20分)

1. 软件生存周期一般可分为__问题定义__、可行性研究、_需求分析_____、设计编码、__测试________、运行与维护阶段。

2. 按软件的功能进行划分,软件可以划分为 系统软件 支撑软件 和应用软件。

3. 可行性研究主要集中在以下四个方面 经济可行性 技术可行性 法律可行性 和抉择。

4. 用户界面的 可使用性 是用户界面设计最重要的也是最基本的目标。

5. 常见的软件概要设计方法有3大类:以数据流图为基础构造模块结构_结构化设计方法_________,以数据结构为基础构造模块的__jackson方法__________,以对象、类、继承和通信为基础的__面向对象设计方法__________

6. __数据流图__________数据字典___共同构成系统的逻辑模型。

7. 软件测试的方法有__分析方法___________非分析方法_______(即黑盒法)。

8. 单元测试一般以___白盒_____________测试为主,___黑盒______测试为辅。

9. 成本估计方法主要有__自底向上估计_________自顶向下估计_________和算法模型估计三种类型。

二、单项选择题(每小题2分,共10分)

1. 下列哪个阶段不属于软件生存周期的三大阶段( C )。

A、计划阶段 B、开发阶段 C、编码阶段 D、维护阶段

2. 需求分析是( A )。

 A 软件开发工作的基础     B 软件生存周期的开始  C 由系统分析员单独完成的   D 由用户自己单独完成的

3. 原型化方法是软件开发中一类常用的方法,它与结构化方法相比较,更需要( B )。

 A 明确的需求定义   B、完整的生命周期  C 较长的开发时间D、熟练的开发人员

4. 软件维护时,对测试阶段未发现的错误进行测试、诊断、定位、纠错,直至修改的回归测试过程称为( A )。

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

5. 一般说来,投入运行的软件系统中有错误( A )。

A、不是不可以理解的B、是不能容忍的C、是要求退货的理由D、是必然的

三、多项选择题(每小题2分,共10分)

1. 下面哪些测试属于白盒测试 AE )。

A、基本路径测试  B、等价类划分 C、边界值分析 D、错误推测 E、逻辑覆盖测试

2. 下列哪些选项是属于内容耦合( ABC )。

A、 一个模块直接访问另一个模块的内部数据B、一个模块有多个入口

C、一个模块不通过正常入口转到另一模块内部D、一个模块只有一个入口

3. 下列属于度量效益方法的是( ABC )。

A、货币的时间价值 B、投资回收期C、收入 D、投资回报率

4. 数据流图是用于表示软件模型的一种图示方法,在下列可采用的绘制方法中,哪些是常采用的 ACD )。

A、自顶向下 B、自底向上C、分层绘制D、逐步求精

5. 软件设计中一般将用到图形工具,下列哪种些可用作设计的图形工具 ACD )。

 A、结构图 B、实体联系图 CIPO D、层次图

四、判断题(正确的在括号内打上“√”,错误的打上“×”。每小题2分,共20分)

1. 在进行总体设计时应加强模块间的联系。( N

2. 系统结构图是精确表达程序结构图形表示法。因此,有时可将系统结构图当作系统流程图使用。(N

3. 用黑盒法测试时,测试用例是根据程序内部逻辑设计的。( N

4. 在程序调试时,找出错误的位置和性质比改正该错误更难。( Y

5. 以对象、类、继承和通信为基础的面向对象设计方法(OOD)也是常见软件概要设计方法之一。(Y

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

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

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

9. 集成测试主要由用户来完成。N

10. 软件危机完全是由于硬件问题引起的。 N

五、 简答题(每小题5分,共20分)

1、什么是软件危机?为什么会产生软件危机?

答:软件危机是指软件在开发和维护过程中遇到的一系统严重问题,主要包含二方面的问题,一是如何开发利用软件,二是如何维护数量不断膨胀的已有软件。产生软件危机的原因,一方面与软件本身的特点有关,另一方面和软件开发与维护的方法不正确有关。

2、耦合性有哪几种类型? 其耦合度的顺序如何?

答:低:非直接耦合 数据耦合标记耦合 控制耦合外部耦合 公共耦合内容耦合 :高

3、简述需求分析工作可以分成哪四个方面?软件需求分析的有哪三个基本原则?

答:需求分析阶段分成四个方面:对问题的识别、分析与综合、制定规格说明和评审三个基本原则:必须能够表达和理解问题的数据域和功能域;必须按自顶向下、逐步分解的方式对问题进行分解和不断细化;要给出系统的逻辑视图和物理视图。

4、什么是黑盒测试法?

答:黑盒测试法把程序看成一个黑盒子,完全不考虑程序的内部结构和处理过程,它只检查程序功能是否能按照规格说明书的规定正常使用,程序是否能适当地接收输入数据,产生正确地输出信息。

六、分析设计题(每小题10分,共20分)

1. 调整工资处理模块接受一个职称的变量,根据职称的不同(助教,讲师,副教授,教授)作不同的处理,其中若是助教还必须输入工龄,只有工龄超过两年才能调整工资。请用等价类划分法设计测试用例。

输入条件

合理等价类

不合理等价类

职称

教授

副教授

讲师

四种职称之外任意一种

职称兼工龄

助教兼工龄大于2

助教兼工龄等于两年

助教兼工龄小于两年

1.划分等价类: 2.设计测试用例:

输入数据

预期结果

覆盖范围

教授

输入有效,进行调整工资处理

副教授

输入有效,进行调整工资处理

讲师

输入有效,进行调整工资处理

助教  3

输入有效,进行调整工资处理

助教   2

输入有效,不调整工资处理

助教   1

输入有效,不调整工资处理

工程师

输入无效

2.假定某航空公司规定,乘客可以免费托运重量不超过30公斤的行李。当行李重量超过30公斤时,对头等舱的国内乘客超重部分每公斤收费4元,对其它舱的国内乘客超重部分每公斤收费6元,对国外乘客超重部分每公斤收费比国内乘客多一倍,对残疾乘客超重部分每公斤收费比正常乘客少一半。用判定树表示计算行李费的算法。

判定树为下图

综合练习二及答案

一. 选择题:

1 软件危机出现于__C__

A50年代末 B60年代初 C60年代末 D70年代初

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

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

3.产生软件危机的原因有如下几点,除了D_

A、 软件开发过程未经审查

B、 软件开发不分阶段,开发人员没有明确的分工

C、 所开发的软件,除了程序清单外,没有其他文档

D、 采用工程设计的方法开发软件,不符合软件本身的特点

4软件工程学是应用科学理论和工程上的技术指导软件开发的学科,其目的_B_

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

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

5.请按顺序写出软件生命期的几个阶段___F__D_ _C___E_B___A_

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

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

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

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

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

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

8.一个软件项目是否进行开发的结论是在B_文档中作出的。

A、 软件开发计划 B可行性报告 C、需求分析说明书 D、测试报告

9.分析员是_B__

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

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

10.下列叙述中,__A___不属于数据字典的作用。

A作为编码阶段的描述工具 B、为用户与开发人员之间统一认识

C、作为概要设计的依据 D、为需求分析阶段定义各类条目

11.使用结构化分析方法时,采用的基本手段是_A

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

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

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

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

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

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

A.变换型 B 事务型

14.需求分析说明书不能作_B__

A、 可行性研究的依据 B、用户和开发人员之间的合同

C、 系统概要设计的依据 D、软件验收测试的依据

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

ADFD BPAD CIPO D.数据字典

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

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

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

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

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

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

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

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

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

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

20.结构化设计方法是面向C_的设计方法。

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

41Jackson程序设计方法是一种面向 A 的设计方法。

A数据结构 B、数据流图 CIPO D、系统流程图

20Jackson设计方法由英国的M. Jackson提出的,它是一种面向_C的设计方法。

A.对象 B.数据流 C.数据结构 D.控制结构

21.结构化设计采用模块化方法的主要出发点是_D__

A、 增加内聚性 B、减少耦合度 C、提高有效性 D降低复杂度

22.下列 D_ 不是模块化设计的目的。

A、可采用结构化设计方法 B、降低复杂度

C、有利于信息隐蔽 D描述系统的功能与性能

23.一个模块直接控制(调用)的下层模块的数目称为模块的 B _

A、扇入数 B扇出数 C、宽度 D、作用域

24.某个模块的作用域是指__D__

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

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

25.模块本身的内聚是模块独立性的重要度量因素之一,在七类内聚中,具有最强内聚的一类是_D_

A.顺序性内聚 B.过程性内聚 C.逻辑性内聚 D.功能性内聚

26.如果模块中所有成分引用共同的数据,该模块内的联系类型是__C _

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

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

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

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

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

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

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

30.要减少两个模块之间的耦合,则必须__D _

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

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

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

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

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

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

32.一个模块传送给另一模块的参数是由单个数据项组成的数组,它属于__A__耦合。

A、 数据型 B、复合型 C、内容型 D、公共型

34PADProblem Analysis Diagram)图是一种_B_工具。

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

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

AN—S B数据流图 C、程序流程图 DPAD

36.程序流程图、N-S图和PAD图是_B_使用的表达工具。

A.设计阶段的概要设计 B.设计阶段的详细设计

C.编码阶段 D.测试阶段

37.模块内部的算法设计在结构化方法的___C__阶段进行。

A、系统分析 B、概要设计 C详细设计 D 编码(实现)

38.源程序的版面文档要求应有变量说明、适当注释和_B_

A.框图 B.统一书写格式 C.修改记录 D.编程日期

39.提高程序可读性的有力手段是_ D___

A、 选好一种程序设计语言 B、显式说明一切变量

C、使用三种标准控制语句 D给程序加注释

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

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

41.软件工程中___C_不属于用户文档的内容。

A、 功能描述 B、安装手册 C系统设计 D、使用手册

42.在软件工程中,高质量的文档标准是完整性、一致性和_C_

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

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

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

44.软件的_B_一般由两次故障平均间隔时间和故障平均恢复时间来度量;

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

45.采用__D__且编写程序,可提高程序的可移植性;

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

二、填空题:

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

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

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

4、 结构化分析方法中,数据流图的四种基本成分为:处理、源点或终点__数据存储数据流_

5、 从模块内外的联系来看,结构化设计的要求是___高内聚低耦合_

6、 在需求分析中,可从有关问题的简述中提取组成数据流图的基本成分。通常问题简述中的动词短语将成为数据流图中的___处理__成分。

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

8、 模块内部的算法设计在结构化方法的___详细设计__阶段进行。

9、 定性度量模块独立性的两个标准是内聚性和___耦合性___

综合练习三及答案

一.选择

1、瀑布模型把软件生命周期划分为八个阶段:问题的定义、可行性研究、软件需求分析、系统总体设计、详细设计、编码、测试和运行、维护。八个阶段又可归纳为三个大的阶段:计划阶段、开发阶段和( C)

A、详细计划 B、可行性分析 C 运行阶段 D 测试与排错

2、从结构化的瀑布模型看,在它的生命周期中的八个阶段中,下面的几个选项中哪个环节出错,对软件的影响最大(C )

A、详细设计阶段 B、概要设计阶段 C 需求分析阶段 D 测试和运行阶段

3、在结构化的瀑布模型中,哪一个阶段定义的标准将成为软件测试中的系统测试阶段的目标(A )

A 需求分析阶段 B 详细设计阶段 C 概要设计阶段 D 可行性研究阶段

4、软件工程的出现主要是由于(C )

A.程序设计方法学的影响 B.其它工程科学的影响

C. 软件危机的出现 D.计算机的发展

5、软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实施的主要保证是(C )

A. 硬件环境B、软件开发的环境 C、软件开发工具和软件开发的环境 D 开发人员的素质

6、软件开发常使用的两种基本方法是结构化和原型化方法,在实际的应用中,它们之间的关系表现为 ( B)

A 相互排斥 B 相互补充 C 独立使用 D 交替使用

7UML是软件开发中的一个重要工具,它主要应用于哪种软件开发方法(C )

A、基于瀑布模型的结构化方法 B、基于需求动态定义的原型化方法

C、基于对象的面向对象的方法 D、基于数据的数据流开发方法

8、在下面的软件开发方法中,哪一个对软件设计和开发人员的开发要求最高(B )

A、结构化方法 B、原型化方法 C、面向对象的方法 D、控制流方法

9、结构化分析方法是一种预先严格定义需求的方法,它在实施时强调的是分析对象的(B )

A、控制流 B、数据流 C、程序流 D、指令流

10、软件开发的结构化生命周期方法将软件生命周期划分成(A )

A 计划阶段、开发阶段、运行阶段 B 计划阶段、编程阶段、测试阶段

C 总体设计、详细设计、编程调试 D、需求分析、功能定义、系统设计

11、软件开发中常采用的结构化生命周期方法,由于其特征而一般称其为(A )

A 瀑布模型 B 对象模型 C 螺旋模型 D 层次模型

12、软件开发的瀑布模型,一般都将开发过程划分为:分析、设计、编码和测试等阶段,一般认为可能占用人员最多的阶段是( C)

A 分析阶段 B 设计阶段 C 编码阶段 D 测试阶段

二.判断

1.软件的开发与运行经常受到硬件的限制和制约。()

2.模块内的高内聚往往意味着模块间的松耦合。( )

3Jackson图只能表达程序结构,不能表达数据结构。(X)

4上述数据流图表示数据AB同时输入变换成C(X )

5.软件的质量好坏主要由验收人员负责,其他开发人员不必关心。(X )

6.判定覆盖不一定包含条件覆盖,条件覆盖也不一定包含判定覆盖。()

7.应该尽量使用机器语言编写代码,提高程序运行效率,而减少高级语言的使用。(X)

8UML只能应用于软件系统模型的建立。(X)

9.容错就是每个程序采用两种不同的算法编写。(X)

10.软件测试的目的是为了无一遗漏的找出所有的错误。(X)

本文来源:https://www.2haoxitong.net/k/doc/5c4cfe14192e45361066f5a7.html

《软件工程试题与答案(18).doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式