西南交大软件工程课后习题(考试原题来源)周艳版

西南交大软件工程课后习题(考试原题来源)周艳版
西南交大软件工程课后习题(考试原题来源)周艳版

西南交大软件工程课后习题(考试原题来源)周艳版

第一章

1、到目前为止,软件生产的发展经过了三个阶段,即程序设计、程序系统和软件工程。

2、软件生存周期是指一个软件从提出开发要求开始直到该软件报废为止的整个时期。通常,软件生存周期包括可行性研究、需求分析、概要设计、详细设计、编码、测试、运行与维护等活动。可以将这些活动以适当方式分配到不同阶段去完成。

3、在信息处理和计算机领域内,一般认为软件是__程序_、_文档_和_数据_。

4、软件工程的三要素是__过程__、_方法__和_工具_ 。

5、软件是一种(B )产品。

A.有形

B.逻辑

C.物质

D.消耗

6、为了解决软件危机,人们提出了用(B)的原理来设计软件,这是软件工程诞生的基础。

A.运筹学

B.工程学

C.软件学

D.数学

7、软件生产的复杂性和高成本性,使大型软件的生存出现危机,软件危机的主要表现包括

了下述( D)方面。

①生产成本过高②需求增长难以满足③进度难以控制④质量难以保证

A.①②

B.②③

C. ④

D.全部

8、软件工程的目的是(A)。

A.建造大型的软件系统

B.软件开发的理论研究

C.软件的质量保证

D.研究软件开发的原理

第二章

1、螺旋模型将_线性顺序__模型和_原型模型___模型结合起来,加入了两种模型均忽略了的__风险分析___,弥补了这两种模型的不足。

2、瀑布模型本质上是一种_线性_顺序模型,适用于_需求_变更比较少的软件开发过程。

3、描述软件开发过程中各种活动如何执行的模型称为_软件工程过程_模型。

4、增量模型是在项目的开发过程中以一系列的__增量__开发系统。

5、在软件过程模型中,( D )吸收了软件工程“演化”的概念,适合于大型软件的开发。

A.瀑布模型

B.快速应用开发模型

C.原型模型

D.螺旋模型

6、软件工程过程模型有多种,下列选项中,( C )不是软件过程模型。

A.螺旋模型

B.增量模型

C.功能模型

D.瀑布模型

7、(D)模型主要用来描述面向对象的软件开发过程。

A.瀑布模型 B.演化模型

C.螺旋模型 D.喷泉模型

8、原型化方法是用户和设计者之间执行的一种交互过程,

适用于( A )系统。

A.需求不确定性高的

B.需求确定的

C.管理信息

D.实时

9、演化软件过程模型(D)。

A. 本质上是迭代的

B. 容易适应需求的变化

C. 通常不抛弃所产生的系统

D. 以上所有选项

10、软件开发的增量模型是(B)。

A. 适用于需求被清晰定义的情况

B. 一种需要快速构造核心产品的好方法

C. 最适合于大规模团队开发的项目

D. 一种不适用于商业产品的创新模型

第三章

1、可行性研究的目的是 _以最小的代价在尽可能短的时间内确定该项目是否能够解决。

2、效益度量方法中,有形的效益主要采用_投入产出比_、_成本回收时间_、_纯收入_三个指标度量。

3、软件项目的可行性研究主要集中在_经济__、_技术_、_法律__三个方面。

4、计算机系统工程包括_硬件与硬件过程_、_软件与软件过程_、_人与人机过程和_数据库与数据库过程_。

5、纯收入是指在整个生存周期之内的__累计经济效益__与投资之差。

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

A.技术可行性

B.经济可行性

C.社会可行性

D.法律可行性

7、一个软件项目是否进行开发的结论是在( C)中作出。

A.软件开发计划

B.可行性报告

C.需求分析说明书

D.测试报告

8、软件可行性研究实质上是要进行一次(A )需求分析、设计过程。

A.简化压缩的 B.详细的

C.彻底的 D.深入的

第四章

1、结构化分析方法采用的基本手段是_分解__和_抽象_。

2、结构化分析方法是面向__数据流__的分析方法。

3、结构化系统分析中,判定表和判定树常用于表达数据流图中的_加工逻辑__。

4、结构化分析中,_数据字典(DD)_用于详细地定义数据流图中的成分。

5、适合于作为概念性数据模型的第二代数据模型是_E-R图__。

6、数据字典和数据流图共同构成了系统的_逻辑模型__。

7、三种描述加工逻辑的工具各有优缺点,对于顺序执行和循环执行的动作,用_结构化语言_描述。对于存在多个条件复杂组合的判断问题,用_判定表__和__判定树_。

8、效率是一个__非功能__要求,目标在__需求分析___阶段给出。

9、数据流图的四种基本成分为:加工、源点或终点、_数据流__和_数据存储_。

10、SA方法用DFD描述( D )。

A.系统的控制流程

B.系统的数据结构

C.系统的基本加工

D.系统的功能

11、需求分析阶段的重要工作之一是( A )。

A.数据定义

B.数据库设计

C.数据维护

D.数据结构实现

12、结构化分析SA是软件开发需求分析阶段所使用的方法,(C)不是SA所使用的工具。

A.DFD

B.结构化英语

C.PAD

D.判定表

13、不适于作为数据流图处理(加工)框名称的是(B)。

A.人工校核工资数据

B.工资支票数据

C.打印工资支票

D.计算职工工资

14、需求分析阶段的研究对象是( D )。

A.软硬件要求

B.分析员要求

C.系统要求

D.用户要求

15、在自顶向下设计分层数据流图时,设计顶层数据流图主要分析(B )。

A.源、汇(终点)和处理功能

B.源、汇(终点)和输入、输出数据流

C.数据存储和输入、输出数据流

D.处理功能和输入、输出数据流

16、通过( B )可以完成数据流图的细化。

A.结构分解

B.功能分解

C.数据分解

D.系统分解

17、下列描述错误的是(D)。

A、数据流图将各种信息流抽象成数据流的形式

B、数据流图不反映控制关系、调用关系

C、数据流图不反映处理逻辑的先后顺序

D、数据流图不反映数据的流向

第五章

1、耦合性和内聚性是衡量_模块独立性__的两个定性的标准。软件系统划分模块时,尽量做到_高_内聚、_低耦合。

2、模块内部的算法设计在结构化方法的_详细设计_阶段进行

3、按数据流的类型,结构化设计方法有两种设计策略,他们是变换分析设计和_事务分析设计_。

4、模块间耦合高低取决于模块间_接口复杂程度、调用模块方式及_通过模块接口的数据_。

5、变换型数据处理的工作过程一般分为三步:输入_、变换中心_和_输出,这三步体现了变换型DFD的基本思想。

6、一个模块的_作用域_范围应在其_控制域_范围之内,且判定所在的模块应与受其影响的模块在层次上尽量_靠近_。

7、HIPO图是表示_体系结构设计_的一种工具。它使用_H图_描述软件总的模块层次结构,使用__IPO图__描述每个模块输入输出数据、处理功能及模块调用的详细情况。

8、Jackson方法是一种面向_数据结构_的设计方法,可用_顺序_、_选择_、_循环__三种基本结构来表示。

9、结构化设计方法采用变换分析和事务分析技术实现从_数据流图_导出_软件结构图_。

10、PAD (Problem Analysis Diagram)图是一种(B )工具。

A.系统描述

B.详细设计

C.测试

D.编程辅助

11、结构化程序设计主要强调程序的(C)。

A.效率

B.速度

C.可读性

D.大小

12、如果模块中所有成分引用共同的数据,该模块内的联系类型是( C)。

A.顺序内聚

B.功能内聚

C.通信内聚

D.过程内聚

13、初始化模块和结束模块从块内联系看称为( C )模块。

A.过程内聚

B.功能内聚

C.时间内聚

D.逻辑内聚

14、结构化程序设计的一种基本方法是(C)。

A.筛选法

B.迭代法

C.逐步求精法

D.递归法

15、一个模块直接控制(调用)的下层模块的数目称为模块的(B)。

A.扇入数

B.扇出数

C.宽度

D.作用域

16、详细设计的结果基本决定了最终程序的(C )。

A.代码的规模B.运行速度

C.质量D.可维护性

17、软件结构图的形态特征能反映程序重用率的是(C )。

A.深度

B.宽度

C.扇入

D.扇出

18、属于软件设计的基本原理是( D )。

A.数据流分析设汁

B.变换流分析设计

C.事务流分析设计

D.模块化

期中考试

一、单项选择题

1、某模块的输入数据为某工厂中一个车间的生产产量表,通过该模块计算车间中生产工人的平均产量,统计产量前10名的人员名单,从内聚度来看,该模块属于(B)。

A.逻辑内聚 B.通信内聚 C.顺序内聚 D.功能内聚

2、软件是一种( B )产品。

A.有形 B.逻辑 C.物质 D.消耗

3、模块(C),则说明模块的独立性越强。

A.耦合越强B、扇入数越高

C、耦合越弱

D、扇入数越低

4、软件生存周期中,准确地确定软件系统必须做什么的阶段是(B)。

A.可行性分析

B.需求分析

C.概要设计

D.详细设计

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

A.程序模块化

B.模块高内聚

C.模块低耦合

D.模块独立性

6、盒图是一种(B)工具。

A.系统描述

B.详细设计

C.测试

D.编程辅助

7、( D )着重反映的是模块间的隶属关系,即模块间的调用关系和层次关系。

A.程序流程图B.数据流图

C.ER图D.结构图

8、原型化方法是用户和设计者之间执行的一种交互过程,适用于(A)系统。

A.需求不确定性高的B.需求确定的

C.管理信息D.实时

9、具有风险分析的软件生命周期模型是(C)。

A.瀑布模型

B.喷泉模型

C.螺旋模型

D.增量模型

10、结构化设计又称为(B )。

A.概要设计B.面向数据流设计

C.面向对象设计D.详细设计

11、软件生产发展经历了程序设计时代、(C)和软件工程时代。

A. 结构化设计时代

B. 面向对象设计时代

C. 程序系统时代

D. 集体开发时代

12、一个模块直接访问另一个模块的内部数据的耦合称为(A)。

A.内容耦合 B.控制耦合 C.外部耦合 D.公共耦合

13、PDL是下列哪种语言( A )。

A.伪码B、高级程序设计语言

C.中级程序设计语言D、低级程序设计语言

14、结构化系统分析主要是通过(D)进行分析的。

A.算法分解B.控制结构分解

C.数据结构分解D.处理功能分解

15、软件工程与计算机科学性质不同,软件工程着重于(B)。

A.提高软件的开发效率

B.使软件生成工程化

C.消除软件的生产危机

D.加强软件的质量保证

二、填空题

1、数据流图和__数据字典_共同构成系统的逻辑功能模型,各种软件系统的数据流图一般可分为__变换型__和事务型两类。

2、为了验证需求分析的正确性,一般应从四个方面进行,有效性、一致性、__完整性___和__现实性__。

3、模块的_作用域_指受该模块内一个判定影响的所有模块的集合。

4、结构图中的连线表示模块间的调用关系,而层次方框图中的连线表示数据间__组成关系(隶属关系)_ 。

5、解决复杂问题采用的策略是__分解和抽象__,这也是结构化分析的精髓。

6、软件工程的三要素是方法、__工具__和__过程_。

7、 _可行性研究__的目的就是用最小的代价在尽可能短的时间内确定该项目是否能够解决。

8、ER模型的三个基本构成成分是属性、联系和_实体__。

9、由于软件生产的复杂性和高成本,使大型软件生产出现了很多问题,即出现_软件危机__,软件工程正是为了克服它而提出了一种概念及相关方法和技术。

10、软件结构中的_深度_表示的软件的控制层数,它往往能够粗略地标志一个系统的大小和

复杂程度。

11、数据流图中的箭头是_数据流_,程序流程图中的箭头则是_控制流___。

12、Jackson方法是一种面向_数据结构__的设计方法,可用_顺序_ 、_选择_、_循环_三种基本结构来表示。

13、系统的_纯收入_指的是整个生命周期内系统的累积经济效益与投资之差。

三、判断题

T 1.分层数据流图是一种比较严格又易于理解的描述方式,它的顶层描述了系统的输入和输出。

F 2、程序设计语言中应绝对禁止使用GOTO语句。

F 3、某加工的输入是一个数据流,该加工的输出也必定是一个数据流。

F 4、由于软件是产品,因此可以应用其他工程制品所用的技术进行生产。

F 5、可行性研究唯一要考察的内容就是该软件项目在技术上是否可行。

F 6、软件是指用程序设计语言编写的程序,软件开发实际就是编写程序代码。

F 7、判定表较判定树直观易读,判定树进行逻辑验证较严格。

T 8、Warnier图比层次方框图可以表达更多的数据组织信息。

F 9、要减少两个模块之间的耦合,则必须两个模块间的调用次数要少。

F 10、在模块逐层分解中,应该尽可能地进行模块分解,以减少软件开发工作量。

四、简答题

1、简述软件体系结构设计优化原则。

答:(1)降低模块的耦合性,提高模块的内聚性。

(2)保持适中的模块规模。

(3)模块应具有高扇入和适当的扇出。

(4)软件结构中的深度和宽度不宜过大。

(5)模块的作用域应处于其控制域范围之内。

(6)尽量降低模块的接口复杂度。

2、什么是软件生存周期。软件生存周期可划分为哪几个阶段?各阶段的关键任务是什么?答:软件从定义到开发、使用和维护,直到最终被弃用,要经历一个漫长的时期,通常把软件经历的这个漫长时期称为生存周期。

软件生存周期一般可分为三个阶段:

软件定义阶段:主要进行软件的可行性研究和需求分析工作,研究该项目是否值得去解决,是否存在可行的解决办法并确定待开发的软件系统做什么。

软件开发阶段:进行软件的概要设计、详细设计、编码和测试工作。对软件的体系架构、数据结构和算法等进行设计和编码实现,并对编码结果进行测试,得到符合需求分析要求的软件。

软件运行与维护阶段:通过各种维护活动使软件系统持久地满足用户的需求。

3、简述事务分析设计的设计步骤。

(1)划分边界,明确数据流图中的接收路径、事务中心和加工路径。

(2)建立事务型结构的上层模块。

(3)分解、细化接收路径和加工路径,得到事务型结构的下层模块。

(4)按照体系结构设计原则对初始的软件结构进行优化。

4、什么是数据字典?其作用是什么?它有哪些条目?

答:数据字典是用来定义数据流图中各个成分具体含义的,它以一种准确的、无二义性的说明方式提供有关元素的一致的定义和详细的描述。它和数据流图共同构成了系统的逻辑功能模型,是需求规格说明书的主要组成部分。数据字典是为查找数据流图中有关名字的详细定义而服务的。数据字典有以下四类条目:数据流、数据存储、加工、数据项。

五、应用题(本大题共2小题,每小题10分,共20分)

1、将下列伪代码转换成用NS图和PAD图表示。

S1;

if (x>5) then S2

else S3;

while (y<0) S4;

S5;

if u>0 then

{

S6;

while (k>5) S7;

}

S8;

2、某培训中心要研制一个计算机管理系统。它的业务是:将学员发来的信件收集分类后,按几种不同的情况处理。

1)如果是报名,则将报名数据送给负责报名事务的职员,他们将查阅课程文件,检查该课程是否额满,然后在学生文件、课程文件上登记,并开出报名单交财务部门,财务人员开出发票给学生。

2)如果是想注销原来已选修的课程,则由注销人员在课程文件、学生文件和帐目文件上做相应的修改,并给学生注销单。

3)如果是付款,则由财务人员在帐目文件上登记,也给学生一张收费收据。

画出数据流图,并转换为软件结构图。

第六章

1、程序复杂度的度量方法主要包括_环形复杂度_、_文本复杂度_和交点复杂度。

2、提高程序效率的根本途径在于选择良好的__设计方法__、良好的__数据结构_和良好的_算法_,而不是靠编程时对程序语句做调整。

3、程序设计语言的心理特性在语言中的表现形式为_歧义性__、_简洁性_、_局部性_、

顺序性__。

4、源程序中加注释是帮助理解程序的重要手段,注释分为_序言性注释_、描述性注释两类。

5、为开发一个特定的项目,在选择程序设计语言时,必须从__心理___、__工程_、__技术三个特性考虑。

6、与选择编程语言无关的因案是( C )。

A.软件开发的方法

B.软件执行的环境

C.程序设计风格

D. 软件开发人员的知识

7、在结构化程序设计思想提出之前,在程序设计中曾强调程序的( B),现在人们更重视程序的( D )。

A.技巧性

B.效率

C.一致性

D.可理解性

8、程序设计语言一般来说,可划分为低级语言和高级语言两大类.与高级语言相比用低级语言开发的程序,具有( C )特点。

A.运行效率低,开发考虑低

B.运行效率低,开发效率高

C. 运行效率高,开发效率低

D.运行效率高,开发效率高

第七章

1、单独测试一个模块时,有时需要一个_驱动_程序_驱动(调用)__被测试的模块,有时还需要一个或几个__桩___模块模拟由被测试模块调用的模块。

2、黑盒法测试时,如果选择的测试用例需考虑输入条件的各种组合,应采用_因果图_法进行测试。

3、运行被测试程序的方法称为___动态___测试。

4、用等价类划分法设计测试用例时,如果被测试程序的某个输入条件规定了取值范围,则可确定一个合理的等价类和_两个不合理的等价类__。

5、软件测试中白盒法是分析程序的__内部(逻辑)结构___来设计测试用例,黑盒法是根据程序的__功能__来设计测试用例。

6、在集成测试时,采用先独立测试每一模块,然后再连到一起运行,这种方式称为__非渐增式_集成测试。

7、在__单元__测试中,主要测试详细设计和编码实现阶段中的错误。

8、自顶向下结合的渐增式测试法,在组合模块时有两种组合策略:_宽度优先_和_深度优先。

9、在白盒测试技术测试用例的设计中__语句覆盖_是最弱的覆盖标准。

10、测试的关键问题是_如何设计(选择)测试用例_。

11、软件测试中设计测试用例主要由输入数据和(C )两部分组成。

A.测试规划

B.测试计划

C.预期输出结果

D.以往测试记录分析

12、成功的测试是指( B )。

A.运行测试实例后未发现错误

B.发现程序的错误

C.证明程序正确

D.改正程序的错误

13、月收入<=1600元者免税,现在用输入数1600元和1601元测试程序,则采用的是(A )方法。

A.边界值分析

B.条件覆盖

C.错误推测

D.等价类

14、现有一个计算类型的程序,它的输入只有一个Y,其范围是-50≦Y≦50,现从输入的角度考虑设计了一组测试用例:-100,0,100,设计这组测试用例的方法是(B)。

A.条件覆盖法

B.等价分类法

C.边界值分析法

D.错误推测法

15、软件测试主要包括(C)方面的查错和纠错。

1) 软件需求分析 2)软件设计 3)软件编码

A.3

B.1和2

C. 2和3

D.1、2和3

16、白盒测试技术测试用例的设计中,( C)是最强的覆盖标准。

A.语句覆盖 B.条件覆盖

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

17、以下说法错误的是( D )。

A.判定覆盖包含了语句覆盖,但它可能会使一些条件得不到测试。

B.条件覆盖的检错能力一般较判定覆盖强,但有时达不到判定覆盖要求。

C.判定/条件覆盖包含了判定覆盖和条件覆盖的要求。

D.凡满足条件组合覆盖标准的测试用例,也必然满足其他所有覆盖种类的覆盖标准。

E.路径覆盖可能使测试用例达不到条件组合覆盖的要求。

18、在集成测试中,( A )是正确的。

A.测试底层模块时不需要桩模块

B.驱动模块的作用是模拟被调模块

C.自顶向下测试方法易于设计测试结果

19、软件测试是软件质量保证的重要手段,下述(B)是软件测试的最基础环节。

A.功能性测试

B.单元测试

C.结构测试

D.确认测试

20、对一个采用二分法的检索程序,可以列出以下这些需要的测试用例

1)被检测的表格只有一行

2)表格的行数恰好是2的幂次

3)表格的行数比2的幂次多1或少1

则此测试方法称为( C )。

A.等价分类法 B.边界值方法

C.错误推测法 D.因果图法

软件工程复习考试题库带答案完整版

一、选择题 1、白盒测试法是通过分析程序的(C)来设计测试用例的。 A.应用范围B.功能 C.内部逻辑 D.输入数据 2、风险预测从两个方面评估风险,即风险发生的可能性以及(D)。 A.风险产生的原因 B.风险监控技术 C.风险能否消除D.风险发生所产生的后果 3、极限编程(XP)由价值观、原则、实践和行为四部分组成,其中价值观包括沟通、简单性和(C)。 A.好的计划 B.不断的发布 C.反馈和勇气 D.持续集成 4、等价分类法的关键是(C)。 A.确定等价类的边界条件 B.按照用例来确定等价类 C.划分等价类 D.确定系统中相同和不同的部分 5、下列不属于黑盒测试的技术是(A)。 A.程序段或语句的功能 B.模块的接口 C.数据的名称和用途D.模块的功能 6、为了提高模块的独立性,模块之间最好是(D)耦合。 A.控制耦合 B.公共耦合 C.内容耦合D.数据耦合 7、一个软件开发过程描述了“谁做”,“做什么”,“怎么做”和“什么时候做”,RUP用(A)来表述“谁做”。 A.角色 B.活动 C.制品D.工作流 8、功能性注释嵌入在源程序内部,它是用来说明(A)。 A.程序段或语句的功能B.模块的接口 C.数据的名称和用途 D.模块的功能 9、在结构化分析方法中,数据字典是重要的文档。对加工的描述是数据字典的组成内容之一,常用的加工描述方法有( C )。 A.只有结构化语言B.有结构化语言和判定树 C.有结构化语言、判定树和判定表 D.有判定树和判定表 10、某银行为了使其网上银行系统能够支持信用卡多币种付款功能而进行扩充升级,这需要对数据类型稍微进行一些改变,这一状况需要对网上银行系统进行(B)维护。 A.正确性 B.适应性 C.完善性 D.预防性 11、软件危机的主要原因是(A)。 A软件本身特点与开发方法?B对软件的认识不够 C软件生产能力不足D软件工具落后 12、DFD是常用的进行软件需求分析的图形工具,其基本符号是(C)。 A.输入、输出、外部实体和加工

软件工程期末考试题含答案

一、选择题 1.瀑布模型把软件生命周期划分为八个阶段:问题的定义、可行性研究、软件需求分析、系统总体设计、详细设计、编码、测试和运行、维护。八个阶段又可归纳为三个大的阶段:计划阶段、开发阶段和_。 ( C ), A .详细计划 B .可行性分析 C .运行阶段 D.测试与排 错 2.在结构化的瀑布模型中,哪一个阶段定义的标准将成为软件测试年勺系统测试阶段的目标( A ) A .需求分析阶段 B .详细设计阶段 C.概要设计阶段 D .可行性研究阶段, 3.软件工程的出现主要是由于(C ) , A.程序设计方法学的影响 B.其它工程科学的影响 C.软件危机的出现 D.计算机的发展, 4.软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实旅的主要保证是(C) A.硬件环境 B.软件开发的环境 C.软件开发工具和软件开发的环境 D.开发人员的素质 5.软件开发常使用的两种基本方法是结构化和原型化方法,在实际的应用中,它们之间的关系表现为(B) A.相互排斥B相互补充C独立使用 D.交替使用 是软件开发中的一个重要工具,它主要应用于哪种软件开发方法(C) A.基于瀑布模型的结构化方法 B.基于需求动态定义的原型化方法 C.基于对象的面向对象的方法 D.基于数据的数据流开发方法 7.在下面的软件开发方法中,哪一个对软件设计和开发人员的开发要求最高(B) A.结构化方法B原型化方法C面向对象的方法 D.控制流方法 8.结构化分析方法是一个预先严格定义需求的方法,它在实施时强调的是分析对象的(B) A.控制流 B.数据流 C.程序流 D.指令流 9.软件开发的结构化生命周期方法将软件生命周期划分成(A) A.计划阶段.开发阶段.运行阶段 B.计划阶段.编程阶段.测试阶段 C.总体设计.详细设计.编程调试 D.需求分析.功能定义.系统设计 10.软件开发的瀑布模型,一般都将开发过程划分为:分析、设计、编码和测试等阶段,一般认为可能占用人员最多的阶段是(C) A.分析阶段 B.设计阶段 C.编码阶段 D.测试阶段

软件工程导论期末考试试题和答案

1.软件生存周期一般可分为__问题定义__、可行性研究、_需求分析_____、设计编码、__ 测试________、运行与维护阶段。 2.按软件的功能进行划分,软件可以划分为系统软件、支撑软件 和应用软件。 3.可行性研究主要集中在以下四个方面经济可行性、技术可行 性、法律可行性和抉择。 4.用户界面的可使用性是用户界面设计最重要的也是最基本的目标。 5.常见的软件概要设计方法有3大类:以数据流图为基础构造模块结构的___结构化设计 方法_________,以数据结构为基础构造模块的__jackson方法__________,以对象、类、继承和通信为基础的__面向对象设计方法__________。 6.__数据流图________和__数据字典___共同构成系统的逻辑模型。 7.软件测试的方法有__分析方法________和___非分析方法_______(即黑盒法)。 8.单元测试一般以___白盒_____________测试为主,___黑盒______测试为辅。 9.成本估计方法主要有__自底向上估计________、_自顶向下估计_________和算法模型估 计三种类型。 1.下列哪个阶段不属于软件生存周期的三大阶段( C )。 A、计划阶段 B、开发阶段 C、编码阶段 D、维护阶段 2.需求分析是(A )。 3.A、软件开发工作的基础B、软件生存周期的开始 4.C、由系统分析员单独完成的D、由用户自己单独完成的 5.原型化方法是软件开发中一类常用的方法,它与结构化方法相比较,更需要(B )。 6.A、明确的需求定义B、完整的生命周期 7.C、较长的开发时间D、熟练的开发人员 8.软件维护时,对测试阶段未发现的错误进行测试、诊断、定位、纠错,直至修改的回归 测试过程称为( A )。 9.A、改正性维护B、适应性维护 10.C、完善性维护D、预防性维护 11.一般说来,投入运行的软件系统中有错误(A )。

软件工程复习试题及答案

一、填空题(在下划线上填写正确的答案,每题2分,共20分) 1.等价划分是一种黑盒测试技术,这种技术把程序的输入域划分为若干个数。 2.数据流图和数据字典共同构成了系统的逻辑模型。 3.盒图也称为 N-S图。这种表达方式取消了流程线,它强迫程序员以结构化方式思考和解决问题。 4.软件有效性,指软件系统的时间和空间效率。 5.IPO 6.数据流图有四种基本成分:源、终点,处理,存储,数据流。 7. 其中数据项是组成数据流和数据存储的最小元素。 8.软件工程中的结构化分析SA是一种面向数据流的分析方法。 9.软件开发是一个自顶向下逐步细化和求精的过程,而软件测试是一个由下而上的过程。 10.耦合性与内聚性是模块独立性的两个定性标准,将软件系统划分模块时,尽量做到高内聚、低耦合,提高模块的独立性,为设计高质量的软件结构奠定基础。 1.常用的软件开发模型有瀑布模型、原型模型、增量模型、螺旋模型、喷泉模型。 2.软件生存周期一般可分为问题定义、可行性研究、需求分析、设计、编码、

单元测试、运行与维护阶段。 3.软件测试的步骤:单元、集成、系统、验收。 4.数据流图的基本符号包括加工、数据流、数据存储文件、汇点。5.IPO图由输入、处理和输出三个框组成。这个图的特点是能够直观的显示三者之间的关系。 6.面向对象方法是一种运用类、实例、属性、重载、消息传送、多态性等概念来构造系统的软件开发方法。 7.分析已有的程序,寻求比源代码更高级的抽象表现形式,这就是软件的逆向工程。 8.程序测试是对编码阶段的语法错、语义错和运行错进行查找的编码执行活动。 9.为了获得较高的模块独立性,尽量设计出具有高内聚和低藕合性能的模块。 10.常用的测试方法有黑盒测试和白盒测试。 1.可行性研究,应从技术可行性、经济可行性、运行可行性和法律和 社会效益可行性等方面研究。 2.构化程序设计中程序主要的3种基本控制结构是顺序结构、选择结构、循环 结构。 3.软件生存周期中时间最长、花费精力和费用最多的一个阶段是维护 阶段。 4.需求分析阶段,分析人员要确定对问题的综合需求,其中最主要的是功 能需求。

软件工程期末考试总结习题

得分评卷人一、填空题(每空1分,共20分) 1. 软件生存周期一般可分为__问题定义__、可行性研究、_需求分析_____、设计编码、__测试________、运行与维护阶段。 2. 按软件的功能进行划分,软件可以划分为系统软件、支撑软件和应用软件。 3. 可行性研究主要集中在以下四个方面经济可行性、技术可行性、法律可行性和抉择。 4. 用户界面的可使用性是用户界面设计最重要的也是最基本的目标。 5. 常见的软件概要设计方法有3大类:以数据流图为基础构造模块结构的___结构化设计方法_________,以数据结构为基础构造模块的__jackson方法__________,以对象、类、继承和通信为基础的__面向对象设计方法__________。 6. __数据流图________和__数据字典___共同构成系统的逻辑模型。 7. 软件测试的方法有__分析方法________和___非分析方法_______(即黑盒法)。 8. 单元测试一般以___白盒_____________测试为主,___黑盒______测试为辅。 9. 成本估计方法主要有__自底向上估计________、_自顶向下估计_________和算法模型估计三种类型。 五、简答题(每小题5分,共20分) 1. 什么是软件危机?为什么会产生软件危机? 2. 耦合性有哪几种类型? 其耦合度的顺序如何 3. 简述需求分析工作可以分成哪四个方面?软件需求分析的有哪三个基本原则? 4. 什么是黑盒测试法? 得分评卷人六、分析设计题(每小题10分,共20分) 1. 某“调整工资”处理模块接受一个“职称”的变量,根据职称的不同(助教,讲师,副教授,教授)作不同的处理,其中若是助教还必须输入工龄,只有工龄超过两年才能调整工资。请用等价类划分法设计测试用例。 2. 假定某航空公司规定,乘客可以免费托运重量不超过30公斤的行李。当行李重量超过30公斤时,对头等舱的国内乘客超重部分每公斤收费4元,对其它舱的国内乘客超重部分每公斤收费6元,对国外乘客超重部分每公斤收费比国内乘客多一倍,对残疾乘客超重部分每公斤收费比正常乘客少一半。用判定树表示计算行李费的算法。 一、填空题(每空1分,共20分) 1. 问题定义需求分析测试 2. 系统软件支撑软件 3. 经济可行性技术可行性法律可行性 4. 可使用性 5. 结构化设计方法(SD)Jackson方法面向对象设计方法(OOD) 6. 数据流图数据字典 7. 分析方法非分析方法 8. 白盒黑盒 9. 自顶向下估计自底向上估计 五、简答题(每小题5分,共20分) 1. 答:软件危机是指软件在开发和维护过程中遇到的一系统严重问题,主要包含二方面的问题,一是如何开发利用软件,二是如何维护数量不断膨胀的已有软件。产生软件危机的原

软件工程考试题(带答案)..

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

2019最新软件工程导论期末考试题库及答案

2019最新软件工程导论期末考试题库及答案 1.填空题 1.一般来说,可以从__一致性__、_完整性___、_现实性____和_有效性___四个方面验证软件需求的正确性。 2.IPO图是_输入、处理和输出图_的简称,它是美国IBM 公司发展完善起来的一种图形工具。 3.系统流程图是描述__物理模型__的传统工具,用图形符 号表达了系统中各种元素之间的_____信息流动_____情况。4.数据流图中的箭头表示数据流,椭圆或圆形表示数据处理,矩形表示数据的源点/终点。5.软件测试的步骤按顺序分别是:___单元测试_____、子系统测试、系统测试(子系统和系统测试通常称为集 成测试)、__确认测试__和_____系统测试(集成测试)____ 6.软件生命周期一般可分为_问题定义_、可行性研究、_需求分析_、设计编码、_测试_、运行与维护阶段。 7.可行性研究主要集中在以下四个方面_经济可行性_、__技术可行性____、__法律可行性___和抉择。 8.在结构化设计中,HIPO图应用在总体设计阶段,由IPO图和_层次图_两部分组成。 9.复杂问题的对象模型通常由下述五个层次组成:主题层、___类与对象_层、__结构___层、_属性_层和__服务_层。 10.实施精化设计的目标是基于模块的“高内聚低耦合” 的原则,提高模块的_独立性。 11.软件生命周期一般可分为___问题定义_、可行性研究、__需求分析__、概要设计__、详细设计、编码、__软件测试_、运行与维护阶段。 12.面向对象的数据存储管理模式分为__文件__、_关系数据库__和__面向对象数据库___三种。 13.单元测试一般以_白盒_测试为主,__黑盒__测试为辅。

软件工程复习题及答案

软件工程复习题(一) 一、选择题 1、瀑布模型本质上是一种() A、线性顺序模型 B、顺序迭代模型 C、线性迭代模型 D、及早见产品模型 2、使用程序设计的控制结构导出测试用例的测试方法是() A、黑盒测试 B、白盒测试 C、边界测试 D、系统测试 3、软件结构图的形态特征能反映程序重用率的是() A、深度 B、宽度 C、扇入 D、扇出 4、软件结构图中,模块框之间若有直线连接,表示它们之间存在() A、调用关系 B、组成关系 C、链接关系 D、顺序执行关系 5、需求分析最终结果是产生() A、项目开发计划 B、需求规格说明书 C、设计说明书 D、可行性分析报告 6、快速原型模型的主要特点之一是( ) A、开发完毕才见到产品 B、及早提供全部完整的软件产品 C、开发完毕后才见到工作软件 D、及早提供工作软件 7、若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0,1.0],现从输入的角度考虑一组测试用例:-1.001,-1.0,1.0,1.001。设计这组测试用例的方法是( ) A、条件覆盖法 B、等价分类法 C、边界值分析法 D、错误推测法 8、软件详细设计主要采用的方法是( ) A、模块设计 B、结构化设计 C、PDL语言 D、结构化程序设计 9、开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做( ) A、.软件工程 B、软件周期 C、软件危机 D、软件产生 10、按软件生命周期方法设计软件的过程中,画数据流图属于下面哪个阶段的工作() 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、CASE工具的支持 B、如何开发演化型模型 C、项目主管的支持 D、开发人员的素质 16、程序流程图(框图)中的箭头代表( )。 A、数据流 B、控制流 C、调用关系 D、组成关系 17、一个只有顺序结构的程序,其环形复杂度是( )。 A、0 B、1 C、3 D、不确定的

软件工程期末考试参考试题

软件工程期末考试参考试题 一、填空题 1、软件生存周期一般可分为问题定义、可行性研究、需求分析、设计编码、测试、运 行与维护阶段。 2、按软件的功能进行划分,软件可以划分为系统软件、支撑软件和应用软件。 3、可行性研究主要集中在以下四个方面经济可行性、技术可行性、法律可行性和抉择。 4、用户界面的可使用性是用户界面设计最重要的也是最基本的目标。 5、常见的软件概要设计方法有3大类:以数据流图为基础构造模块结构的结构化设计 方(SD),以数据结构为基础构造模块的Jackson方法,以对象、类、继承和通信为基础的面向对象设计方法(OOD)。 6、数据流图和数据字典共同构成系统的逻辑模型。 7、软件测试的方法有分析方法和非分析方法(即黑盒法)。 8、单元测试一般以白盒测试为主,黑盒测试为辅。 9、成本估计方法主要有自底向上估计、自顶向下估计和算法模型估计三种类型。 10. 文档(document)—一种数据媒体和其上所记录的(数据)。 11 机器语言、汇编语言:依赖于机器,面向(机器) 12. 软件有效性(efficiency),指软件系统的时间和(空间)效率。 13. 软件定义过程可通过软件系统的(可行性研究)和需求分析两个阶段来完成。 14. 软件定义的基本任务是确定软件系统的工程(需求),也就是要搞清“做什么”。 15. 为了使用户需求逐步精细化、完全化、一致化,通常采用(需求建模技术)。 16. 一个软件的深度是指其控制的(层数)。 17. 以详细设计说明书为输入,将该输入用某种程序设计语言翻译成计算机可以理解并 最终可运行的代码的过程叫(编码)过程。 18. 软件维护是软件生命周期的(最后)一个阶段 19. 软件工程由(方法)、工具和过程三部分组成,称软件工程的三要素。 20. 基于计算机系统的软件要素中的软部件由程序、数据和(文档)组成。 21. 数据流图就是用来刻画数据流和转换的信息系统建模技术。它用简单的图形记号分 别表示数据流、转换、(数据源)以及外部实体。 22. 被继承的类我们称之为基类(父类),在基类的基础上新建立的类我们称之为派生 类子类。 23. 流程图也称为程序框图是最常用的一种表示法,它有顺序、分支和(循环)三个基 本控制构件。 24. 机器语言和汇编语言,也称为(低级)语言。 25. 软件测试是执行程序发现并排除程序中潜伏的(错误)的过程。 26. 软件可维护性,是指软件产品交付使用后,在实现改正潜伏的错误、改进性能等属性、适应环境变化等方面工作的(难易)程度。 27. 软件可理解性,指系统具有清晰的结构,能直接反映问题的(需求)。 28 在实体-关系图简称E-R图中,数据对象实体用长方形、关系用(菱形)、属性用椭 圆表示。 29. 建立数据流模型要遵循的原则包括:每个加工至少应有一个输入数据流以反映被处 理数据的来源和一个(输出)数据流来反映加工的结果 30. 从工程管理的角度软件设计可分为概要设计和(详细)设计两大步骤。

软件工程导论期末考试题

一、单项选择题 1.适合于面向对象方法学的软件生存周期模型是( B ) A.瀑布模型 B.喷泉模型 C.螺旋模型 D.增量模型 2.从实用角度看,数据规范化程度在大多数场合选用第( C )范式。 A. 1 B.2 C.3 D.5 3. 可行性分析研究的目的是( A )。 A.项目值得开发否 B.争取项目 C.开发项目 D.规划项目 4. 模块的内聚性最高的是 ( D ) A.逻辑内聚 B.时间内聚 C.偶然内聚 D.功能内聚 5.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做 ( B ) A. 软件工程 B. 软件危机 C. 软件周期 D. 软件产生 6. 需求分析阶段的任务是确定( D ) A.软件开发方法 B.软件开发工具 C.软件开发费 D.软件系统的功能 7. 完整的软件结构通常用( B )图来表示。 A. IPO 图 B. HIPO 图 C.PAD 图 D.DFD 图 8. 在白盒法技术测试用例的设计中( A )是最弱的覆盖标准。 A.语句 B.路径 C.条件组合 D.判定 9?对象实现了数据和操作的结合,使数据和操作( C )于对象的统一体中。 A.结合 B.隐藏 C.封装 D.抽象 10. 在数据流图中,圆代表( C )。 A.源点 B.终点 C.加工 D.模块 11. 模块内聚度越高,说明模块内各成分彼此结合的程度越( B )。 A.松散 B.紧密 C.无法判断 D.相等 12. 软件测试方法中,黑盒、白盒测试法是常用的方法,其中黑盒测试主要用于测试( B )。 A.结构合理性 B.软件外部功能 C.程序正确性 D.程序内部逻辑 13. 面向对象开发方法中, ( C )是占主导地位的标准建模语言。 A.Booch 方法 B.Coad 方法 C.UML 语言 D.OMT 方法 14. 软件需求分析的主要任务是准确地定义出要开发的软件系统是( C ) A.如何做 B.怎么做 C.做什么 D.对谁做 15. 结构化程序设计的一种基本方法是( C ) A.筛选法 B.迭代法 C.逐步求精法 D.递归法 二、填空题 1. 目前使用最广泛的软件工 程学方法分别是传统方法学和(面向对象方法学 ) )和事务流。 文档 ) 。 ( 重复 )三种结构。 自顶向下 的集成测试方法,对软件结构中下层使 6. 软件维护包括 ( 改正性维护 )、适应性维护、完善性维护、预防性维护。 7. 面向对象方法学建模得到的三个基本子模型是 (对象建模 ) .动态模型、功能模型。 8. 复杂大型问题的对象模型通常由主题 2. 数据流图中信息流的类型有(变换流 3. 软件的定义是:软件 =程序+数据+ 4. 经典结构程序设计包括顺序、选择和 5. 集成测试时对软件结构中上层使用 用 ( 自底向上 ) 的集成测试方法。

《软件工程》期末考试参考题及答案

一、填空题(每空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 )。

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

软件工程考试题 简答题 1、什么叫软件? 软件就是计算机系统中与硬件相互依存的另一部分,它就是包括程序,数据及其相关文档的完整集合 2、什么叫软件危机?软件危机包含哪两点?软件危机产生的原因就是什么? 软件危机就是指在计算机软件开发与维护过程中所遇到的一系列严重问题。包括两点: (1)如何开发软件,以满足对软件日益增长的需求; (2)如何维护数量不断膨胀的已有软件。 软件开发与维护过程中存在的许多严重问题,一方面与软件本身的特点有关,另一方面也与软件开发与维护的方法不正确有关。具体表现如下: (1)软件就是逻辑部件而不就是物理部件。 (2)软件的规模越来越大,复杂性越来越大。 (3)轻视需求分析的重要性,轻视软件维护的错误观点与方法。 3、什么叫软件工程? 1968年在第一届NATO会议上的早期定义: “建立并使用完善的工程化原则,以较经济的手段获得能在实际机器上有效运行的可靠软件的一系列方法”。 1993年IEEE的定义: “①软件工程就是:把系统的、规范的、可度量的途径应用于软件开发、运行与维护过程,也就就是把工程应用于软件;②进而研究①实现的途径”。 我们国家最近定义:软件工程就是指导计算机软件开发与维护的工程学科。它采用工程的概念、原理、技术与方法来开发与维护软件,把经过时间考验而证明正确的管理技术与当前能够得到的最好的技术方法结合起来。 4、两种软件工程方法学开发软件时要建立哪些模型? 软件工程方法学包括:传统方法学与面向对象方法学。常用的开发模型有: 瀑布模型(需求稳定,而且可以预先指定) 原型模型(需求模糊或者随时间变化) 增量模型(分析员先作出需求分析与概要设计,用户参与逐步完善) 螺旋模型(将瀑布模型与原型化模型结合起来,并加入了风险分析) 喷泉模型(使开发过程具有迭代性与无间隙性) 5、软件过程模型有哪些?简述它们的特点。 过程模型分为五大类:1、管理过程模型。2、瀑布模型(又称为生命周期模型)。3、增量过程模型:包括增量模型,,RAD模型。4、烟花过程模型:包括原型开发模型,螺旋模型,协同开发模型。5、专用过程模型:包括机遇构建的开发模型,形式化方法模型,面向方面的软件开发模型。 6、什么就是软件生命周期? 一个软件从定义,开发,使用与维护,直到最终被废弃,要经历一个漫长的时期,通常把软件经历的这个漫长时期称为生命周期 7、软件生命周期有哪几个阶段与步骤? 三个阶段:定义、开发、维护 八个步骤:问题定义、可行性研究、需求分析;总体设计、详细设计、编码与单元测试、综合测试;运行维护。 8、计算机软件的开发经过哪三个大阶段? 三个阶段:定义、开发、维护 9、软件开发的各阶段的任务就是什么? 定义阶段:问题定义--任务:关于规模与目标的报告书;可行性研究--任务:系统的高层逻辑模型:数据流图,成本/效益分析;需求分析--任务:系统的逻辑模型:数据流图,数据字典,算法描述。 开发阶段:总体设计--任务:系统流程图,成本/效益分析,推荐的系统结构:层次图/结构图;详细设计--任务:HIPO图或PDL 图;编码与单元测试--任务:源程序清单,单元测试方案与结果;综合测试--任务:综合测试方案,结果集成测试,验收测试,完整一致的软件配置。 维护阶段:软件维护--任务:维护记录以及改正性维护,适应性维护,完整性维护与预防性维护

软件工程导论》期末考试试题与答案

《软件工程导论》期末考试-试题与答案 一、填空题 1.软件工程中的结构化分析 SA 是一种面向________的分析方法。 2.软件模块独立性的两个定性度量标准是_________________。 3.软件开发是一个自顶向下逐步细化和求精的过程,而软件测试是一个________的过程。 4. ________和数据字典共同构成了系统的逻辑模型 5. ___________是一种黑盒测试技术,这种技术把程序的输入域划分为若干个数据类,据此导出测试用例。二、单选 题 1.在软件危机中表现出来的软件质量差的问题,其原因是_______。A.软件 研发人员素质太差B.用户经常干预软件系统的研发工作C.没有软件质量标 准 D.软件开发人员不遵守软件质量标准2.在软件质量因素中,软件在异常条件下仍能运 行的能力成为软件的_____。A.安全性B.健壮性C.可用性D.可靠性 3.在下列测试技术中,______不属于黑盒测试技术。A.等价 划分B.边界值分析C.错误推测D.逻辑覆盖 4.软件工程方法是在实践中不断发展着的方法,而早期的软件工程方法主要是指______。A.原型化方法B.结构化方法C.功能化方法D.面向对象方法 5. ______是把对象的属性和操作结合在一起,构成一个独立的对象,其内部信息对外界是 隐蔽的,外界只能通过有限的接口与对象发生联系。A.多态 B.继承C.封装D.消息 6. Jackson 方法是在软件开发过程中常用的方法,使用 Jackson 方法时可以实现______。A.从数据结构导出程序结构B.从数据流图导出初始结构图C.从模块结构导出数据结构D.从模块结构导出程序结构 7.软件测试时为了________而执行程序的过程。A.纠正 错误B.发现错误 C.避免错误 D.证明错误 8.在软件系统中,一个模块应具有什么样的功能,这是由_____决定的。A.总体 设计B.需求分析C.详细设计D.程序设计 9.面向对象分析是对系统进行_________的一种方法。A.需求 分析B.程序设计C.设计评审D.测试验收 10.软件文档是软件工程实施中的重要部分,它不仅是软件开发各阶段的重要依据,而 且影响软件的_______。A.可理解 性B.可维护性C.可扩展性D.可 移植

软件工程复习题及参考答案

《软件工程》课程复习资料 一、单项选择题: 1.下面哪些UML图描述系统行为[ ] A.用例图 B.类图 C.对象图 2.属于概要设计活动的是[ ] A.软件结构设计 B.数据结构设计 C.算法设计 3.属行为型设计模式的是[ ] A.组合模式 B.工厂方法模式 C.观察者模式 4.下列说法正确的是[ ] 是软件开发方法是系统描述语言 是软件开发过程 5.根据程序流程图划分的模块通常是[ ] A.信息内聚的模块 B.过程内聚的模块 C.逻辑内聚的模块 6.如果某程序中的比较个数是m,则其McCabe环形复杂度为[ ] +1 7.按ISO9000-3的说明,下列属软件配置项的是[ ] A.软件开发方法 B.软件开发组织管理制度 C.软件开发合同 8.软件测试的目的是[ ] A.证明软件无错 B.发现软件中的所有错误 C.尽可能发现软件系统中的错误 9.软件重构关注的是[ ] A.软件体系结构 B.模块细节 C.软件性能 10.软件项目开发计划的内容有[ ] A.数据分析 B.风险分析 C.功能分析 11.在UML的类图中,描述整体与部分关系的是[ ] A.泛化关系 B.聚合关系 C.依赖关系 12.软件过程能力成熟度模型CMM用以评价[ ] A.软件过程能力 B.组织能力 C.学习能力 13.因计算机硬件和软件环境的变化而作出的修改软件的过程称为[ ] A.完善性维护 B.改正性维护 C.适应性维护 14.对项目软件而言,软件功能需求信息主要由谁提供[ ] A.软件用户 B.软件开发人员 C.软件项目管理人员 图反映不出[ ] A.系统做什么 B.系统功能由谁做 C.系统如何做 16.原型模型是一种什么开发过程模型[ ] A.自顶向上 B.由外至内 C.增量式 17.系统流程图描述[ ] A.物理系统 B.逻辑系统 C.软件体系结构 18.需求规格说明书的内容不应该包括[ ] A.软件确认准则 B.软件的性能描述 C.算法过程的详细描述 19.适合需求模糊或需求不确定系统开发的软件开发模型是[ ] A.瀑布模型模型 C.原型模型 图中描述系统结构的是[ ] A.组件图 B.顺序图 C.状态图 21.面向对象方法是一种什么软件开发方法[ ] A.层次化 B.迭代增量式 C.逐步求精 22.不可以用来衡量软件可维护性的是

《软件工程》期末考试题及答案++精华版!!

《软件工程》期末考试样题 一、填空题 1.软件开发模型有(瀑布模型)(螺旋模型)第四代技术模型(原型模型)构件组装模型、混合模型。 2.可行性研究一般可以从(经济)可行性、(技术) 可行性、运行可行性、法律可行性和开发可行性等方面来研究。 3.现在向银行存款,年利率为i,若希望在n 年后从银行得到F元,现在应该存入的钱数为 (F/(1+i)n)。 4.数据流图的基本符号包括(数据输入的源 点和数据输出的汇点)、(加工)、(数据流)、(数据存储文件)。 5.Jackson图除了可以表达程序结构外,还可以 表达(数据结构),它首先要分析(数据结构),并用适当的工具来描述。 6.详细设计的工具有图形工具)、表格工具和(语言工具)。 7.IPO图由(输入)、处理和(输出)三个框组 成。这个图的特点是能够直观的显示三者之间的关系。 8.面向对象技术是一整套关于如何看待(软件系统)和(现实世界)的关系,以什么观点来研究问题并进行分析求解,以及如何进行系统构造的软件方法学。面向对象方法是一种运用(对象)、(类)、(继承)、(封装)、聚集、消息传送、多态性等概念来构造系统的软件开发方法。 二、单项选择题 1.下列( A )属于系统软件。 A.WINDOWS 2000 B.Word C.Flash D.3D MAX 2.下列哪个图是N-S图的构件( C )。 A. B.

3.对于螺旋模型,下列( D 卡尔坐标表达的活动。 A. 制定计划 B. 实施工程 C. 风险分析 D. 程序编码 三、多项选择题 1.软件危机可以表现为(ABXD A.产品不符合用户的需要 B.软件产品的质量差 C.软件的可维护性差 D.软件的价格昂贵 2.Jackson图中一般可能包括(A.表头 B.表体 C.表名 D.字段名 AD )。、内容耦合是最高程度的耦合 、应该尽量使用内容耦合 、高级语言一般设计成允许内容耦合的形式、如果一个模块有多个入口,可能发生内容.下列属于不标准的书写格式( BCD )。、书写时适当使用空格分隔 、一行写入多条语句 、嵌套结构不使用分层缩进的写法 、程序中不加注释 ,错误的) 软件生存周期是从软件开始开发到开发结束 () 系统流程图是一个典型的描述逻辑系统的传() 数据流图和数据字典共同构成系统的逻辑 A

软件工程-期末考试大题考试题型

销售店员结算一件商品系统的描述如下:顾客到柜台前结算,店员使用UPC 读卡器读取商品名称和价格,管理员可以对固定种类商品18(18 岁以下禁止)结算,库存店员通过UPC 读卡器管理库存。 2020-12-12

【关键字】方案、情况、方法、条件、文件、问题、系统、良好、保持、位置、需要、结构、满足、管理、实现 学校有多个系,每个系有多个老师,一个老师可以讲多门课,一门课也可以有多个老师来讲,一个学生只能在一个学校上课,一个学校至少有一名学生,每个学生可以选多门课。类图示例见图6:

16.给出一组数从小到大的排序算法,分别用下列工具描述其详细过程: (1)流程图;(2)N-S图;(3) PDL语言。 17.欲开发一个银行的活期存取款业务的处理系统:储户将填好的存/取款单和存折交给银行工作人员,然后由系统作以下处理; (1)业务分类处理:系统首先根据储户所填的存/取款单,确定本次业务的性质,并将存/取款单和存折交下一步处理; (2)存款处理:系统将存款单上的存款金额分别记录在存折和帐目文件中,并将现金存入现金库;最后将存折还给储户; (3)取款处理:系统将取款单上的取款金额分别记录在存折和帐目文件中,并从现金库提取现金;最后将现金和存折还给储户。 绘制该系统的数据流图和软件结构图。 27.如图显示某程序的逻辑结构。 试为它设计足够的测试用例,分别实现对程序的判定覆概、条件覆概和条件组合覆概。 覆盖种类需满足的条件测试数据期望结果 判定覆盖A>1,B=0 A=2,B=0 执行S1 A>1,B10或A≤1,B=0或A≤1,B10 A=2,B=1或 A=1,B=0或 A=1,B=1 执行S2 条件覆盖以下四种情况各出现一次 A>1 B=0 A=2,B=0 执行S1 A≤1 B10 A=1,B=1 执行S2 条件组合覆盖A>1,B=0 A=2,B=0 执行S1 A>1,B10 A=2,B=1 执行S2 A≤1,B=0 A=1,B=0 执行S2 A≤1,B10 A=1,B=1 执行S2 Y N N

软件工程导论期末试题

软件工程导论期末考试试题 一.选择(20分) 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、交替使用 7、UML是软件开发中的一个重要工具,它主要应用于哪种软件开发方法(C ) A、基于瀑布模型的结构化方法 B、基于需求动态定义的原型化方法 C、基于对象的面向对象的方法 D、基于数据的数据流开发方法

8、在下面的软件开发方法中,哪一个对软件设计和开发人员的开发要求最高(B ) A、结构化方法 B、原型化方法 C、面向对象的方法 D、控制流方法 9、结构化分析方法是一种预先严格定义需求的方法,它在实施时强调的是分析对象的(B ) A、控制流 B、数据流 C、程序流 D、指令流 10、软件开发的结构化生命周期方法将软件生命周期划分成(A ) A、计划阶段、开发阶段、运行阶段 B、计划阶段、编程阶段、测试阶段 C、总体设计、详细设计、编程调试 D、需求分析、功能定义、系统设计 二.填空(20分) 21.系统流程图是描述物理模型的传统工具,用图形符号表示系统中各个元素 表达了系统中各种元素之间的(信息流动)情况。 22.成本效益分析的目的是从(经济)角度评价开发一个项目是否可行。 23.自顶向下结合的渐增式测试法,在组合模块时有两种组合策略:深度优先 策略和(宽度优先策略) 。 24.独立路径是指包括一组以前没有处理的语句或条件的一条路径。从程序图 来看,一条独立路径是至少包含有一条(在其他独立路径中未有过)的边的路径。 25.汇编语言是面向(机器) 的,可以完成高级语言无法完成的特殊功能,如与外部设备之间的一些接口工作。 26.在JSP方法中解决结构冲突的具体办法是(中间数据结构或中间文件)。 27.详细设计的任务是确定每个模块的内部特性,即模块的算法、(使用的数据)。 28.所有软件维护申请报告要按规定方式提出,该报告也称( 软件问题)报告。 29.有两类维护技术:在开发阶段使用来减少错误、提高软件可维护性的面向 维护的技术;在维护阶段用来提高维护的效率和质量的(维护支援)技术。 30.科学工程计算需要大量的标准库函数,以便处理复杂的数值计算,可供选 择的语言有:(FORTRAN语言)、PASCAL语言、C语言和PL/1语言。三.判断(10分)

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

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

相关文档
最新文档