文档库 最新最全的文档下载
当前位置:文档库 › 软件工程导论 期末试题库完整版

软件工程导论 期末试题库完整版

软件工程导论 期末试题库完整版
软件工程导论 期末试题库完整版

.

1.填空题

1.一般来说,可以从__一致性__、_完整性___、_现实性____和_有效性___四个方面验证

软件需求的正确性。

2.IPO图是_输入、处理和输出图_的简称,它是美国IBM公司发展完善起来的一种图形

工具。

3.系统流程图是描述__物理模型__的传统工具,用图形符号表达了系统中各种元素之间的_____信息流动_____情况。

4.数据流图中的箭头表示数据流,椭圆或圆形表示数据处理,矩形表示

数据的源点/终点。

5.软件测试的步骤按顺序分别是:___单元测试_____、子系统测试、系统测试(子系统和系统测试通常称为集成测试)、__确认测试__和_____系统测试(集成测试)____

6.软件生命周期一般可分为_问题定义_、可行性研究、_需求分析_、设计编码、_测试_、

运行与维护阶段。

7.可行性研究主要集中在以下四个方面_经济可行性_、__技术可行性____、__法律可行

性___和抉择。

8.在结构化设计中,HIPO图应用在总体设计阶段,由IPO图和_层次图_两部分组成。

9.复杂问题的对象模型通常由下述五个层次组成:主题层、___类与对象_层、__结构___层、_属性_层和__服务_层。

10.实施精化设计的目标是基于模块的“高内聚低耦合”的原则,提高模块的_独立性。

11.软件生命周期一般可分为___问题定义_、可行性研究、__需求分析__、概要设计__、

详细设计、编码、__软件测试_、运行与维护阶段。

12.面向对象的数据存储管理模式分为__文件__、_关系数据库__和__面向对象数据库

___三种。

13.单元测试一般以_白盒_测试为主,__黑盒__测试为辅。

14.软件工程三要素包括_方法_、__工具___和__过程___,其中, _过程_支持软件开

发的各个环节的控制和管理。

15.类构件的重用方式有_实力重用__、__继承重用______和_ 多态重用__三种。

16.能力成熟度模型分为5个等级:初始级、____可重复____级、__已定义___级、____

已管理__级和__优化____级。

2.判断题

1. 向滞后的项目中增加人手会使得项目更加滞后。(T)

;..

2. 过程描述语言可以用于描述软件的系统结构。(F)

3. 按照瀑布模型开发软件的一条指导思想是清楚地区分逻辑设计与物理设计,以便尽早开始程序的物理实现。(F )

5. 只有质量差的软件产品才需要维护。(F)

6.层次图用来描述软件的层次结构。层次图中的一个矩形框代表一个模块,方框间的连线表示模块的组成关系。在层次图中除最顶层的方框之外,给每个方框都加编号,即成为带有编号的层次图。(F)

7.建立动态模型的第一步,是编写典型交互行为的脚本。(T)

8.软件错误可能出现在开发过程的早期,越早修改越好。(T)

9.软件模块的耦合是越低越好。(T)

10.一个好的测试用例在于能发现至今未发现的错误。(T)

11.面向对象设计的结果只能采用面向对象语言来实现(F)

12. 一个成功的项目唯一提交的就是运行程序。(F)

13.用例之间的关系有3种。(T)

14.面向对象设计准则也要遵循弱耦合的原则,但是继承耦合则应该提高,紧密地继承耦合与高度的一般-特殊内聚是一致的。(T)

15.软件工作的考虑范围主要是程序设计和实现。(F )

16.环形复杂度定量度量程序的逻辑复杂度,可以用这个公式来计算环形复杂度:流图G的环形复杂度V(G) = N– E + 2。(改成E-N+2)(F)

17.等价类划分方法将所有可能的输入数据划分成若干部分,然后从每一部分中选取少数有代表性的数据作为测试用例。(T)

18.在进行总体(改成概要)设计时应加强模块间的联系。( F)

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

20.建立动态模型的第一步,是编写典型交互行为的脚本。( T )

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

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

23.快速原型模型可以有效地适应用户需求的动态变化。( T)

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

25.集成测试主要由用户来完成。( F )

;..

.

26.面向对象 = 对象 + 类 + 继承 + 消息传递。( T )

27.面向对象的分析是面向计算机系统建立软件系统的对象模型。( F )

3.选择题

1.具有风险分析的软件生命周期模型是()。

A.瀑布模型

B.喷泉模型

D. 增量模型螺旋模型 C.

2.软件工程的基本要素包括方法、工具和()。

A. 过程

B. 软件系统

D. 人员 C. 硬件环境

3.软件的复杂性是(),它引起人员通信困难、开发费用超支、开发时间超时等问题。

A. 固有的

B. 人为的

D. 可消除的C. 不可降低的

4.在结构化分析方法中,()表达系统内部数据运动的图形化技术。

A. 数据字典

B. 实体关系图

D. 状态转换图数据流图C.

5.“软件危机”是指()。

A.计算机病毒的出现 B.利用计算机进行经济犯罪活动

C.软件开发和维护中出现的一系列问题D.人们过分迷恋计算机系统

6.随着软硬件环境变化而修改软件的过程是()。

A.校正性维护B.适应性维护

D .预防性维护 C.完善性维护

7. 需求分析中开发人员要从用户那里了解()。

A.软件做什么 B.用户使用界面

D C.输入的信息.软件的规模

8.软件详细设计的主要任务是确定每个模块的()。

A.算法和使用的数据结构 B.外部接口

D .编程 C.功能

9.为了提高模块的独立性,模块内部最好是()。// 外部耦合,功能内聚 A.逻辑内聚B.时间内聚

功. C D能内聚.通信内聚

;..

.

10.一个模块的()太大一般是因为缺乏中间层次,应当适当增加中间层次的控制模块。A.深度 B. 宽度

扇出 D. 扇入 C.

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

A.逻辑内聚 B.时间内聚

D.功能内聚 C.偶然内聚12. 需求分析是()。

A. 软件开发工作的基础

B. 软件生存周期的开始

C. 由系统分析员单独完成的

D. 由用户自己单独完成的13. 在白盒测试技术测试用例的设计中,()是最强的覆盖标准。

A.语句覆盖 B.路径覆盖

D.判定覆盖 C .条件组合覆盖

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

A. 改正性维护

B. 适应性维护

D. 预防性维护 C. 完善性维护

15.()是把对象的属性和操作结合在一起,构成一个独立的对象,其内部信息对外界是隐蔽的,外界只能通过有限的接口与对象发生联系。

A. 多态性

B. 继承

D. 消息 C. 封装

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

A.结合 B.隐藏C.封装 D.抽象

17.面向对象的开发方法中,()将是面向对象技术领域内占主导地位的标准建模语言。A.Booch方法 B.Coad方法 C.UML语言 D.OMT方法

18.()意味着一个操作在不同的类中可以有不同的实现方式。

A.多态性 B.多继承 C.类的可复用 D.信息隐藏

19.单元测试的测试用例主要根据()的结果来设计。

A.需求分析 B.源程序 C.概要设计D.详细设计

)而执行程序的过程。软件测试是为了(20.

A. 纠正错误发现错误

B.

;..

.

C. 避免错误

D. 证明正确

21.类构件的重用方式有多态重用、继承重用和()

A.实例重用 B.重载重用

D. 方法重用 C. 代码重用

22. 支持面向对象技术的软件生存周期模型是()。

A. 喷泉模型

B. 螺旋模型

D. 瀑布模型 C. 增量模型

23. 在白盒测试技术测试用例的设计中,()是最弱的覆盖标准。

A.语句覆盖 B.路径覆盖

D.判定覆盖 C.条件组合覆盖

//BCD是黑盒测试 1.下面哪些测试方法属于白盒测试()。、边界值分析 B、等价类划分 C A、基本路径测试

、逻辑覆盖测试E D、错误推测)。2.下列哪些选项是属于内容耦合(

一个模块直接访问另一个模块的内部数据、A

B、一个模块有多个入口一个模块不通过正常入口转到另一模块内部

C、一个模块只有一个入口

D、)。 3.下列属于度量效益方法的是(、投资回收期 A、货币的时间价值

B C、收入、投资回报率 D哪些是常数据流图是用于表示软件模型的一种图示方法,在下列可采用的绘制方法中,4.。采用的()、逐步求精、分层绘制 B、自顶向下A 、自底向上

C D软件设计中一般将用到图形工具,下列哪种些可用作设计的图形工具()。 5. A、结构图

B、实体联系图

C、IPO图

D、层次图

;..

.

4.简答题: 1简述增量模型的优点和缺点。.答::优点

采用增量模型的优点是人员分配灵活,刚开始不用投入大量人力资源。如果核心产品很当配备的人员不能在设定的期限内完成产品时,则可增加人力实现下一个增量。受欢迎,它提供了一种先推出核心产品的途径。这样即可先发布部分功能给客户,对客户起到镇静剂的作用。此外,增量能够有计划地管理技术风险。缺点:由于各个构件是逐渐并入已有的软件体系结构中的,所以加入构件必须不破坏 1)已构造好的系统部分,这需要软件具备开放式的体系结构。在开发过程中,需求的变化是不可避免的。增量模型的灵活性可以使其适应这) 2种变化的能力大大优于瀑布模型和快速原型模型,但也很容易退化为边做边改模型,从而是软件过程的控制失去整体性。)如果增量包之间存在相交的情况且未很好处理,则必须做全盘系统分析,这种模型3 将功能细化后分别开发的方法较适应于需求经常改变的软件开发过程。

简述软件设计的过程。2.

答:软件设计是把许多事物和问题抽象起来,并且抽象它们不同层次和角度,是将需求转变对整个设计过程书,软件设计,要根据需求规格说明为软件陈述的过程,是迭代的过程。也是不断迭代和精化的过程。即“先整体,再局部”,进行计划,然后实施具体的设计过程,质量评价的标准,若未通过评审,需重然后需要对生成的设计规格说明书进行评审,启动

新修改设计,直至评审通过,确定最后定型的过程本身。进入后续阶段,完成软件设计过程。

3.原型化方法主要用于解决什么问题?试说明这种方法的主要优缺点。

答:

;..

.

经理和用户、建立原型的主要原因是为了解决在产品开发的早期阶段需求不确定的问题,其他非技术项目风险承担者发现在确定和开发产品时,原型可以使他们的想象更具体化。原型在软件开发过程中可以起到以下主要作用:原型作为一种需求工具,它初步实现所理解的系统的一部分。用明确并完善需求)(1可以最低的费用来解在你开发真正产品之前,户对原型的评价

可以指出需求中的许多问题,决这些问题。原型作为一种设计工具,用它可以探索不同的用户界面技术,探索设计选择方案(2)使系统达到最佳的可用性,并且可以评价可能的技术方案。原型作为一种构造工具,是产品最初子集的完整功能实现,通发展为最终的产品(3)

过一系列小规模的开发循环,你可以完成整个产品的开发。

4.请看下列伪代码程序,要求完成下列问题:

(1)画出代码的流程图(4分)

(2)根据该程序流程图画出该程序的流图;(4分)

(3)计算该流图的环形复杂度;(4分)

START

INPUT (A,B,C)

IF A>5

THEN X=10

ELSE X=1

END IF

IF B>10

THEN Y=20

ELSE Y=2

END IF

IF C>15

THEN Z=30

ELSE Z=3

END IF

PRINT (X,Y,Z)

STOP

答:

(1)

;..

.

相关文档