当前位置:文档之家› 大学本科软件工程期末试题及答案

大学本科软件工程期末试题及答案

大学本科软件工程期末试题及答案
大学本科软件工程期末试题及答案

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

一、单向选择题

1、软件的发展经历了(D)个发展阶段。

A.一

B.二

C.三

D.四

2、需求分析的任务不包括(B)。

A.问题分析

B.系统设计

C.需求描述

D.需求评审。

3、一个软件的宽度是指其控制的(C)。

A.模块数

B.层数

C.跨度

D.厚度

4、当模块中包含复杂的条件组合,只有(A)能够清晰地表达出各种动作之间的对应关系。

A.判定表和判定树

B.盒图

C.流程图

D.关系图

5、以下不属于逻辑覆盖的是(D)

A.语句覆盖

B.判定覆盖

C.条件覆盖

D.基本路径

6、为适应软件运行环境的变化而修改软件的活动称为(B)

A.纠错性维护

B.适应性维护

C.改善性维护

D.预防性维护

二、填空题

1.软件可靠性是指在给定的时间间隔内,程序成功运行的(概率)

2.高级语言:独立于机器,面向过程或面向(对象)

3.软件项目管理的范围主要集中于3个P上,即:People人员、

Problem问题和(过程)

4.人机界面的风格第一代界面是命令和(询问)方式

5.由于维护或在维护过程中其他一些不期望的行为引入的错误

称为维护的(副作用)

6.在公式V(G)= E –N + 2中:E为程序图G中边的总数;N

为程序图中结点的总数。V(G)又称为图G的环形(复杂度)

7.任何一个基于计算机系统都可以用输入-处理-输出(IPO)图

来描述,它将该系统转换成一个信息变换模型

8.为提高可交互性一般对所有可能造成损害的用户操作动作,应

坚持要求用户(确认),例如,提问“你确实要删除…?”

9.文档是一种数据媒体和其上所记录的(数据)

三、判断题(每小题2分,共24分,错误打X、正确打√)

1.用户对软件需求的描述不精确,往往是产生软件危机的原因之一。

(√)

2.目前,软件项目的进度安排的两种比较常用的方法是程序评估与

审查技术(PERT)和关键路径法(CPM)。(√)

3.一个好的开发人员应具备的素质和能力包括善于与周围人员团结

协作,建立良好的人际关系,善于听取别人的意见。(√)

4.目前的绝大多数软件都不适合于快速原型技术。(X

5.面向数据的设计方法适用场合是具有明显的层次信息结构的应用

如:企事业的信息管理系统;系统软件(如操作系统)等。(√)

6.缺乏处理大型软件项目的经验。是产生软件危机的唯一原因。(X)

7.通常紧致性好的语言一致性就好。(X)

8.测试计划、测试用例、出错统计和有关的分析报告一般不用长期

保存。(X)1401

9.数据输入的一般准则中包括保证信息显示方式与数据输入方式的

协调一致;允许用户定做输入格式等内容。(√)

10.软件也会磨损和老化。(X)

11.完善性维护是提高或完善软件的性能。(√)

12.McCabe建议模块规模应满足:V(G)≤20。(X)

四、简答题(每小题4分,共20分)

1、程序设计语言的三种类型和特点是什么?

1)机器语言、汇编语言:依赖于机器,面向机器

2)高级语言:独立于机器,面向过程或面向对象

3)面向问题语言:独立于机器,非过程式语言(4GL)(2分)2、软件危机

是指在计算机软件开发、使用与维护过程中遇到的一系列严重问题和难题

3、软件项目的质量管理——制定软件质量保证计划,按照质量评价体系控制软件质量要素,对阶段性的软件产品进行评审,对最终软件产品进行确认,确保软件质量

4、好的编程风格应遵循哪四条规则?

1)节简化

2)模块化

3)简单化

4)文档化

5、软件测试中按照错误的性质和范围进行分类可分为:“功能错误”及其它哪些错误?

1)系统错误

2)加工错误(算法错误)

3)数据错误

4)代码错误

五、综合题(每小题10分,共20分)

1、选择语言时要考虑的因素有:项目的应用领域、项目中算法、计算的复杂性和其余哪些内容?

答:

1)项目中数据结构的复杂性

2)用户的性能需求

3)软件运行的环境

4)软件开发人员开发水平

5)可用的编译器和交叉编译器

2、已知一个软件项目的记录,开发人员M=3人,其代码行数=12.1KLOC,工作量E=24PM,成本S=168000美元,错误数N=29,文档页数Pd=365页。试计算开发该软件项目的生产率P、平均成本C、代码出错率EQR和文档率D

解:1.软件开发的生产率P为:

P = L / E = 12.1×103LOC / 24PM = 504 LOC/PM

2.开发每行代码的平均成本C为:

C = S / L = 168000美元/ 12100LOC=13.9美元/LOC

3.代码出错率EQR为:

EQR = N / L = 29个/12.1KLOC=2.4个/KLOC

4.软件的文档率D为:

D = Pd / L = 365页/ 12.1KLOC = 30页/ KLOC

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

一、单向选择题(四选一、每小题3分,共18分)

1、对在数据流图中每一个命令的图形元素均给以定义是(B)

A、条目定义

B、数据字典

C、数据定义

D、数据说明

2、软件的可行性研究中不包括(D)

A、法律可行性

B、技术可行性

C、经济可行性

D、政治可行性

3、根据用户在软件使用过程中提出的建设性意见而进行的维护活动称为(C)

A.纠错性维护

B.适应性维护

C.改善性维护

D.预防性维护

4、人机界面的风格大致经过了(B)代的演变

5、以下不属于白盒测试技术的是(D)

逻辑覆盖

基本路径测试

循环覆盖测试

等价类划分

6、为改正软件系统中潜藏的错误而进行的维护活动称为(A)

纠错性维护

适应性维护

改善性维护

预防性维护

二、填空题(每空2分,共18分)

1.文档(document)—一种数据媒体和其上所记录的(数据)

2.机器语言、汇编语言:依赖于机器,面向(机器)

3.软件有效性(efficiency),指软件系统的时间和(空间)效率

4.软件定义过程可通过软件系统的(可行性研究)和需求分析两个阶

段来完成

5.软件定义的基本任务是确定软件系统的工程(需求),也就是要搞

清“做什么”

6.为了使用户需求逐步精细化、完全化、一致化,通常采用(需求

建模技术)

7.一个软件的深度是指其控制的(层数)

8.以详细设计说明书为输入,将该输入用某种程序设计语言翻译成

计算机可以理解并最终可运行的代码的过程叫(编码)过程

9.软件维护是软件生命周期的(最后)一个阶段

三、判断题(每小题2分,共24分,错误打X、正确打√)

1.缺乏有力的方法学的指导和有效的开发工具的支持,这往往是产

生软件危机的原因之一。(√)

2.一个好的开发人员应具备的素质和能力不包括具有良好的书面和

口头表达能力。(X)

3.在用户需求分析时观察用户手工操作过程不是为了模拟手工操作

过程,而是为了获取第一手资料,并从中提取出有价值的需求。

(√)

4.快速原型技术适用于软件产品要求大量的用户交互、或产生大量

的可视输出、或设计一些复杂的算法等场合。(√)

5.流程图也称为程序(框图)是最常用的一种表示法。(√)

6.面向数据设计方法一般都包括下列任务:确定数据结构特征;用

顺序、选择和重复三种基本形式表示数据等步骤。(√)

7.理想的人机界面应针对具有典型个性的特定的一类用户设计。(√)

8.数据输入的一般准则中包括尽量(增加)用户输入的动作。(X)

9.用穷举测试是较现实的测试方法。(X)

10、编码时应尽可能使用全局变量(X)

11、重视程序结构的设计,能使程序具有较好的层次结构(√)

12、程序中的注解越少越好(X )

四、简答题(每小题4分,共20分)

1、计算机软件——与计算机系统操作有关的程序、规程、规则及任何与之有关的文档和数据

2、需求分析的任务是什么?

需求分析的任务是确定待开发的软件系统“做什么”。具体任务包括确定软件系统的功能需求、性能需求和运行环境约束,编制软件需求规格说明书、软件系统的验收测试准则和初步的用户手册。

3、软件项目的成本管理——估算软件项目的成本,作为立项和签合同的依据之一,并在软件开发过程中按计划管理经费的使用。

4、快速原型技术的基本思想是什么?

在软件开发的早期,快速开发一个目标软件系统的原型,让用户对其进行评价并提出修改意见,然后开发人员根据用户的意见对原型进行改进。

5、程序设计语言有哪些特点?

1)一致性

2)二义性

3)紧致性

4)局部性

五、综合题(每小题10分,共20分)

1、可将软件生存周期划分为哪3个过程和哪9个阶段。

(1)3个过程是:软件定义过程、软件开发过程、软件使用与维护过程。

(2)9个阶段有:可行性研究、需求分析、概要设计、详细设计、实现、组装测试、验收测试、使用与维护、退役。

2、画出与图1所示的程序流程图对应的流图,并试计算其环形复杂度V(G)。

解:(1)流图如(图2)所示:

(2)计算其环形复杂度:V(G)=E –N +2=13 –10 +2=5

(图一)

(图二)

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

一、单向选择题(四选一、每小题3分,共18分)

1、在设计测试用例时,应当包括(C)

A、合理的输入条件

B、不合理的输入条件

C、合理的和不合理的输入条件

D、部分条件

2、下列各项中不属于逻辑覆盖的是(D)

A、语句覆盖

B、判定覆盖

C、判定——条件覆盖

D、全部覆盖

3、高级语言通常被分成三类,其中不包括(D)

A.通用高级语言

B.面向对象的语言

C.专用语言

D.自然语言

4、Jackson方法在需求分析阶段的主要步骤不包括(A)

A.了解实体行为

B.标识实体与行为

C.生成实体结构图

D.创建软件系统模型

5、实践表明,确定发生错误的位置和内在原因所需的工作量几乎占整个调试工作量的(D)%

A.30

B.50

C.70

D.90

6、为了进一步改善软件系统的可维护性和可靠性,并为以后的改进奠定基础的软件维护称为(D)

A.纠错性维护

B.适应性维护

C.改善性维护

D.预防性维护

二、填空题(每空2分,共18分)

1.软件的可互操作性,是指多个软件元素相互(通信)并协同完成

任务的能力。

2.第三代语言也称为(高级)语言。1301

3.软件测试是软件投入运行(前),对软件需求分析、设计、实现的

强有力的最终审查。1401

4.黑盒测试主要是测试软件是否满足(功能)需求。1402

5.(调试)的目的是确定错误的位置和引起错误的原因,并加以改

正。因此,又称为排错或纠错。1404

6.软件工程由方法、工具和(过程)三部分组成,称软件工程的三

要素。

7.软件可追踪性(traceability),是指根据软件需求对软件设计、程

序进行正向追踪,或根据程序、软件设计对软件需求进行(逆向)追踪的能力。

8.瀑布模型是由W. Royce于1970年提出来的。又称为软件(生存

周期)模型。

9.程序设计语言的(可维护)性通常指这种语言编写的程序被理解,

被修改及调整和改进的难易程度。1302

三、判断题(每小题2分,共24分,错误打X、正确打√)

1.文档可用于专业人员和用户之间的通信和交流;软件开发过程的

管理;运行阶段的维护。(√)0101

2.软件开发、设计几乎都是从头开始,成本和进度很难估计。(√)

0101

3.适应性维护是改进软件未来的可维护性和可靠性。(X)0101

4.由于软件是逻辑产品,软件质量较容易直接度量。(X)0203

5.V(G)值越高的程序往往是越不复杂、越不容易出问题的程序。

(X)0204

6.目前我国还没有颁布软件开发标准。(X)0206

7.按照功能,软部件可划分为系统软件和应用软件两类。(√)0301

8.如果某子功能可以用一段简洁、精确的文字描述清楚,就无需进

一步分解,是创建用户需求的数据流模型应遵循的规则。(√)0502 9.耦合度是对软件结构中模块间关联程度的一种度量。在设计软件

时应追求尽可能紧密的耦合的系统。(X)0803

10.在面向对象设计阶段则着重完成“如何做”的问题,也就是着重考

虑对象的实现细节。(√)1101

11.随着软件复杂性的不断提高,软件的维护难度越来越大。(√)1501

12.软件的可维护性差是软件维护工作量和费用激增的直接原因。(√)

1505

四、简答题(每小题4分,共20分)

1、软件在使用过程中维护有哪几种?0101

1)纠错性维护

2)完善性维护

3)适应性维护

4)预防性维护

2、Coad/Yourdon面向对象的方法除了包含识别对象外还包括哪4个步骤?0702

标识对象的属性

标识对象的行为

识别对象所属的类

定义主题词

3、Jackson系统开发方法其核心思想是什么?0602

根据作用于数据的行为序列的结构(顺序、选择、重复),建立目标软件系统的模型,然后在软件设计阶段将模型转换为相应的程序结构。

4、设计人机界面,必须考虑哪四个方面。1202

系统的响应时间;

用户求助机制;

错误信息处理;

命令方式。

5、什么是测试用例?

为了进行有效的测试而设计的输入数据和预期的输出结果数据。1401

五、综合题(每小题10分,共20分)

1、SD方法能方便地将数据流图转换为软件结构,其过程分为哪五步?0901

1.确定信息流的类型;

2.划定流界;

3.将数据流图映射为程序结构;

4.提取层次控制结构;

5.通过设计复审和使用启发式策略进一步精化所得到的结构。

2、已知有一个软件项目的记录,开发人员M=6人,其代码行数=20.2KLOC,工作量E=43PM,成本S=314000美元,错误数N=64,文档页数Pd=1050页。试计算开发该软件项目的生产率P、平均成本C、代码出错率EQR和文档率D。0201

解:根据给出的已知数据,可得:

P = L / E =20.2 KLOC /43 PM = 0.47 KLOC / PM

= 470 LOC / PM

C = S / L = 314000美元/ 20.2 KLOC

= 15.54 美元/ LOC

EQR = N / L = 64个/ 20.2KLOC = 3.17 个/ KLOC

D = Pd / L = 1050 页/ 20.2 KLOC = 51.98 页/ KLOC

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

一、单向选择题(四选一、每小题3分,共18分)

1、从事物的组成部件及每个部件的属性、功能来认识事物。这种方法被称为(A)的方法。0701

A、面向对象

B、面向数据

C、面向过程

D、面向属性

2、判定表由四部分组成:左上部列出(B)。0802

A.条件组合与动作之间的对应关系

B.所有条件

C.所有可能的动作

D.可能的条件组合

3、面向对象的分析和设计(OOA&OOD)方法出现在20世纪(C)年代中期。0701

A.50

B.60

C.70

D.80

4、耦合度也可以分为七级:其中最松散的耦合是(A)。0801

A.非直接耦合

B.数据耦合

C.特征耦合

D.控制耦合

5、面向对象方法是将现实世界的事物以对象的方式( B )到计算机世界的方法。0101

A.对应

B.映射

C.反映

D.反射

6、盒图也称为(D)或Chapin图。这种表达方式取消了流程线,它强迫程序员以结构化方式思考和解决问题。0802

A.流程图

B.框图

C.判定表

D.N-S图

二、填空题(每空2分,共18分)

1.软件工程由方法、(工具)和过程三部分组成,称软件工程的三要

素。0101

2.软件可理解性,指系统具有清晰的结构,能直接反映问题的(需

求)。0103

3.在实体-关系图简称E-R图中,数据对象实体用长方形、关系用(菱

形)、属性用椭圆表示。0502

4.建立数据流模型要遵循的原则包括:每个加工至少应有一个输入

数据流以反映被处理数据的来源和一个(输出)数据流来反映加工的结果。0503

5.从工程管理的角度软件设计可分为概要设计和(详细)设计两大

步骤。0801

6.通过向用户提供视觉和听觉上的反馈,保持用户与界面间的双向

通信,是提高界面可(交互)性的措施之一。1204

7.程序设计语言的可靠性是指程序设计语言本身不出错或对错误的

(纠正)能力。1302

8.对发现错误较多的程序模块,应进行(重点)测试。1401

9.测试用例中,不仅要选择合理的输入数据,还要选择(不合理)

的输入数据。1401

三、判断题(每小题2分,共24分,错误打X、正确打√)

1.纠错性维护是改正运行期间发现的潜伏错误。(√)0101

2.软件可移植性(portability),是指软件从一个计算机系统或(环

境)移植到另一个上去的难易程度。(√)0103

3.软件复杂性不能反映出软件的可理解性、模块化、简单性等属性。

(X)0204

4.当程序内的分支数和循环数增加时,V(G)值将随之增加,即程

序的复杂性增大。(√)0204

5.一般来说,设计软件时应尽量使用数据耦合,减少控制耦合,限

制外部环境耦合和公共数据耦合,杜绝内容耦合。(√)0803

6.设计用户界面只需要计算机科学的理论和知识,而不一定需要认

知心理学以及人-机工程学、语言学等学科的知识。(X)1201 7.第四代语言(4GL)还局限在某些领域内,如数据库查询语言。(√)

1301

8.不同程序设计语言在程序的效率上的差异不大。(X)1302

9.编码的依据是详细设计说明书。(√)1303

10.程序文档应该包括代码的功能、代码的完成者等内容。(√)1303

11.软件项目定义部分由制定软件项目开发计划、需求分析2个阶段

组成。(√)0301

12.预防性维护是修改软件,以适应软硬件环境的变化。(X)0101

四、简答题(每小题4分,共20分)

1、软件工程的原则有抽象、信息隐藏、模块化和其他那些内容?0102

1)局部化

2)一致性

3)完全性

4)可验证性

2、常用的软件项目的估算方法主要有哪4种?0202

1)自顶向下的估算方法

2)自底向上的估算方法

3)差别估算法

4)根据经验估算公式

3、原型法模型一般适应哪些场合?0104

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

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

软件工程期末试卷(A卷)

《软件工程》期末试卷(A卷) 一.单项选择题(每小题1分,共22分) 1.对象实现了数据和操作的结合,使数据和操作( C )于对象的统一体中。 A.结合B.隐藏C.封装D.抽象 2.软件生命周期中所花费用最多的阶段是( D )。 A.详细设计B.软件编码C.软件测试D.软件维护 3.需求分析中开发人员要从用户那里了解( A )。 A.软件做什么B.用户使用界面 C.输入的信息D.软件的规模 4.测试的关键问题是( D )。 A.如何组织对软件的评审B.如何验证程序的正确性 C.如何采用综合策略D.如何选择测试用例 5.( D )是将系统化的、规范的、可定量的方法应用于软件的开发、运行和维护的过程,它包括方法、工具和过程三个要素。 A.软件过程B.软件测试 C.软件生命周期D.软件工程方法学 6.( A )意味着一个操作在不同的类中可以有不同的实现方式。 A.多态性B.多继承C.类的可复用D.信息隐藏 7.单元测试的测试用例主要根据( D )的结果来设计。 A.需求分析B.源程序C.概要设计D.详细设计 8.随着软硬件环境变化而修改软件的过程是( B )。 A.校正性维护B.适应性维护 C.完善性维护D.预防性维护 9.在白盒测试技术测试用例的设计中,( A )是最弱的覆盖标准。 A.语句覆盖B.路径覆盖 C.条件组合覆盖D.判定覆盖 10.结构化程序设计的一种基本方法是( C )。 A.筛选法B.迭代法 C.逐步求精法D.递归法11.不适合作为科学工程计算的程序设计语言是( D )。 A.Pascal B.C C.Fortran D.Prolog 12.只有单重继承的类层次结构是( C )层次结构。 A.网状型B.星型 C.树型D.环型 13.面向对象的开发方法中,( C )将是面向对象技术领域内占主导地位的标准建模语言。 A.Booch方法B.Coad方法C.UML语言D.OMT方法 14.瀑布模型本质上是一种( A )。 A.线性顺序模型B.顺序迭代模型 C.线性迭代模型D.及早见产品模型 15.软件维护产生的副作用,是指( C )。 A.开发时的错误B.隐含的错误 C.因修改软件而造成的错误D.运行时误操作 16.软件详细设计的主要任务是确定每个模块的( A )。 A.算法和使用的数据结构B.外部接口 C.功能D.编程 17.软件结构图的形态特征能反映程序重用率的是( C )。 A.深度B.宽度C.扇入D.扇出 18.为了提高模块的独立性,模块内部最好是( C )。 A.逻辑内聚B.时间内聚 C.功能内聚D.通信内聚 19.软件结构图中,模块框之间若有直线连接,表示它们之间存在( A )。 A.调用关系B.组成关系 C.链接关系D.顺序执行关系 20.“软件危机”是指( C )。 A.计算机病毒的出现 B.利用计算机进行经济犯罪活动 C.软件开发和维护中出现的一系列问题 D.人们过分迷恋计算机系统 21.具有风险分析的软件生命周期模型是( C )。 A.瀑布模型 B.喷泉模型 C.螺旋模型 D.增量模型 22.数据流图(DFD)中的每个数据处理至少需要( D )。 A.一个输入数据流 B.一个输出数据流 C.一个输入或者输出数据流 D.一个输入数据流和一个输出流

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

得分评卷人一、填空题(每空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. 答:软件危机是指软件在开发和维护过程中遇到的一系统严重问题,主要包含二方面的问题,一是如何开发利用软件,二是如何维护数量不断膨胀的已有软件。产生软件危机的原

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

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

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

软件工程期末考试参考试题 一、填空题 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. 从工程管理的角度软件设计可分为概要设计和(详细)设计两大步骤。

上海大学软件工程试卷试题(附答案)

、单项选择题(本大题共20小题,每小题 1 分,共20分) 在每小题列出的备选项中只有一个是符合题目要求的,多选或未选均无分。请将其代码填写在题后的括号内。错选、 1. 在软件生命周期的各个阶段中,工作量最大的阶段是 A .需求分析B.总体设计 C.综合测试 D .软件维护 2. 瀑布模型的特点不包括 A.前一阶段的任务没有完成,不能进入下一阶段工作 B.进入某个阶段工作后,不再回复到之前的阶段工作C.只有完成并评审了规定的文档,才标志着一个阶段的工作结束D.在软件产生之前,需求无法得到充分的测试 3. 螺旋模型强调的开发手段是 A.分阶段开发 C.风险驱动开发 4. 需求分析阶段的工作不包括 A.获得当前系统的物理模型 C.建立目标系统的逻辑模型 5. 总体设计阶段的工作不包括 A.确定程序的模块组成 C.确定实现各个模块功能的处理逻辑 6. 描绘系统物理模型的传统工具是 A .系统流程图 C.实体-联系图 7. 符合信息隐藏原理的是 A .将信息隐藏起来不被发现 C.将可能要修改的设计决策隐藏起来B.废弃式原型开发 D.增量式开发 B.抽象出当前系统的逻辑模 型 建立目标系统的物理模型 D. B.确定模块间的相互关 系 D.制定测试计划 B.数据流图 D.状态转换图 B.将信息隐藏起来确保安全 D.将不要修改的设计决策隐藏起 来 8. 模块的独立性原则是指软件设计时要尽量使模块具有 A .低内聚、低耦合B.低内聚、高耦合C.高内聚、低耦合D.高内聚、高耦合

[ 9. 有利于提高模块独立性的做法是 A.尽量使模块具有逻辑型内聚 B.尽量使模块间具有内容型耦合 C.使判定作用范围内的模块尽量成为该判定所在模块的直属下级模块 D.尽量提高模块的扇入数和扇出数 [ 10. 有关结构化设计(SD )方法的正确叙述是 ] A.只使用顺序、选择和循环 3 种控制结构 B.由数据结构映射出软件的结构 C.是一种面向对象的设计方法 D.是一种面向数据流的设计方法 [ 11. 有关总体设计阶段所使用的结构图的不正确叙述是 ] A.能够描述软件系统的模块组成 B.结构图中的模块是按照自上而下、自左向右的顺序执行的 C.能够描述模块间的调用关系以及模块间调用时所传递的信息 D.将模块间调用时所传递的信息分成两种:数据信息和控制信息 [ 12. 要求使用顺序、选择和循环控制结构的组合或嵌套来表达程序的过程设计工具是 A .程序流程图B . 盒图 C .判定表D.PDL 13 . 关于好的编码风格的正确叙述是 A .把多个语句写在同一行以节省空间B.要求用户指定输入数据的数目 C .检查输入项重要组合的合法性D.表达式中不使用多余的括号,以简化表达式 14 . 能发现软件需求规格说明书中的错误的测试步骤是 A .模块测试B.子系统测试 C .系统测试D.验收测试 15 . 自顶向下集成测试和自底向上集成测试都具有的优点是 A .较早发现主要设计错误B.可采用深度优先策略和宽度优先策略 C .支持故障隔离D.可复用模块得到充分测试 19 . 不符合面向对象设计准则的是 A .用对象的封装性来实现信息隐藏B.尽可能松散对象之间的交互耦合 C .尽可能减小继承耦合度D.尽可能设计小而简单的类 20. 上海大学校内电话号码由 5 位数字组成,但第 1 位数字只能是 5 或6。该电话号码的

软件工程导论期末考试题

一、单项选择题 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.程序设计属于软件开发过程( C )阶段。 A.设计B.编程 C.实现D.编码 2. 产生软件危机的原因主要与两个方面的问题有关:( C ) A.软件在计算机中很难识别,存在磁盘中也看不到。 B.软件设计对人的智商要求很高,也要求很高的资金投入。 C.软件产品本身的特点与其它工业产品不一样,而且在软件的开发和 维护过程中用的方法不正确。 D.软件很难理解,硬件也很复杂。 3.结构设计是一种应用最广泛的系统设计方法,是以( A )为基础、自顶向下、逐步求精和模块化的过程。 A.数据流B.数据流图 C.数据库D.数据结构 4. 下列关于瀑布模型的描述正确的是( C )。 A. 瀑布模型的核心是按照软件开发的时间顺序将问题简化。 B. 瀑布模型具由于良好的灵活性。 C. 瀑布模型采用结构化的分析与设计方法,将逻辑实现与物理实现分开。 D. 利用瀑布模型,如果发现问题则修改的代价很低。 5.在软件结构化设计中,好的软件结构设计应该力求做到( B )。

A.顶层扇出较少,中间层扇出较高,底层模块低扇入 B.顶层扇出较高,中间层扇出较少,底层模块高扇入 C.顶层扇入较少,中间层扇出较高,底层模块高扇入 D.顶层扇入较少,中间层扇入较高,底层模块低扇入 6. 需求分析阶段,分析人员要确定对问题的综合需求,其中最主要的是( A ) 需求。 A.功能B.性能 C.数据D.环境 7.软件结构图的形态特征能反映程序重用率的是( C )。 A.深度B.宽度 C.扇入D.扇出 8. 在数据流图中,○(椭圆)代表( C )。 A.源点B.终点 C.加工D.模块 9.为了提高模块的独立性,模块内部最好是( C )。 A.逻辑内聚B.时间内聚 C.功能内聚D.通信内聚 10.软件需求分析的主要任务是准确地定义出要开发的软件系统是( C )。A.如何做B.怎么做 C.做什么D.对谁做 11.软件的( A )设计又称为总体结构设计,其主要任务是建立软件系统的总体结构。 A.概要B.抽象 C.逻辑D.规划

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

一、填空题(每空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.软件工程中的结构化分析 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.软件设计中划分模块的一个准则是(C)。 A低内聚低耦合 B低内聚高耦合 C高内聚低耦合 D.高内聚高耦合 2.(A)是用户和设计交换最频繁的方法。 A、原型化方法 B、瀑布模型法 C、螺旋模型方法 D、构件组装模型 3.试判断下列叙述中,哪个些是正确的(C)。 a、软件系统中所有的信息流都可以认为是事务流 b、软件系统中所有的信息流都可以认为是变换流 c、事务分析和变换分析的设计步骤是基本相似的 A、a B、b C、c D、b和c 4.软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实施的主要保证是(C) A、硬件环境 B、软件开发的环境 C、软件开发工具和软件开发的环境 D、开发人员的素质 5.20世纪50年代以来,出现了许多不同的程序设计语言,下列语言中哪个语言是低级语言(D) A、PASCAL B、VISUAL BASIC C、C++

D、汇编语言 6.软件测试的目的是?(D) A.软件的正确性 B.找出软件系统中存在的所有错误 C.证明软件系统中存在错误 D.尽可能多的发现软件系统中的错误 7.使用白盒测试方法时,确定测试数据应根据(A)和指定的覆盖标准。 A、程序的内部逻辑 B、程序的复杂程度 C、该软件的编辑人员 D、程序的功能 8.软件维护工作的最主要部分是(C)。 A、纠正性维护 B、适应性维护 C、完善性维护 D、预防性维护 9.PDL是(B)语言。 A.高级程序设计语言 B、伪码式 C、中级程序设计语言 D、低级程序设计语言 10.软件的结构化设计(SD)方法中,一般分为概要设计和详细设计两阶段,其中详细设计主要是要建立(C)。 A、软件结构 B、软件过程 C、软件模型 D、软件模块 11.在数据流图中,○(椭圆)代表(B) A、数据流 B、转换 C、数据源 D、外部实体

软件工程期末试题(含答案)广东药学院

填空题 1. 定义;开发;维护;问题定义;可行性研究;需求分析;总体设计;详细设计;编码和单元测试;综合测试;维护;维护。 2. 技术;经济;操作;软件项目的可行性/ 3. 一致性;现实性;完整性;有效性;完整性;有效性;原型系统。 4. 模块化;抽象;逐步求精;信息隐藏;局部化;模块独立;结构程序设计;可理解性。 5. 发现错误;黑盒测试;白盒测试;穷尽测试;测试方案。 6. 改正性维护;适应性维护;完善性维护;预防性维护。 一、 1. 软件生命周期可划分为、和3个时期,通常把这3个时期再细分为8个阶段,它们是①、②、③、④、⑤、⑥、⑦和⑧,其中的阶段的工作量是8个阶段中最大的。 2. 可行性研究的任务是从、和等三个方面研究。 3. 至少应该从、、和4个方面验证软件需求的正确性,其中和这两个方面的正确性必须有用户的积极参与才能验证,而且为了验证这两个方面的正确性,往往需要开发。 4. 软件总体设计时应遵循、、、、、和等6条基本原则。详细设计通常以技术为逻辑基础,因为从软件工程观点看,是软件最重要的质量标准之一。 5. 软件测试的目的是,通常把测试方法分为和两大类。因为通常不可能做到,所以精心设计是保证达到测试目的所必须的。 6. 软件维护通常包括4类活动,它们分别是、、、。 二、判断下述提高软件可维护性的措施是否正确,正确的在括弧内写对,错的写错。 1. 在进行需求分析时同时考虑维护问题。() 2. 完成测试后,为缩短源程序长度而删去程序中的注释。() 3. 尽可能在软件开发过程中保证各阶段文档的正确性。() 4. 编码时尽可能使用全局变量。() 5. 选择时间效率和空间效率尽可能高的算法。() 6. 尽可能利用硬件的特点以提高效率。() 7. 重视程序结构的设计,使程序具有较好的层次结构。() 8. 使用维护工具或软件工程环境。() 9. 进行概要设计时尽可能加强模块间的联系。() 10. 提高程序可读性,尽可能使用高级语言编程。() 三、按下述要求完成给出的程序流程图,即在答案栏内写出图中A、B、C、D、E的正确内容 给程序输入二维数组W(I,J),其中I≤M,J≤N(MT N均为正整数)。程序打印出数组中绝对值最小的元素值Q=W(K,L),及其下标K、L的值。假定数组中仅有一个绝对值最小的元素。 应该完成的程序流程图如下所示

辽师软件工程期末复习题

说明: 以下试题虽然经过多次整理,但由于时间有限,存在错误或不足之处在所难免。同学们在阅读和使用过程中如发现问题,请你在课程评价的“建议”中指出,具体方法是: 写明大小题号:问题所在;正确内容。 在此谢谢你提供的方便和指正。 一、概念题 1、软工程:是1)将系统性的、规范化的、可定量的方法应用于软件的开发、 运行和维护,即将工程化应用到软件上;2)对1)中所述方法的研究。 2、软件:是计算机程序、规程以及运行计算机系统可能需要的相关文档和数据。 3、软件危机:是指在计算机软件的开发和维护过程中遇到的一系列严重问题。 4、软件过程:是软件工程人员为了获得软件产品而在软件工具的支持下实施的 一系列软件工程活动。 5、基线:是已经通过了正式复审的规格说明或中间产品,它可以作为进一步开 发的基础,并且只有通过正式的变化控制过程才能改变。 6、软件配置项:是为配置管理而作为单独实体处理的一个工作产品或软件。 7、对象:是系统中用来描述客观事物的一个实体,它是构成系统给的一个基本 单位,有一组属性和对这组属性进行操作的一组服务组成。 8、软件过程模型:是描述软件过程的整体框架,它是软件过程的一种抽象表示。 9、类:是具有相同属性和服务的一组对象的集合,它为属于该类的全部对象提 供了统一的抽象描述,其内部包括属性和服务两个主要部分。 10、实体类:用于描述必须存储的信息及其相关行为,它是对系统核心信息的建 模,通常这些信息需要长久地保存。 11、版本:是确定在明确定义的时间点上某个配置项的状态。

12、耦合度:是表示两个子系统之间的关联程度。当一个子系统发生变化时对另 一个子系统的影响很小,则称它们是松散耦合的;反之,如果变化的影响很大时,则称它们是紧密耦合的。 13、软件需求:1)用户解决问题或达到目标所需要的条件或能力。2)系统或系 统部件要满足合同、标准、规范或其他正式规定文档所需要具有的条件或能力。3)一种反映上面1)或2)所描述的条件或能力的文档说明。 14、软件实现:是软件产品由概念到实体的一个关键过程,它将详细设计的结果 翻译成用某种程序设计语言编写的并且最终可以运行的程序代码。 15、内聚性:是子系统内部的相关程度。当子系统中彼此相关的多个对象执行类 似的任务时,则认为该子系统是高内聚的;反之,当子系统内的多个对象彼此不相关时,则认为是低内聚的。 16、软件验证:是指试图证明在软件生存期各个阶段,软件产品或中间产品是否 能够满足客户需求,包括逻辑协调性、完备性和正确性。 17、软件测试:广义上讲,测试是指软件产品生存周期内所有的检查、评审和确 认活动。狭义上讲,测试是对软件产品质量的检查和评价,它一方面检查软件产品中存在的质量问题,同时对产品质量进行客观的评价。 18、软件再工程:是以系统理解为基础,结合逆向工程、重构和正向工程等方法, 将现有系统重新构造成为新的形式。 19、软件确认:是一系列的活动和过程,其目的是保证软件产品能够符合其描述 要求。 20、软件维护:是指在软件运行或维护阶段对软件产品所进行的修改,做这些修 改时可能改正软件中的错误,也可能是增加新的功能以适应新的需求,但是

中南大学软件工程历届试卷

填空题(本题20分,每小题2分) 1. 瀑布模型是以文档为驱动、适合于(软件需求确定的)软件项目的开发。 2. 需求分析的基本任务是(确定用户需要软件做什么)。 3. 若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0,1.0],现从输入的角度考虑一组测试用例:-1.001,-1.0,1.0,1.001。设计这组测试用例的方法是(边界值分析法)。 4. 根据程序流程图划分的模块通常是(过程)内聚的模块。 5. 软件的分类,按其功能可分为:系统软件、(支撑软件)和应用软件。 6. UML的定义包括UML语义和(UML表示法)两个部分。 7. 客观世界中的若干类,通常有两种主要的结构关系:即分类结构和( 整体与部分结构)。 四、测试题(本题16分,每小题8分) 某程序的程序流程图如下图所示,试据此回答下述问题: 1. 计算程序的环形复杂度; 2. 设计测试用例,满足基本路径覆盖。 四.(1)环路复杂性=判断数+1=6+1=7(个) (2)路径1:(0)—①—(13)—(19) 路径2:(0)—②—③—(14)—(19) 路径3:(0)—②—④—⑤—(15)—(19) 路径4:(0)—②—④—⑥—⑦—(16)—(19) 路径5:(0)—②—④—⑥—⑧—⑨—(17)—(19) 路径6:(0)—②—④—⑥—⑧—⑩—(18)—(19) 路径7:(0)—②—④—⑥—⑧—⑩—(12)—(19) 一、填空题(本题30分,每小题1.5分) 1、软件是计算机程序、(描述计算机程序的文档)及(数据)的完整集合,将其统称为软件配置,这些项称为软件配置项。通过正式复审的软件配置项称为(基线),只有通过正式的变化控制过程才能改变它。 2、通常,将软件生命周期全过程中使用的一整套技术方法的集合称为方法学,包含三个要素,即方法、(工具)和(过程)。传统方法学采用(结构化)技术来自顶向下顺序地完成软件开发的各项任务,而面向对象方法是一种以(数据)为主线,把数据和对数据的操作紧密地结合起来的方法,其开发过程是一个多次迭代的演化过程。 3、软件测试的目标是(暴露程序中的错误),因而从心理学角度来看,由程序作者对自己编写的程序进行测试是不恰当的。设计测试方案是测试阶段的关键技术问题,测试方案一般包括(测试目的)、输入的测试数据

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

销售店员结算一件商品系统的描述如下:顾客到柜台前结算,店员使用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. 以下不是软件危机的典型表现的是:( D ) 。 A. 对软件开发成本和进度的估计常常很不准确 B. 用户对“已完成的”软件系统不满意的现象经常发生 C. 软件产品的质量往往靠不住 D. 采用面向对象方法开发软件 3. 下列哪个不是软件工程方法学中的要素( C )。 A. 方法 B. 工具 C. 程序 D. 过程 4. 下列模块的独立性的耦合方式中,最好的是( C ) A.公共耦合 B. 控制耦合 C. 数据耦合 D. 内容耦合 5.概要设计中,开发人员要解决的最重要的问题是( D ) 。 A. 要让软件做什么 B. 要给该软件提供哪些信息 C. 要求软件工作效率怎样 D. 要让该软件模块具有何种结构 6. 为了提高模块的独立性,模块内部最好是( C ) 。 A. 逻辑内聚 B. 时间内聚 C. 功能内聚 D. 通信内聚 7. 程序的三种基本控制结构的共同特点是( C ) 。 A. 不能嵌套使用 B. 只能用来写简单程序 C. 只能一个入口和一个出口 D. 已经用硬件实现 8. 以下说法错误的是( ) 。 A A. 面向对象分析与面向对象设计的定义没有明显区别 B. 从面向对象分析到面向对象设计,是一个逐渐扩充模型的过程 C. 在实际的软件开发过程中,面向对象分析与面向对象设计的界限是模糊的 D. 面向对象分析和面向对象设计活动是一个多次反复迭代的过程 9. 软件测试过程中的确认测试主要是为了发现( A ) 阶段的错误。 A. 需求分析 B. 概要设计 C. 详细设计 D. 编码 10. 在面向对象的高层设计体系结构中,( C ) 是用来描述用户一般使用软件习惯的部分 A. 人机交互界面 B. 问题论域 C. 系统交互界面 D. 数据管理 11. 为适应软硬件环境变化而修改软件的过程是( B ) 。 A. 校正性维护 B. 适应性维护 C. 完善性维护 D. 预防性维护 12. 在UML的各类图中,( A )图是描述软件功能的。 A 用例图 B 类图 C 活动图 D 顺序图 13.( D )不属于OO三要素。 A.对象 B. 继承 C.封装 D.多态 14.(C )在ATM机系统中,下列哪个不能在面向对象设计中被定义为类。C A 中央计算机 B 柜台事务 C 拨号 D 营业厅15.在黑盒测试中,作为相关黑盒测试有效补充的测试方法是( B ) 。 A. 等价类划分法 B. 边界值分析法 C. 错误推测法 D. 因果图法二.判断题(本大题共__15__题,每题___1___分,共___15_____分。 1.软件简单的说就是程序和相关的数据及文档。T

相关主题
文本预览
相关文档 最新文档