软件工程期末试卷(十套含答案)

发布时间 : 星期四 文章软件工程期末试卷(十套含答案)更新完毕开始阅读

软件工程期末试题(一)

单项选择题

1.瀑布模型的存在问题是( B )

A.用户容易参与开发 B.缺乏灵活性 C.用户与开发者易沟通 D.适用可变需求

2.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做( C ) A.软件工程 B.软件周期 C.软件危机 D.软件产生

3.数据耦合、公共耦合、标记耦合、控制耦合的耦合性从低到高的顺序是( B ) A.数据、公共、标记、控制 B.数据、标记、控制、公共 C.控制、数据、标记、公共 D.控制、数据、公共、标记 4.在SD方法中全面指导模块划分的最重要的原则是( D ) A.程序模块化 B.模块高内聚 C.模块低耦合 D.模块独立性 5.软件测试的目的是( B )。

A. 评价软件的质量 B. 发现软件的错误 C. 找出软件的所有错误 D. 证明软件是正确的 6.在设计测试用例时,( A )是用得最多的一种黑盒测试方法。 A. 等价类划分 B. 边界值分析 C. 因果图 D. 判定表 7. 需求分析最终结果是产生( B )。

A. 项目开发计划 B. 需求规格说明书 C. 设计说明书 D. 可行性分析报告

8. Jackson图中,模块框之间若有直线连接,表示它们之间存在(B )。 A. 调用关系 B. 组成关系 C. 链接关系 D. 顺序执行关系 9. 软件详细设计的主要任务是确定每个模块的( C )。

A. 功能 B. 外部接口 C. 算法和使用的数据结构 D. 编程 10.为了提高软件的可维护性,在编码阶段应注意( D ) A.保存测试用例和数据 C.文档的副作用

B.提高模块的独立性

D.养成好的程序设计风格

11.设年利率为i,现存入p元,若计复利,n年后可得钱数为(B) A.p﹡(1+i﹡n) C.p﹡(1+i)﹡n

B.p﹡(i+1)n D.p﹡(i+n)

12.在考察系统的一些涉及时序和改变的状态时,要用动态模型来表示。动态模型着重于系统的控制逻辑,它包括两个图:一个是事件追踪图,另一个是( A )。 A .状态图 B. 数据流图 C. 系统结构图 D. 时序图

13. 对象实现了数据和操作的结合,使数据和操作( C )于对象的统一体中。

A. 结合 B. 隐藏 C. 封装 D. 抽象 14. 软件详细设计的主要任务是确定每个模块的( A )。

A. 算法和使用的数据结构 B. 外部接口 C. 功能 D. 编程

15. 软件结构图中,模块框之间若有直线连接,表示它们之间存在( A )。 A. 调用关系 B. 组成关系 C. 链接关系 D. 顺序执行关系 16. 需求分析最终结果是产生( B )。

A. 项目开发计划 B. 需求规格说明书 C. 设计说明书 D. 可行性分析报告 17. 在详细设计阶段,经常采用的工具有( A )。

A. PAD B. SA C. SC D. DFD

18.因计算机硬件和软件环境的变化而作出的修改软件的过程称为( C ) A.教正性维护 B.适应性维护 C.完善性维护 D.预防性维护 20.为了提高软件的可维护性,在编码阶段应注意( D ) A.保存测试用例和数据 B.提高模块的独立性 C.文档的副作用 D.养成好的程序设计风格

1.面向对象开发方法包括OOA、OOD和OOP三部分。

2.效益分有形效益和无形效益两种。有形效益可用纯收入、货币时间的价值、投资回收期等指标进行度量;无形效益主要从性质上、心理上进行衡量,很难直接进行量的比较。 3.从应用特点的角度来看,我们可以把高级语言分为基础语言、结构语言和专用语言三类。 设计题

已知有如下的伪代码程序: START I:=1;

WHILE i:<=n-1 DO min:=A[i]; j:=i+1;

WHILEj<=n DO IF min>A[j] THEN

BLOCK

temp:=min; min:=A[j]; A[j]:=temp; ENDBLOCK ENDIF; j:=j+1; ENDDO i:=i+1; ENDDO STOP 要求:请用盒图描述。.

i:=1 f i<=n-1 min:=A[i] j:=i+1 j<=n min>A[j] j:=j+1 i:=i+1 t temp:=min min:=A[i] A[j]:=temp

软件工程期末试题(二)

一, 判断题(正确的在括号内打上\1.5分,共15分) Warnier方法也是一种面向数据结构的设计方法,其逻辑更严格.(×) PAD图在设置了五种基本控制结构后,还允许递归调用. (×) 你 为了加快软件维护作业的进度,应尽可能增加维护人员的数目.(×) 当验收测试通过,软件开发就完成了.(×)

完成测试作业后,为了缩短源程序的长度应删除程序中的注解.(×)

系统结构图是精确表达程序结构的图形表示法.因此,有时也可以将系统结构图当作系统流程图使用.(×)

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

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

二,单项选择题(每小题2分,共10分) 试判断下列叙述中,哪 个(些)是正确的(D)

a,软件系统中所有的信息流都可以认为是事务流 b,软件系统中所有的信息流都可以认为是变换流 c,事务分析和变换分析的设计步骤是基本相似的 A,a B,b C,c D,b和c

进行需求分析可使用多种工具,但(B)是不适用的. A,数据流图 B,PAD图 C,判定表 D,数据词典 在详细设计阶段,经常采用的工具有(A). A,PAD B,SA C,SC D,DFD

详细设计的结果基本决定了最终程序的(C) A,代码的规模 B,运行速度 C,质量 D,可维护性

使用白盒测试方法时,确定测试数据应根据(A)和指定的覆盖标准. A,程序的内部逻辑 B,程序的复杂程度

C,该软件的编辑人员 D,程序的功能

三,多项选择题(每题2分,共10分.注:正确得2分,漏选得1分,多选,错选不得分.) (ABCD)可以作为模块.

A,子程序 B,函数 C,过程 D,编译文件 下面哪些测试属于黑盒测试(BCD).

A,路径测试 B,等价类划分 C,边界值分析 D,错误推测 E,循环测试 下列属于度量效益方法的是(ABCD).

A,货币的时间价值 B,投资回收期 C,收入 D,投资回报率 软件维护的策略包括(BCD).

A,定期检测维护 B,改正性维护 C,适应性维护 D,完善性维护 下列属于软件测试过程的是(ABE).

A,单元测试 B,组装测试 C,内核测试 D,法律验证 E,确认测试 四,简答题(每题6分,共24分)

1、耦合性和内聚性有几种类型 其耦合度,内聚强度的顺序如何

答案:低:非直接耦合,数据耦合,标记耦合,控制耦合,外部耦合,公共耦合,内容耦合:高 强:功能内聚,信息内聚,通信内聚,过程内聚,时间内聚,逻辑内聚,偶然内聚:弱 2、请举例说明什么是多态,什么是重载

答案:多态性是指子类对象可以像父类对象那样使用,同样的消息既可以发送给父类对象也可以发送给子类对象.也就是说,在类等级的不同层次中可以共享(公用)一个行为(方法)的名字,然而不同层次中的每个类却各自按自己的需要来实现这个行为.当对象接收到发送给它的消息时,根据该对象所属于的类动态选用在该类中定义的实现算法. 3、重载是指一个类中有多个同名的方法,但在操作数个数或类型上有区别. 例: public class A{ int age; String name;

public void setValue(int i) { age=i; }

public void setValue(String s) { name=s; }

4、什么是数据字典 简述数据字典与数据流图的关系.

答案:数据字典是关于数据的信息的集合,对数据流程图中的各个元素做完整的定义与说明,是数据流程图的补充工具.(2分)数据流图和数据字典共同构成系统的逻辑模型,没有数据字典数据流图就不严格,然而没有数据流图数据字典也难于发挥作用. 数据流图和对数据流图中每个元素的精确定义放在一起,才能共同构成系统的规格说明.(3分) 5、简述编码风格的重要性.

答案:阅读程序是软件开发和维护过程中的一个重要组成部分,程序实际上也是一种供人阅读的文章.应当在编写程序时讲求程序的风格,这将大量地减少人们读程序的时间.良好的编码风格有助于编写出可靠而又容易维护的程序,编码的风格在很大程度上决定着程序的质量. 面向对象的测试和传统开发方法的测试有什么不同

答案:(1)二者都可以分成四个阶段进行.但传统测试最小单元是模块,而在面向对象环境下,最小的可测试的单元是封装了的类或对象,而不是程序模块.(2)因为面向对象软件没有一个层次的控制结构,所以传统的自顶向下和自底向上的组装策略意义不大. 每次将一个操作组装到类中(像传统的增殖式组装那样)常常行不通,因为在构成类的各个部件之间存在各种直接的和非直接的交互.对于面向对象系统的组装测试,存在两种不同的测试策略.

联系合同范文客服:xxxxx#qq.com(#替换为@)