文档库 最新最全的文档下载
当前位置:文档库 › 软件工程考试题(含答案)

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

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

软件工程考试题

简答题

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图;编码和单元测试--任务:源程序清单,单元测试方案和结果;综合测试--任务:综合测试方案,结果集成

测试,验收测试,完整一致的软件配置。

维护阶段:软件维护--任务:维护记录以及改正性维护,适应性维护,完整性维护和预防性维护

10、软件设计分哪两个阶段?总体设计的两个阶段分别是什么?

分为总体设计和详细设计两个阶段。

11、总体设计包括系统设计(划分出组成系统的程序、文件、数据库、人工过程和文档等物理元素)和结构设计(确定系统中每个程序是由哪些模块组成的,以及这些模块相互间的关系,不涉及模块内部算法流程)

12、软件与硬件的区别是什么?

软件是一种逻辑部件,而不是具体的物理部件。软件在开发、生产、使用、维护等方面与硬件相比有明显差异。软件是开发,

硬件是制造软件是自定的,硬件是组装的软件不会磨损,硬件存在机械磨损问题

13、软件需求分析的任务是什么?

需求分析的任务是确定系统必须完成哪些工作,也就是对目标系统提出完整、准确、清晰、具体的要求。一般说来,

需求分析的任务包括下述几方面:

1?确定对系统的综合要求(主要有:功能需求、性能需求、运行需求、将来可能提出的需求。)

2?分析系统的数据要求

3?导出系统的逻辑模型:数据流图、实体-联系图、状态转换图、数据字典、算法流程等

4?修正系统开发计划

14、瀑布模型与原型模型分别适用于开发哪些软件?

瀑布模型与原型模型分别适用于开发哪些软件瀑布模型适合于需求稳定,而且可以预先指定的大型系统工程项目。

原型模型适合于需求模糊或者随时间变化的中小型项目

15、数据流图的作用是什么?如何画

数据流图简称DFD(Data Flow Diagram)图,它是以特定的图形符号描述系统逻辑模型的工数据流图具;它从数据传

送和加工的角度抽象的描述信息在系统中的流动和数据处理的过程;它是开发人员与用户之间交流信息的通信工具;

它也是系统分析与系统设计的工具。数据流图画法总结

1?先找出数据源点和汇点。它们是外部实体,由它们确定系统与外界的接口。

2. 找出外部实体的输出数据流与输入数据流。画出顶层数据流图。

3?从顶层加工出发,逐步细化,画出所需子图。

4. 分析系统的主要处理功能,把每一个处理功能作为一个加工,并且确定它们之间的数据流入、流出关系,画出第一层数据流图。

5. 对流图中的每个加工进行细化,画出所需的子图,直到加工不需再分解为止。

6?按照前面给出原则检查和修改每一层数据流图和子图

16、什么叫数据字典?如何写数据字典?

数据字典是描述数据流图中数据的信息的集合(描述内容包括:数据流图、状态转换图、数据字典E-R图中的数据

信息(数据流、数据存储、外部实体)、控制信息(事件)等,不包括处理)。

如何写?

数据元素的组合方式

顺序:即以确定的次序连接两个或多个分量。例:A+B

选择:即从两个或多个可能的元素中选取一个。例:[A|B]

重复:即把指定的分量重复零次或多次。例:1{A}5

可选:即一个分量是可有可无的(重复零次或一次)

17、软件设计的原则有哪些?

模块化,抽象化与逐步求精,信息隐藏与局部化,模块独立

18、 耦合与内聚分别有哪些?如何定义?如何区分?

耦合衡量不同模块彼此间互相依赖 (连接)的紧密程度 内聚衡量一个模块内部各个元素彼此结合的紧密程度 耦合的种类: 数据耦合:如果两个模块间的通讯信息是若干参数,其中每一个参数都是一个数据元素,称 数据耦合 这种耦合为数

据耦合。这是模块之间影响最小的耦合关系。

标记耦合:当把整个数据结构作为参数传递而被调用模块只需要使用其中一部分数据元素 标记耦合时,这种情况称为

标记耦合。

控制耦合: 那么A 和B 之间 控制耦合如果模块 A 向模块B 所传递的信息控制了模块 B 的内部逻辑,的耦合称为控 制耦合。

公共耦合:如果两个或多个模块都和同一个公共数据域有关,则称为公共耦合。 公共耦合 公共耦合是一种不良的耦

合关系,它给模块的维护和修改带来困难。 如果两个模块共享的数据很多,都通过参数传递很不方便时,可以利用公

共耦合。

内容耦合:如果一个模块和另一个模块的内部属性(即运行程序和内部数据)有关,则称为 内容耦合。

功能内聚:如果一个模块内部的各组成部分的处理动作全都为执行同一个功能而存在, 功能,则称为功能内聚。判断一个模块是不是功能内聚,只要看这个模块是“做什么” 完成多任务。

顺序内聚:如果一个模块内部的各个组成部分执行的几个处理动作有这样的特征: 生的输出数据是后一个处理动作的输入数据,称为顺序内聚。 顺序内聚维护起来不如功能内聚方便,

要修改模块中

的一个功能, 会影响到同一个模块中的

其他功能。

通讯内聚: 如果一个模块内各组成部分的处理动作都使用相同的输入数据或产生相同的输 通讯内聚 出数据,称为通 讯内聚。

过程内聚:如果一个模块内部的各个组成部分的处理动作各不相同, 彼此也没有联系,但他 们都受同一个控制流支配,

决定他们的执行次序,称为过程内聚。

暂时内聚(时间内聚):如果一个模块内的各组成部分的处理动作和时间有关,则称为暂时 :内聚。暂时内聚模块的

处理动作必须在特定的时间内完成。 -----指在一个特定的时间范围内

完成,但完成次序不重要。例如:程序设计中的 模块的初始化。

逻辑内聚:如果一个模块内部的各组成部分的处理动作在逻辑上相似,

但功能都彼此不同或 逻辑内聚: 无关,则称

为逻辑内聚。一个逻辑内聚模块往往包括若干个逻辑相似的动作,使用时可以选 用一个或几个功能。例如:把编辑各

种输入数据的功能放在一个模块中。

机械内聚(偶然内聚):如果一个模块的内部各组成部分的处理动作彼此没有任何联系,则 :称为机械内聚

佃、

详细设计阶段用到了哪些图形工具?

程序流程图(PFD ) 盒图(N-S 图) 问题分析图(PAD )

判定表/判定树(其他非图形工具有过程设计语言( PDL ) 20、

软件工程的启发式规则有哪些?

A. 当模块过大时就应该分解它。

一般按功能分解到成为一个小的功能单一的模块为止。

一般一个模块内包含的语句

在30-50条左右较好(指高级语言)

。分解后不应该降低模块的独立

性。

B. 深度、宽度、扇出和扇入都应适当。好的设计结构通常是顶层扇出比较高,中层扇出比 较少,底层扇入到公共的 实用模块中去(底层模块有高扇入)

。模块的独立性是贯穿始终的

标准,不能为了追求其它目标而违背独立性标准。

C. 对于任何一个内部存在判断调用的模块, 它的判断作用的范围应该是其控制范围的一个子

块,所在层次不要与那些属于判断作用范围的模块所在的层次相隔太 远----越近越好。 D.

力争降低模块接口的复杂程度。模块接口复杂是软件发生错误的一个主要原因。应该仔

细设计模块接口,使得信

并且功能内聚:只执行一个 是完成一个具体的任务,还是

前一个处 顺序内聚:理动作所产

集。存在判断调用的模

息传递简单并且和模块的功能一致。接口复杂或不一致(即看起来传递的数据之间没有联系),是紧耦合或低内聚

的征兆,应该重新分析这个模块的独立性。 E.设计单入口单出口的模块:防止出现内容耦合---多入口(多种处理功能)意味着内容耦合。

F模块功能应该可以预测-----模块是黑合子,输入相同则输出相同,其内部数据结构和接口受到限制。模块的功能应

该能够预测,但也要防止模块功能过分局限。过分局限将导致模块灵活性太差,会出现使用现场的修改。

21、模块的作用域与控制域分别指什么?

模块的控制域:本身及其所有下级模块(包括直接和间接下级模块)。

模块的作用域:受该模块内一个判定影响的所有模块的集合

22、模块的扇入、扇出、深度、宽度分别是什么意思?

深度表示软件结构中控制的层数----粗略的标志一个系统的大小和复杂程度。

宽度是软件结构同一层次上的模块总数的最大值----宽度越大系统越复杂。

模块的扇出指一个模块拥有的直属下级模块的个数,一般扇出数控制在7以内,平均为3模块的扇出或4。

模块的扇入是指一个模块的直接上级模块的个数。

23、软件测试的目的是什么?

软件测试是为了发现错误而执行程序的过程;

测试是程序的执行过程,目的在于发现错误;

软件测试中需要数据,即为测试而精心设计的测试用例,利用测试用例去运行程序,帮助发现程序错误;

一个好的测试用例在于能发现至今未发现的错误;一个成功的测试是发现了至今未发现的错误的测试。

软件测试绝对不是要证明程序的正确性,也证明不了程序的正确性.

24、单元测试有那些内容?

将每一个模块作为一个单独的测试单元,保证每个模块作为一个单元能正确运行。

单元测试主要针对模块的以下五个基本特征进行测试:1?模块接口2?局部数据结构3?重要的执行路径4?错误处理5?边界

条件

25、什么是集成测试?非渐增式和渐增式有什么区别?渐增式如何组装模块?

将模块组合起来成为一个完整的系统对其进行测试叫做集成测试。不论是子系统测试还是系统测试,都兼有检测和组

装两重含义,通常称为集成测试。

非渐增式是将模块先进行单元测试然后组装在一起进行测试。渐增式是逐个将未测试的模块组装到已经测试过的模块上去进行集成测试,每加入一个就测试一次。非渐增式需要桩模块和驱动模块、非渐增式开始可以并行测试、渐增式可以及时的发现接口错误,非渐增式很难发现接口发现错误、渐增式开始不能并行测试、渐增式测试比较彻底。

渐增式组装模块有自顶向下和自底向上两种组装方式。

26、什么是确认测试?该阶段有那些工作?

按照需求规格说明书中的确定指标对系统进行功能与性能的测试。该阶段进行明确测试(对照需求规格说明书用黑盒

法进行测试),软件配置测试(文档的完整性,发现遗漏错误及时补充和修改)

27、什么叫流图?如何画出流图?流图的环形复杂度如何计算?

流图是抽象化的程序流图,突出表现控制流?

符号O为流图的一个结点,表示一个或多个无分支语句。箭头为边,表示控制流的方向。在分支结构中,分支的汇聚

处应有一个汇聚结点?每一条边必须终止于一个结点。如果判断中的条件表达式是由一个或多个逻辑运算符

(OR,

AND, NAND, NOR)连接的复合条件表达式,则需要改为一系列只有单个条件的嵌套的判断。

根据程序内单条件分支数或循环个数来度量环形复杂度即程序的复杂度?环形复杂度即程序的复杂度

根据程序内单条件分支数或循环个数来度量环形复杂度即程序的复杂度

V(G)=流图区域数

V(G)=边数-结点数+2

V(G)=单条件判定数+1

28、白盒测试与黑盒测试分别有哪些测试方法?如何对具体问题测试?

白盒测试对程序模块的所有的执行路径至少测试一次;对所有的逻辑判定,取“真”与取“假”白盒测试的两种情况都至少测试一次;白盒测试也叫逻辑覆盖法包括:语句覆盖,判定覆盖,条件覆盖

黑盒测试发现程序中的错误,必须在所有可能的输入条件和输出条件中确定测试数据, 来检查程序是否都能产生正确

的输出。黑盒测试有等价类法和边界值分析法 29、

软件测试的步骤有哪些?每个测试阶段的测试依据是什么?分别有谁来测试?

步骤测试内容时间

单元测试:将每一个模块作为一个单独的测试单元,保证每个模块作为一个单元能正确运行。 (编码测试阶段)

子系测试系统:将经过单元测试的模块放在一起形成一个子系统来测试, 以测试模块间的接口正确性作为主要任务。

(集

中测试阶段)

系统测试:将经过测试的子系统装配成一个完整的系统来测试,检验系统是否确实能实现需求规格说明书中的功能,以 及系统的动态特征是否符合预定要求。 阶段系统测试是指整个计算机系统(包括软硬件)的测试,可与系统的安装和验 收相

结合进行。(集中测试阶段)

验收测试:在用户的参与下,把软件系统作为单一的实体进行测试,使软件系统能满足用户的需要。测试内容与系统测 试基本相同。(验收阶段)

平行测试:新旧两个系统同时运行进行比较,避免风险的同时给用户对新系统一段熟悉的时间 (运行阶段)

30、 什么叫维护?维护的类型有哪些?

软件维护就是在软件已经交付使用之后,为了改正错误或满足新的需要而修改软件的过程。

软件维护

类型有:

1、 改正性维护:对程序使用期间发现的程序错误进行诊断和改正的过程;占维护工作量

2、 适应性维护:配合变化了的环境进行修改软件的活动;占维护工作量 18-25%。

3、 完善性维护:满足用户在使用过程中提出增加新的功能或修改已有功能的建议而进行的

50-66%。

4、 预防性维护:为了改善未来的可维护性或可靠性而修改软件的工作;占维护工作量 31、

UML 中活动图、状态图、顺序图都分别描述什么?

活动图强调的是从活动到活动的控制流, 是一种表述过程基理、 对业务过程、工作流建模,也可以对用例实现甚至是程序实现来建模 状态机图常用来描述业务或软件系统中的对象在外部事件的作用下, 的控制流。

顺序图描述的是对象之间的消息发送关系,而不是类之间的关系 32、

UML 中的事物有哪些?

结构事物:UML 中的名词,它是模型的静态部分,描述概念或物理元素。

行为事物:UML 中的动词,它是模型中的动态部分,是一种跨越时间、空间的行为。 分组事物:UML 中的容器,用来组织模型,使模型更加的结构化。

注释事务:UML 中的解释部分,和代码中的注释语句一样,是用来描述模型的 33、

面向对象的基本概念类、对象、封装、继承等定义是什么?

类(Class )是具有相同属性和服务的一组对象的集合,它为属于该类的全部对象提供了统一的抽象描述,其内部包括 属性和服务两个主要部分。

对象(Object )是系统中描述客观事物的一个实体,它是构成系统的一个基本单位,由一组 属性和对这组属性进行操

作的一组服务组成,是类的一个实例

封装(Encapsulation )是把对象的属性和服务结合成一个独立的系统单位,并尽可能隐藏对象的内部细节。

继承性:如果一个类 A 继承自另一个类 B ,就把这个 A 称为"B 的子类”,而把B 称为"A 的父类"。继承使得相似 对象可以共享程序代码和数据结构,大大减少程序中的冗余信息;继 承可以把已有的一般性的类具体化来提高软件的

可重用性。

多态性(Polymorphism )是指在父类中定义的属性或服务被子类继承后,可以具有不同的数据类型或表现出不同的行 为 34、

用例图的作用是什么?

用例图是外部参与者所能观察到的系统功能的模型图。

由一组用例、 参与者及它们之间的关 系组成。主要用于对系

17-21%。

改进工作;占维护工作量

4%左右

业务过程以及工作流的技术。 活动图它可以用来

对象的状态从一种状态

状态机图 到另一种状态

软件工程考试题带答案

一、选择题 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)。 A.维护工具 B.编码工具 C.测试工具 D.需求分析工具 13.下列叙述中不属于软件生命周期模型的是(D)。 A.原型模型 B.瀑布模型 C.螺旋模型 D.快速组装模型 14.软件设计中,用抽象和分解的目的是(B)。 A.提高易读性 B.降低复杂性 C.增加内聚性 D.降低耦合性 15软件生命周期中所花费用最多的阶段是(D)。 A.详细设计 B.软件编码 C.概要设计 D.软件测试和维护 16.开发软件时对提高开发人员工作效率至关重要的是(B)。

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

一、选择题 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.现在向银行存款,年利率为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

软件工程复习试题及答案

一、填空题(在下划线上填写正确的答案,每题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.需求分析阶段,分析人员要确定对问题的综合需求,其中最主要的是功 能需求。

软件工程期末考试题3

试卷一 中南大学考试试卷 2006--2006 学年学期时间110分钟 专业年级:总分100分,占总评成绩 100% 注:此页不作答题纸,请将答案写在答题纸上 填空题(本题20分,每小题2分) 1. 瀑布模型是以文档为驱动、适合于()软件项目的开发。 2. 需求分析的基本任务是()。 3. 若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0,1.0],现从输入的角度考虑一组测试用例:-1.001,-1.0,1.0,1.001。设计这组测试用例的方法是()。 4. 根据程序流程图划分的模块通常是()内聚的模块。 5. 软件的分类,按其功能可分为:系统软件、()和应用软件。 6. UML的定义包括UML语义和()两个部分。 7. 客观世界中的若干类,通常有两种主要的结构关系:即分类结构和( )。 8. IDEF1X图用来描述系统的()模型,主要有实体、联系和()三种成分,其中实体可分为独立实体和(),且一个实体只能在图中出现一次。 二、简答题(本题30分,每小题5分) 1. 什么是软件工程?软件工程和计算机科学有何区别?

2. 面向对象方法和结构化方法有何区别与联系? 3. 什么是模块的作用域和模块的控制域?为何要求模块的控制域必须在作用域内? 4. 什么是设计模式?试举例说明组合设计模式的应用。 5.什么是依赖倒置原则?它和开闭原则有何联系? 6. 软件生存期过程和软件生存期模型有何联系?瀑布模型有何特点? 三、绘图题(本题34分) 1. 某单位拟开发一个计算机房产管理系统,要求系统具有分房、调房、退房和查询统计等功能。房产科将用户申请表输入系统后,系统首先检查申请表的合法性,对不合法的申请表,系统拒绝接收;对合法的申请表根据类型分别进行处理。 (1) 如果是分房申请,则根据申请者的情况(年龄、工龄、职称、职务、家庭人口等)计算其分数,当分数高于阀值分数时,按分数高低将申请单插到分房队列的适当位置。在进行分房时,从空房文件中读出空房信息,如房号、面积、等级、单位面积房租等,把好房优先分给排在分房队列前面的符合该等级房条件的申请者;从空房文件中删掉这个房号的信息,并从分房队列中删掉该申请单,再把此房号的信息和住户信息一起写到住房文件中,输出住房分配单给住户,同时计算房租,并将算出的房租写到房租文件中。 (2) 如果是退房申请,则从住房文件和房租文件中删除有关信息,再把此房号的信息写到空房文件中。

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

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

软件工程复习题及答案

软件工程复习题(一) 一、选择题 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.软件生命周期一般包括:软件开发期和软件运行期,下述(D )不是软件开发期所应包含的内容。 A需求分析 B 结构设计C程序编制D软件维护 2.软件是一种逻辑产品,它的开发主要是(A )。 A研制B拷贝C再生产D复制 3.以文档作为驱动,适合于软件需求很明确的软件项目的生存周期模型是( C )。 A喷泉模型 B 增量模型C瀑布模型D螺旋模型 4.在软件生存周期中,(B )阶段必须要回答的问题是“要解决的问题是做什么?”。 A详细设计 B 可行性分析和项目开发计划C概要设计D软件测试 5.软件产品与物质产品有很大区别,软件产品是一种(C )产品 A有形 B 消耗C逻辑D文档 6.(C )把瀑布模型和专家系统结合在一起,在开发的各个阶段上都利用相应的专家系统来帮助软件人员完成开发工作。 A 原型模型 B 螺旋模型 C 基于知识的智能模型 D 喷泉模型 7.( B )阶段是为每个模块完成的功能进行具体的描述,要把功能描述转变为精确的、结构化的过程描述。A概要设计 B 详细设计 C 编码 D 测试 8.下列软件开发模型中,适合于那些不能预先确切定义需求的软件系统的开发的模型是(A )。 A 原型模型 B 瀑布模型 C 基于知识的智能模型 D 变换模型 9.下列软件开发模型中,以面向对象的软件开发方法为基础,以用户的需求为动力,以对象来驱动的模型是( C )。 A 原型模型 B 瀑布模型 C 喷泉模型 D 螺旋模型 10.下列软件开发模型中,支持需求不明确,特别是大型软件系统的开发,并支持多种软件开发方法的模型是( D )。 A 原型模型 B 瀑布模型 C 喷泉模型 D 螺旋模型 11.软件特性中,使软件在不同的系统约束条件下,使用户需求得到满足的难易程度称为(C )。 A可修改性B可靠性C可适应性 D 可重用性 12.软件特性中,一个软件能再次用于其他相关应用的程度称为(B )。 A可移植性B可重用性 C 容错性 D 可适应性 13.软件特性中,(A )是指系统具有清晰的结构,能直接反映问题的需求的程度。 A可理解性B可靠性C可适应性 D 可重用性 14.软件特性中,软件产品交付使用后,在实现改正潜伏的错误、改进性能、适应环境变化等方面工作的难易程度称为( B )。 A可理解性 B 可维护性C可适应性 D 可重用性 15.软件特性中,软件从一个计算机系统或环境移植到另一个上去的难易程度指的是(C ). A可理解性B可修改性C可移植性 D 可重用性 16.软件特性中,在给定的时间间隔内,程序成功运行的概率指的是( D )。 A有效性B可适应性C正确性 D 可靠性 17.软件特性中,允许对软件进行修改而不增加其复杂性指的是(A )。 A可修改性B可适应性C可维护性 D 可移植性 18.软件特性中,多个软件元素相互通讯并协同完成任务的能力指的是(B )。 A可理解性B可互操作性C可维护性 D 可追踪性 19.软件特性中,根据软件需求对软件设计、程序进行正向追踪,或根据程序、软件设计对软件需求进行逆向追踪的能力指的是( C )。

软件工程考试题

1、(可行性研究)得目得就就是用最小代价在尽可能短得时间内确定该软件项目就是否能够开发、就是否值得开发。 2、可行性研究得目得不就是就是开发一个软件项目,而就是研究这个项目就是否(就是否做值得)。 3、可行性研究需要从(经济)可行性、(技术)可行性、(操作)可行性与(社会)可行性四个方面分析研究每种解决方案得可行性。 4、技术可行性就是对开发项目得(功能、性能、限制条件)进行分析,确定现有资源条件下,技术风险有多大,项目就是否能实现。 5、经济可行性一般要考虑得情况包括:(成本与效益)。 6、社会可行性所涉及得范围包括(合同、责任、侵权)用户组织得管理模式、范围以及其她一些技术人员常常不了解得陷阱。 7、典型得可行性研究有以下步骤:确定项目得规模与目标、(研究正在运行得系统)、(建立新系统得高层逻辑模型)、导出与评价各种方案、推荐可行得方案与编写可行性研究报告。 8、系统效益=经济效益+(社会效益)。 9、效益分有型效益与(无形)两种。 10、可行性研究得第一个步骤就是(确定项目得规模与目标)。 11、数据字典就就是用来定义数据流图中得(各个成分得具体含义)得。它与数据流图共同构成了系统得(逻辑模型),就是(需求说明书)得主要组成部分。 12、由于数据流就是流动中得数据,所以必须有(流向)。除了与(数据存储)之间得数据流命名外,数据流应该采用名词或名词短语。 七、选择题 1、研究开发资源有效性就是进行( D )可行性研究得一个方面 A、技术 B、经济 C、社会 D、操作 2、在软件可行性研究中、可以从不同得角度对软件进行研究,其中从软件得功能可行性角度考虑得就是( B )可行性 A、经济 B、技术 C、操作 D、社会 3、在遵循软件工程原则开发软件过程中,计划阶段应该依次完成( B ) A、可行性研究、需求分析、问题定义 B、问题定义、可行性研究、需求分析 C、需求分析、问题定义、可行性研究 D、可行性研究、问题定义、需求分析 4、可行性研究要进行得需求分析与设计应就是( C )。 A、详细得 B、全面得 C、简化得 D、彻底得 七、填空题 1、需求分析得基本任务就是要准确地定义(扇新系统得目标),为了满足用户需求,回答系统必须(做什么)得问题。 2、在需求分析阶段,首先进行问题识别,即双方确定对问题得综合需求,这些需求包括:(功能)需求、(性能)需求、(环境)需求、(用户界面)需求。另外还有可靠性、安全性、保密性、可移植性、可维护性等方面得需求。 3、需求分析得困难主要体现在4个方面:问题得复杂性、(交流障碍)、(不完备性与不一致性)、需求易变性。 4、在需求分析阶段进行以下几个方面得工作:识别系统综合要求、(分析系统得数据要求)、导出软件逻辑模型、(编写文档)。

软件工程笔试题及答案

软件工程笔试题及答案 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。1 .软件工程管理的具体内容不包括对_________ 管理。( ) A .开发人员B .组织机构C .控制D .设备2 .在McCall 软件质量度量模型中,_________ 属于面向软件产品操作。( ) 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 .软件测试中根据测试用例设计的方法的不同可分为黑盒测试和白盒测试两种,它们( ) A .前者属于静态测试,后者属于动态测试B .前者属于动态测试,后者属于静态测试C .都属于静态测试D .都属于动态测试8 .程序设计语言的心理特性在语言中表现不应包括( ) A .歧义性B .简洁性C .保密性D .传统性9 .程序的三种基本控制结构的共同特点是( ) A .只能用来描述简单程序B .不能嵌套使用C .单入口,单出口 D .仅用于自动控制系统10 . JSP 方法是一种面向

_________ 的设计方法。( ) A .控制结构B .对象C .数据流D .数据结构11 .当一个模块直接使用另一个模块的内部数据,这种模块之间的耦合为( ) A .数据耦合B .公共耦合C .标记耦合D .内容耦合12 .软件设计的方法有多种,_________ 方法不属于面向数据流的设计方法。( ) A .基于Jackson 图的设计B .基于IDEF 0 图的设计C .交换分析设计D .事务分析设计13 .为高质量地开发软件项目,在软件结构设计时,必须遵循_________ 原则。( ) A .信息隐蔽B .质量控制C .程序优化D .数据共享14 .设在一个模块内有2 个判定,若受其中一个判定影响到的模块集合为A ,而受另一个判定影响到的模块集合为B ,则该模块的作用范围是( ) A . B . C .( )—( ) D .( ) ( )15 .数据流图( DFD )是_________ 方法中用于表示系统的逻辑模型的一种图形工具。( ) A . SA B . SD C . SP D . SC 16 .螺旋模型是一种将瀑布模型和_________ 结合起来的软件开发模型。( ) A .增量模型B .专家系统C .喷泉模型D .变换模型17 .需求规格说明书的作用不包括( ) A .软件验收的依据B .用户与开发人员对软件要做什么的共同理解C .软件可行性研究的依据D .软件设计的依据18 .数据字典是用来定义_________ 中的各个成份的具体含义的。( ) A .流程图B .功能结构图C .系统结构图D .数据流图19 .设年利率为i ,现存入p 元,不计复利,n 年后可得钱数为( ) A . p ﹡(1+i ﹡n) B . p ﹡(i+1) n C . p ﹡(1+i) ﹡n D . p ﹡(i+n) 20 .在软件生产的程序系统时代由于软件规模扩大和软件复杂性提高等原因导致了( ) A .软件危机B .软件工程C .程序设计革命D .结构化程序设

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

软件工程考试题 简答题 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 图;编码与单元测试--任务:源程序清单,单元测试方案与结果;综合测试--任务:综合测试方案,结果集成测试,验收测试,完整一致的软件配置。 维护阶段:软件维护--任务:维护记录以及改正性维护,适应性维护,完整性维护与预防性维护

最新软件工程期末考试题

41.软件是一种产品。 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.需求分析中,开发人员要从用户那里解决最重要的问题是。 A.要让软件做什么√B.要给软件提供哪些信息 C.要求软件工作效率怎样D.要让该软件具有何种结构 8.分层DFD是一种比较严格又易于理解的描述方式,它的顶层图描述了系统的。 A.软件的作者B.输入与输出√C.细节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.输入的信息B.用户使用界面C.软件做什么√D.软件的规模 16.需求分析阶段研究的对象是。 A.软硬件要求B.系统要求C.分析员要求D.用户需求√ 17.系统流程图用于可行性分析中的的描述。 A.目标系统B.当前逻辑模型C.当前运行系统√D.新系统 18.数据字典是用来定义中的各个成分的具体含义的。

软件工程考试题库完整

类型一: 1. 软件定义时期包括两个阶段,它们是(可行性研究)和(需求分析)两个阶段。 2. 数据流图有(4)种基本符号,数据流图中,箭头表示(数据流)。 3. 数据流图有变换型结构和(事务)型结构两种类型。 4. 4个人之间的通信量是(6) 5. 评定模块的独立性的标准是耦合和聚。(耦合)是对软件部块间联系的度量, 按照由弱到强的顺序,可以把它分为(7)类。其中,最弱的是(非直接耦合), 最强的是(容耦合) 6.程序结构的复杂性度量值V(G)取决于程序控制流的复杂程度。顺序结构的V(G)值为(1),选择结构的为(2)。 7. 在模块结构图中,(扇入)是指直接调用该模块的模块数 8.模块的独立性可用耦合和聚的高低来评定,设计较好的模块要求(聚)高、耦合(低)。 9. 语句覆盖测试技术是(白盒测试)方法的一种 10. 等价类划分技术是属于(黑盒测试)方法的 11. 按维护的起因,可以将维护活动分为4类:(改正性维护)、(适应性维护)、完善性维护和预防性维护。完善性维护占总维护量的(50%以上)。 12.软件项目的可行性研究要进行一次(简化的、压缩的)需求分析。 13、系统流程图用于可行性分析中的(当前运行系统)的描述。 14、程序的三种基本控制结构的共同特点是(只有一个入口和一个出口) 15、维护中,因误删除一个标识符而引起的错误是(编码)副作用。 16、(技术评审)是以提高软件质量为目的的技术活动。 17、面向对象方法学的出发点和基本原则是尽可能模拟人类习惯的思维方式,分析、设计和实现一个软件系统的方法和过程,尽可能接近于人类认识世界解决问题的方法和过程。因此面向对象方法有许多特征,如软件系统是由对象组成的;(把对象划分成类,每个对象类都定义一组数据和方法);对象彼此之间仅能通过传递消息互相联系;层次结构的继承。 18、原型化方法是用户和设计者之间执行的一种交互构成,适用于(需求不确定性高的)系统。 19.在下列工具与环境中(结构的基于图形CASE )属于较早期的CASE。 20.Putnam成本估算模型是一个(动态多变量)模型。 21.在McCall软件质量度量模型中,(适应性)属于面向软件产品修改。 22.ISO的软件质量评价模型由3层组成,其中用于评价设计质量的准则是(SQDC )23.软件复杂性度量的参数包括(规模) 24.对象实现了数据和操作的结合,使数据和操作(封装)于对象的统一体中。25.软件调试技术包括(演绎法) 26.瀑布模型的存在问题是(缺乏灵活性) 27.软件测试方法中的静态测试方法之一为(计算机辅助静态分析) 28.软件生命周期中所花费用最多的阶段是(软件维护) 29.第一个体现结构化编程思想的程序设计语言是(PL/1语言) 30.程序的三种基本控制结构是(顺序、选择和重复) 31.在详细设计阶段,经常采用的工具有(PAD ) 32.详细设计的结果基本决定了最终程序的(质量) 33.需求分析中开发人员要从用户那里了解(软件做什么) 34.结构化程序设计主要强调的是(程序易读性)

软件工程期末试题及答案(六)

软件工程期末试题及答案(六) 选择题 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.软件测试用例主要由输入数据和()两部分组成。 A)测试计划B)测试规则C)预期输出结果D)以往测试记录分析 8.成功的测试是指运行测试用例后()。 A)未发现程序错误B)发现了程序错误C)证明程序正确性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)需求规格说明书B)设计说明书C)源程序D)开发计划 16.使用白盒测试方法时,确定测试数据应根据()和指定的覆盖标准。 A)程序内部逻辑B)程序的复杂度C)使用说明书D)程序的功能 17.程序的三种基本结构是()。 A)过程子、程序、分程序B)顺序、选择、循环 C)递归、堆栈、队列D)调用、返回、转移 18.结构化程序设计的一种基本方法是() A)筛选法B)递归法C)归纳法D)逐步求精法 19.软件调试的目的是() A)找出错误所在并改正之B)排除存在错误的可能性 C)对错误性质进行分类D)统计出错的次数

软件工程导论期末试题

软件工程导论期末考试试题 一.选择(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分)

相关文档