文档库 最新最全的文档下载
当前位置:文档库 › 软件工程导论复习题及答案详解

软件工程导论复习题及答案详解

软件工程导论复习题及答案详解
软件工程导论复习题及答案详解

第一章

一、名称解释

1.软件

2.文档

3.软件工程

4.软件生存周期

5.软件工程过程

6.软件生存周期模型

7.软件开发方法8.软件工具

二、填空题

1.构成一个完整计算机系统的两部分是硬件与________。

2.程序设计时代的生产方式是________。

3.软件工程涉及到几个学科,它是一门_____学科。

4.软件开发划分的各阶段任务尽可能独立,同一阶段任务性质尽可能________。

5.将软件生存周期各个活动规定为依线性顺序联接的若干阶段的模型是________模型。

6.喷泉模型是一种以用户需求为动力,以_______为驱动的模型。

7.结构化方法是一种面向数据流的开发方法。由结构化分析、_______、结构化程序设计构成。

8.软件工程研究的主要内容是软件开发管理和_______两个方面。

9.软件工具是支持软件开发人员的开发和维护活动而使用的________。

10.一个软件项目的开发中,要采用一种生存周期模型,要按照某种________,使用相应的工具来进行。

三、选择题

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.1/2

B.1/3

C.1/4

D.2/3

7.软件开发中大约要付出( )%的工作量进行测试和排错。

A.20

B.30

C.40

D.50

8.准确地解决“软件系统必须做什么”是( )阶段的任务。

A.可行性研究

B.需求分析

C.详细设计

D.编码

9.软件生存周期中最长的是( )阶段。

A.需求分析

B.概要设计

C.测试

D.维护

四、简答题

1.软件产品的特性是什么?

2.软件生产有几个阶段?各有何特征?

3.什么是软件危机?产生的原因是什么?

4.软件工程的性质、目标和内容是什么?

5.软件工程面临的问题是什么?

6.软件工程过程有哪些过程?

7.软件生存周期有哪几个阶段?

8.软件生存周期模型有哪些主要模型?

9.有哪些主要软件开发方法?

参考答案

二填空题1.软件 2.个体手工劳动3.综合性交叉 4.相同5.瀑布 6.对象7.结构化设计8.软件开发技术9.软件10.开发方法

三、选择题1.B 2.D 3.A 4.C5.A 6.B 7.C 8.B 9.D

第二章

一、名称解释

1.可行性研究

2.技术可行性

3.经济可行性

4.社会可行性

5.货币时间价值

6.投资回收期

7.纯收入

8.系统流程图

二、填空题

1.可行性研究的目的是用最小的代价,在尽可能短的时间内,确定________。

2.可行性研究在进行简要需求分析和设计时,要在高层次上以__________进行。

3.系统流程图用图形符号表示系统中各个元素,表达了系统中各个元素之间的_________。

4.软件工程有两种效益,它们是无形效益和________。

5.若年利率为i,不计复利,n年后能收入F元的现在价值P=________。

6.纯收入是软件生存周期内两项值之差,这两项是_________。

7.项目开发计划是一种_________文档。8.可行性研究具体步骤的最后一步是________。

三、选择题

1.研究硬软件资源的有效性是进行( )研究的一方面。

A.技术可行性

B.经济可行性

C.社会可行性

D.操作可行性

2.可行性研究要进行的需求分析和设计应是( )。

A.详细的

B.全面的

C.简化、压缩的

D.彻底的

3.可行性分析中,系统流程图用于描述( )。

A.当前运行系统

B.当前逻辑模型

C.目标系统

D.新系统

4.系统流程图是一种工具,它用于描述( )。

A.逻辑系统

B.程序系统

C.体系结构

D.物理系统

5.年利率为i,现存入P元不计复利,n年后本金利息为( )。

A.P×(1+i)n

B.P×(1-i×n)

C.P×(1+i×n)

D.P×(1+i)×n

四、简答题

1.可行性研究的任务是什么?

2.可行性研究有哪些步骤?

3.可行性研究的目的。

4.可行性研究报告的主要内容。

5.怎样计算投资回收期和纯收入?

6.项目开发计划有哪些主要内容。

参考答案

二、填空题

1.项目值得开发否

2.较抽象形式

3.信息流动

4.有形效益

5.F/(1+n×i)

6.经济效益与投资

7.管理性

8.编写可行性报告。

三、选择题

1.A

2.C

3.A

4.D

5.C

第三章

一、名称解释

1.需求分析2.当前系统3.目标系统4.SA 5.DFD

二、填空题

1.需求分析阶段产生的最重要的文档是_________。

2.为解决一个复杂问题,往往采取的策略是__________。

3.SA方法中使用半形式化的描述方式表达需求,采用的主要描述工具是__________。

4.数据流图中有四种符号元素,它们是__________。

5.数据字典中有四类条目,分别是___________。

6.在IDEF0图中,表示系统功能的图形称为___________图形。

7.在画分层的DFD时,父图与子图的输入输出数据流要__________。

8.用于描述基本加工的小说明的三种描述工具是_______________。

9.IDEF0是建立系统_________模型的有效方法。

10.在IDEF0方法中,被标志为A—0的图称为系统的_________图。

三、选择题

1.分层DFD是一种比较严格又易于理解的描述方式,它的顶层图描述了系统的( )。

A.细节B.输入与输出C.软件的作者D.绘制的时间

2.需求规格说明书的内容还应包括对( )的描述。

A.主要功能B.算法的详细过程C.用户界面及运行环境D.软件的性能

3.需求规格说明书的作用不应包括( )。

A.软件设计的依据B.用户与开发人员对软件要做什么的共同理解

C.软件验收的依据D.软件可行性研究的依据

4.SA方法用DFD描述( )

A.系统的控制流程B.系统的数据结构

C.系统的基本加工D.系统的功能

5.一个局部数据存储只有当它作为( )时,就把它画出来。

A.某些加工的数据接口B.某个加工的特定输入

C.某个加工的特定输出D.某些加工的数据接口或某个加工的特定输入/输出

6.对于分层的DFD,父图与子图的平衡指子图的输入、输出数据流同父图相应加工的输入、输出数据流( )。

A.必须一致B.数目必须相等C.名字必须相同D.数目必须不等

7.需求分析阶段不适用于描述加工逻辑的工具是( )。

A.结构化语言B.判定表C.判定树D.流程图

8.SA方法的分析步骤是首先调查了解当前系统的工作流程,然后( )。

A.获得当前系统的物理模型,抽象出当前系统的逻辑模型,建立目标系统的逻辑模型

B.获得当前系统的物理模型,抽象出目标系统的逻辑模型,建立目标系统的物理模型

C.获得当前系统的物理模型,建立当前系统的物理模型,抽象出目标系统的逻辑模型

D.获得当前系统的物理模型,建立当前系统的物理模型,建立目标系统的物理模型

9.SA方法的基本思想是( )

A.自底向上逐步抽象B.自底向上逐步分解

C.自顶向下逐步分解D.自顶向下逐步抽象

10.初步用户手册在( )阶段编写。

A.可行性研究B.需求分析C.软件概要设计D.软件详细设计

四、简答题

1.什么是需求分析?该阶段的基本任务是什么? 2.简述结构化分析方法的步骤。

3.数据流图与数据字典的作用是什么?画数据流图应注意什么? 4.简述SA方法的优缺点。

5.简述建立IDEF0图的步骤。

五、应用题

1.某电器集团公司下属一个成套厂(产品组装)和若干零件厂等单位,成套厂下设技术科、生产科、供应科等基层单位。现要建立一个计算机辅助企业管理系统,其中:

生产科的任务是:

(1)根据销售公司转来的内部合同(产品型号、规格、数量、交货日期)制定车间月生产计划;

(2)根据车间实际生产日报表、周报表调整月生产计划;

(3)以月生产计划为依据,制定产品设计(结构、工艺)及产品组装月计划;

(4)将产品的组装计划传达到技术科,将组装月计划分解为周计划,下达给车间。

技术科的任务是:

(1)根据生产科转来的组装计划进行产品结构设计,产生产品装配图给生产科,产生外购需求计划给供

应科,并产生产品自制件物料清单;

(2)根据组装计划进行产品工艺设计(冲压、喷漆、焊接等),根据产品自制件物料清单产生工艺流程

图给零件厂。

供应科的任务是:

(1)根据技术科的外购需求计划和仓库的缺货通知单及月盘存表制定采购计划给采购员;

(2)对采购来的材料进行库存管理(登录、查询、修改、删除)。

请根据以上文字叙述画出企业管理系统的分层DFD图。

2.假设某航空公司规定,乘客可以免费托运行李的重量不超过30公斤。当行李的重量超出30公斤时,对一般舱的国内乘客超重部分每公斤收费4元,对头等舱的国内乘客超重部分每公斤收费6元。对国外乘客

超重部分每公斤收费比国内乘客多一倍,对残疾乘客超重部分每公斤收费比正常乘客少一半。试画出相应判定表。

参考答案

二、填空题

1.需求规格说明书 2.自顶向下逐步分解 3.数据流图和数据字典 4.数据流、加工、数据存储、数据源点和终点5.数据流、数据项、数据存储、基本加工6.活动 7.平衡 8.结构化语言、判定表、判定树9.功能10.内外关系图

三、选择题

1.B 2.B 3.D 4.D 5.D 6.A 7.D 8.A 9.C 10.B

五、应用题

1.

2.设乘客托运行李的重量为W,则判定表如表3-1所示。表3-1题2的判定表

第四章

一、名词解释

1.软件设计

2.模块化

3.信息隐蔽

4.模块独立性

5.耦合性

6.内聚性

7.模块的控制范围8.模块的作用范围9.软件结构

二、填空题

1.软件设计阶段产生的最重要的文档是______。

2.软件结构是以______为基础而组成的一种控制层次结构。

3.反映软件结构的基本形态特征是______。

4.一个模块把数值作为参数送给另一个模块,这种耦合方式称为______。

5.两个模块通过全程变量相互作用,这种耦合方式称为______。

6.将与同一张年报表有关的所有程序段组成一个模块,该模块的内聚性为______。

7.一个模块的作用范围指______的集合。 8.一个模块的控制范围指______的集合。

9.结构化设计以______为基础映射成软件结构。

10.为了防止软件概要设计的错误传播到开发的后续阶段,在概要设计文档完成以后,要进行______。

三、选择题

1.结构化设计方法在软件开发中,用于( )。

A.测试用例设计

B.软件概要设计

C.程序设计

D.软件详细设计

2.软件结构使用的图形工具,一般采用( )图。

A.DFD

B.PAD

C.SC

D.ER

3.软件结构图中,模块框之间若有直线连接,表示它们之间存在着( )关系。

A.调用

B.组成

C.链接

D.顺序执行

4.在软件概要设计中,不使用的图形工具是( )图。

A.SC

B.IPO

C.IDEF0

D.PAD

5.划分模块时,一个模块的( )。

A.作用范围应在其控制范围之内

B.控制范围应在其作用范围之内

C.作用范围与控制范围互不包含

D.作用范围与控制范围不受任何限制

6.属于软件设计的基本原理是( )。

A.数据流分析设计

B.变换流分析设计

C.事务流分析设计

D.模块化

7.变换流的DFD由三部分组成,不属于其中一部分的是( )。

A.事务中心

B.变换中心

C.输入流

D.输出流

8.软件设计阶段一般又可分为( )。

A.逻辑设计与功能设计

B.概要设计与详细设计

C.概念设计与物理设计

D.模型设计与程序设计

9.好的软件结构应该是( )。

A.高耦合、高内聚

B.低耦合、高内聚

C.高耦合、低内聚

D.低耦合、低内聚

10.结构图中,不是其主要成分的是( )。

A.模块

B.模块间传递的数据

C.模块内部数据

D.模块的控制关系

四、简答题

1.什么是软件概要设计,该阶段的基本任务是什么?

2.软件设计的基本原理包括哪些内容?

3.模块的耦合性、内聚性包括哪些种类?各表示什么含义?

4.简述软件结构优化准则。

5.变换分析设计与事务分析设计有什么区别?简述其设计步骤。

五、应用题

将第3章3.3节应用题中第1题的DFD转换成软件结构图。

参考答案

二、填空题

1.软件概要设计说明书

2.模块

3.深度、宽度、扇入、扇出

4.数据耦合

5.公共耦合

6.通信内聚

7.受该模块内一个判定影响的所有模块

8.模块本身以及其所有下属模块

9.数据流图10.软件评审

三、选择题

1.B.

2.C.

3.A.

4.D.

5.A.

6.D.

7.A.

8.B.

9.B. 10.C.

五、应用题

第五章

一、名词解释

1.结构化程序设计

2.PAD

3.PDL

4.结构冲突

5.对应关系

二、填空题

1.结构化程序设计方法使用______构造程序。

2.在详细设计阶段,一种历史最悠久、使用最广泛的描述程序逻辑结构的工具是______。

3.结构化程序设计技术指导人们用良好的思想方法开发______的程序。

4.详细描述处理过程常用的三种工具是图形、语言和______。

5.Jackson图不仅可表示程序结构,还可表示______。

6.PDL具有严格的关键字外层语法,用于定义控制结构、数据结构和______。

7.详细设计的目标不仅是逻辑上正确地实现每个模块的功能,还应使设计出的处理过程______。

8.用JSP方法导出程序结构后,还要列出______,并把它们分配到程序结构图的适当位置上去。

9.在详细设计阶段,除了对模块内的算法进行设计,还应对模块内的______进行设计。

10.在详细设计阶段,为了提高数据的输入、储存、检索等操作的效率并节约存储空间,对某些数据项的值要进行______设计。

三、选择题

1.在详细设计阶段,一种二维树型结构并可自动生成程序代码的描述工具是( )。

A.PAD

B.PDL

C.IPO

D.判定树

2.结构化程序设计的一种基本方法是( )。

A.筛选法

B.递归法

C.迭代法

D.逐步求精法

3.JSP方法是一种面向( )的设计方法。

A.对象

B.数据流

C.数据结构

D.控制结构

4.JSP方法主要用于规模适中的( )系统的开发。

A.数据处理

B.实时处理

C.文字处理

D.科学计算

5.PDL是软件开发过程中用于( )阶段的描述工具。

A.需求分析

B.概要设计

C.详细设计

D.编程

6.在详细设计阶段,可自动生成程序代码并可作为注释出现在源程序中的描述工具是( )。

A.PAD

B.PDL

C.IPO

D.流程图

7.Jackson图上下层之间的关系是( )。

A.调用关系

B.组成关系

C.继承关系

D.嵌套关系

8.JSP方法根据输入输出的数据结构按一定的规则映射成软件的( )。

A.体系结构

B.数据结构

C.程序结构

D.顺序结构

9.程序的三种基本控制结构是( )。

A.过程、子程序和分程序

B.顺序、选择和重复

C.递归、堆栈和队列

D.调用、返回和转移

10.程序的三种基本控制结构的共同特点是( )。

A.不能嵌套使用

B.只能用来写简单程序

C.已经用硬件实现

D.只有一个入口和一个出口

四、简答题

1.详细设计的基本任务是什么?

2.结构化程序设计方法的基本要点是什么?

3.详细设计主要使用哪些描述工具?各有什么特点?

4.JSP方法有哪些设计步骤?该方法有哪些特点?

五、应用题

画出下面用PDL写出的程序的PAD图。

WHILE P DO

IF A>O THEN A1 ELSE A2 ENDIF;

IF B>0 THEN B1;

IF C>0 THEN C1 ELSE C2 ENDIF

ELSE B2

ENDIF;

B3

ENDWHILE;

参考答案

二、填空题

1.三种基本控制结构

2.程序流程图

3.易于理解、易于验证

4.表格

5.数据结构

6.模块接口

7.清晰易读8.操作与条件9.数据结构10.代码

三、选择题

1.A

2.D

3.C

4.A

5.C

6.B

7.B

8.C

9.B 10.D

五、应用题

PAD图如下图所示。

第六章

一、名词解释

1.编码

2.程序设计风格

二、填空题

1.程序设计语言的特性主要有_______三方面。

2.程序设计语言的心理特性在语言中的表现形式为_______。

3.程序设计语言的工程特性主要表现为_____。

4.项目的应用领域一般有_____几种类型。

5.与编码风格有关的因素有数据说明、语句构造、输入输出、效率等,其中还有一个重要的因素是_______。

三、选择题

1.项目的应用领域是选择编程语言关键的因素之一,不适合作为项目应用领域的类型是( )。

A.系统软件

B.数据处理与数据库应用

C.实时处理

D.UNIX操作系统

2.为了提高易读性,源程序内部应加功能性注释,用于说明( )。

A.模块总的功能

B.程序段或语句的功能

C.模块参数的用途

D.数据的用途

3.程序设计语言的心理特性在语言中表现不应包括( )。

A.歧义性

B.简洁性

C.保密性

D.传统性

4.程序设计语言的工程特性其中之一表现在( )。

A.软件的可重用性

B.数据结构的描述性

C.抽象类型的描述性

D.数据库的易操作性

5.程序设计语言的技术特性不应包括( )。

A.数据结构的描述性

B.抽象类型的描述性

C.数据库的易操作性

D.软件的可移植性

四、简答题

1.在项目开发时,选择程序设计语言通常考虑哪些因素?

2.什么是程序设计风格?应在哪些方面注意培养良好的设计风格?

参考答案

二、填空题

1.心理特性、工程特性、技术特性

2.歧义性、简洁性、局部性、顺序性和传统性

3.可移植性、开发工具的可利用性、软件的可重用性、可维护性

4.科学工程计算、数据处理与数据库应用、实时处理、系统软件、人工智能

5.源程序文档化

三、选择题

1.D.

2.B.

3.C.

4.A.

5.D.

第七章

一、名词解释

1. 软件测试

2.黑盒法

3.白盒法

4.渐增式测试

5.非渐增式测试

6.调试

二、填空题

1.软件测试是为了_____而执行程序的过程。

2.运行被测程序的方法称为_______测试。

3.动态测试中,主要测试软件功能的方法称为______法。

4.选择测试用例,使得被测程序中每个判定的每个分支至少执行一次,这种逻辑覆盖标准称为_______。

5.要覆盖含有循环结构的所有路径是不可能的,一般通过限制_____来测试。

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

7.凭经验或直觉推测程序中可能存在的错误而设计测试用例的方法是_______。

8.集成测试中的具体方法是______。9.确认测试阶段的两项工作是______。

10.在单元测试中,测试一个模块时,需要设计_______。

三、选择题

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.开发计划

四、简答题

1.软件测试的目的是什么?软件调试的目的是什么?

2.白盒法有哪些逻辑覆盖标准?这些标准有什么关系?

3.属于黑盒法的测试用例设计方法有哪几种?试对这些方法作比较。

4.软件测试要经过哪几个阶段?各个阶段与什么文档有关?

5.渐增式测试与非渐增式测试有哪些区别?用渐增式测试时具体采用什么方法和策略组装模块?

五、应用题

下图描述了某个子程序的处理流程,根据判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖、路径覆盖等五种覆盖标准,从供选择的答案中分别找出满足相应标准的最小的测试数据组。

(1) a=5 b=1 (2) a=5 b=-1

(3) a=5 b=1 (4) a=5 b=1

a=-5 b=-1 a=0 b=-1

(5) a=5 b=-1 (6) a=5 b=1

a=-5 b=1 a=0 b=0

a=-5 b=-1 a=-5 b=-1

(7) a=5 b=1 (8) a=5 b=1

a=0 b=1 a=0 b=-1

a=0 b=-1 a=-5 b=1

a=-5 b=1 a=-5 b=-1

流程图如下:

参考答案

二、填空题

1.发现错误

2.动态测试

3.黑盒法

4.判定覆盖

5.循环次数

6.两个不合理等价类

7.错误推测法

8.渐增式和非渐增式测试方法

9.进行确认测试和软件配置审查10.驱动模块和桩模块

三、选择题

1.B.

2.C.

3.B.

4.D.

5.D.

6.A.

7.B.

8.D.

9.A. 10.A.

五、应用题

达到判定覆盖为(4);达到条件覆盖为(3);达到判定/条件覆盖为(6);

达到条件组合覆盖为(8);达到路径覆盖为(7)。

第八章

一、名词解释

1.校正性维护2.适应性维护3.完善性维护

4.预防性维护5.软件可维护性 6.软件维护的副作用

二、填空题

1.维护阶段是软件生存周期中时间最长的阶段,也是花费精力和费用________的阶段。

2.在软件交付使用后,由于在软件开发过程中产生的错误没有完全彻底在开发阶段发现,必然有一部分隐含错误带到_________阶段。

3.采用手工方法开发软件只有程序而无文档,维护困难,这是一种___________维护。

4.软件维护费用增加的主要原因是维护的_________非常低。

5.软件维护工作的活动分为生产性活动和__________活动。

6.所有软件维护申请报告要按规定方式提出,该报告也称_________报告。

7.有两类维护技术:在开发阶段使用来减少错误,提高软件可维护性的面向维护技术;在维护阶段用来提高维护的效率和质量的_______技术。

三、选择题

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.可理解性和可读性

四、简答题

1.软件维护有哪些类型?2.软件维护的特点是什么?3.软件维护的流程是什么?4.软维护的副作用有哪些?5.可维护性度量的质量特性有哪些?6.提高可维护性有哪些方法?

参考答案

二、填空题1.最多2.维护3.非结构化4.生产率

5.非生产性6.软件问题7.维护支援

三、选择题

1.D 2.B 3.C 4.B5.C 6.C 7.C 8.A 9.C

第九章

一、名词解释

1.增量开发

2.增量提交

3.原型

4.软件原型

5.增量构造模型

6.演化提交模型

7.快速原型模型二、填空题

1.瀑布模型本质上是一种_______模型。

2.瀑布模型不适应需求可变的软件开发,只有到开发结束时才能见到_______。

3.增量模型在开发过程中以一系列增量方式开发系统,忽略某阶段的细节,从而尽早产生_______。

4.增量构造模型在分析和设计阶段按整体方式开发,按增量方式开发的是_______阶段。

5.演化提交模型中,项目开发各阶段都是按_______开发的。

6.软件原型是软件的早期可运行版本,反映最终系统的_______。

7.用原型过程来代替需求分析,使需求说明完整、一致、准确,该原型是_______原型。

8.用原型过程来代替全部开发阶段,这种快速原型是_______原型。

9.若原型不满足需求说明,则根据明确的要求修改_______。

三、选择题

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.全部需求

四、简答题

1.说明瀑布模型的局限性。

2.说明渐增模型有哪些特点。

3.说明快速原型模型的基本思想。

4.说明快速原型的开发过程。

5.说明快速原型有几种?各自的特点是什么?

6.说明快速原型的优缺点。

参考答案

二、填空题

1.线性顺序

2.整个软件系统

3.工作软件

4.编码和测试

5.增量方式

6.重要特性

7.探索型8.演化型9.原型

三、选择题1.B 2.B 3.C 4.D 5.D 6.B

第十章

一、名词解释

1.对象

2.类

3.属性

4.操作

5.消息

6.消息传递

7.方法

8.关系

9.关联10.一般具体关系 11.整体部分关系12.继承13.单重继承 14.多重继承15.多态性 16.角色17.受限关联 18.封装19.对象模型20.动态模型21.功能模型 22.事件23.状态24.事件追踪25.状态图26.动作27.活动28.处理

29.数据流30.动作对象31.数据存储对象 32.重用性

二、填空题

1.对象具有封装性,实现了______的结合。

2.类的实例化是______。

3.类具有属性,描述类的属性用______。

4.类具有操作,它是对象______的抽象。

5.对象之间进行通信的构造叫做______。

6.子类自动共享父类的属性和操作的机制称为______。

7.子类只继承一个父类的属性和操作,这称为______。

8.不同应用中信息共享的这种机制和构造是通过______来实现的。9.对象模型的主要元素是类、关联和______。10.受限关联由两个类和一个______组成。

三、选择题

1.汽车有一个发动机。汽车和发动机之间的关系是( )关系。

A.一般具体

B.整体成员

C.分类关系

D.is a

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.属性

四、简答题

1.说明面向对象的特征。

2.说明面向对象的要素。

3.说明对象的本质。

4.说明对象模型的特征。

5.说明动态模型的特征。

6.说明功能模型的特征。

7.说明构造对象模型的各个元素及图形表示。

8.说明构造动态模型的各个元素及图形表示。9.说明构造功能模型的各个元素及图形表示。

10.说明分析阶段建立的三个模型的关系。11.说明确定类、属性、关联的方法。

12.说明确定一般具体关系的方法。13.说明确定整体部分关系的方法。

14.说明确定操作的方法。15.说明建立对象模型的过程。

16.说明建立动态模型的过程。17.说明建立功能模型的过程。

18.说明系统设计的步骤。19.说明对象设计的步骤。20.说明面向对象的实现。

五、应用题

1.一本书的组成有一个封面,一个目录,一个前言,若干章,每章有若干节,每节有若干段,每段有若干句子,每节有0个或多个插图,还有0个或多个表格,最后有一个附录。建立该书的对象模型。

2.交通工具分为空中、陆上、水上交通工具,空中交通工具分为客机、货机、专用轻型机,陆上交通工具分为火车、汽车;火车汽车又分为客车、货车;水上交通工具分为客轮、货轮、客货混合轮。建立交通工具的对象模型。

3.一台微机有一个显示器,一个主机,一个键盘,一个鼠标,汉王笔可有可无。主机包括一个机箱,一个主板,一个电源,存储器等部件。存储器又分为固定存储器、活动存储器,固定存储器又分为内存和硬盘,活动存储器又分为软盘和光盘。建立微机的对象模型。

4.一个软件公司有许多部门,分为开发部门和管理部门两种。每个开发部门开发多个软件产品。每个部门由部门名字唯一确定。该公司有许多员工,员工分为经理、工作人员和开发人员。开发部门有经理和开发人员,管理部门有经理和工作人员。每个开发人员可参加多个开发项目,每个开发项目需要多个开发人员,开发人员使用语言开发项目。每位经理可主持多个开发项目。建立该公司的对象模型。

5.在温室管理系统中,有一个环境控制器类,当没有种植作物时处于空闲状态。一旦种上作物,就要进行温度控制,定义气候,即在什么时期应达到什么温度。当处于夜晚时,由于温度下降,要调用调节温度过程,以便保持温度;太阳出来时,进入白天状态,由于温度升高,要调用调节温度过程,保持要求的温度。当日落时,进入夜晚状态。当作物收获,终止气候的控制,则进入空闲状态。建立环境控制器类的状态图。

参考答案

二、填空题

1.数据和操作

2.对象

3.数据结构

4.行为

5.消息

6.继承

7.单重继承

8.类库

9.关系10.限定词

三、选择题

1.B

2.C

3.C

4.D

5.C

6.A

7.B

8.B

9.B 10.A 11.C

五、应用题

1.书的对象模型如图10-1所示。

2.交通工具的对象模型如10-2所示。

3.微机的对象模型如图10-3所示。

4.软件公司的对象模型如图10-4所示。

5.温室管理系统中的环境控制器类的状态图如图10-5所示。

第十一章

一、名词解释

1.软件质量

2.软件质量保证

3.可测性

4.可移植性

5.可重用性

6.容错软件

7.信息冗余

二、填空题

1.影响软件质量的因素有可直接度量的因素和________两大类。

2.软件质量保证就是向用户及社会提供满意的高质量产品,确保软件产品从诞生到消亡为止的所有阶段的__________。

3.软件质量保证的任务是_________。

4.为了作好软件质量评价,必须在开发前定义其________。

5.ISO的软件质量评价模型分为三个层次,其中第一层称为质量特征层;第二层称为质量子特征层;第三层称为_________层。

6.软件复杂性度量的参数主要有难度、结构、智能度和_________。

7.软件的规格说明分为外部规格说明和___________。

8.设计质量的评审是针对需求分析阶段产生的软件需求规格说明书、数据需求规格说明,在软件概要设计阶段产生的________进行的评审。

9.程序质量评审通常是从开发者的角度进行评审,直接与开发技术有关。它是着眼于_______变更带来的影响而进行的评审活动。

10.冗余是指实现系统规定功能是多余的那部分资源,包括硬件、软件、时间和________。

11.McCabe复杂性度量又称___________.

12.当程序的分支数目或循环数目增加时其复杂度也增加,因此环路的复杂度取决于___________的复杂度。

13.提高软件质量和可靠性的技术大致可分为两大类,一类是避开错误技术,另一类是_________。

14.质量保证策略大致分为三个阶段:以检测为重、__________和以新产品开发为重。

15.软件产品制成后才进行检测,这种检测只能判断产品的质量,不能提高________。

16.把质量保证工作重点放在过程管理上,对制造过程的每一环节都进行_________。

17.软件复杂性主要表现在程序复杂性。程序的复杂性主要指_________程序的复制性。

18.为了减少软件开发费用,缩短软件开发周期,减少软件内部潜在错误,可以减少程序复杂性,以提高软件的简单性和_________。

19.在软件的设计中占有极其重要的地位的是软件功能结构,它是联系__________跟开发者的规格说明。

三、选择题

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.对软件产品,一般有4个方面影响着产品的质量,除了过程质量、人员素质及成本、时间和进度等条件外,其中很重要的是( )。

A.概要设计说明

B.需求规格说明

C.详细设计说明

D.开发技术

9.质量保证,它是为保证产品和服务充分满足( )要求而进行的有计划、有组织的活动。

A.开发者

B.生产者

C.测试者

D.消费者

10.软件可靠性是最重要的软件特性,通常用它来衡量在规定的条件和时间内,软件完成( )的能力。

A.需求分析

B.规定功能

C.概要设计

D.软件测试

11.软件可靠性的定量指标,常借用硬件可靠性的定量度量方法来度量软件的可靠性,其中MTBF是( )。

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.操作系统

四、简答题

1.软件质量的含义是什么?

2.影响软件质量的因素分为哪两大类?

3.Boehm和McCall等人从哪些方面来确定软件质量?他们有什么异同?

4.ISO提出的关于软件质量度量模型由哪三个层次组成?

5.软件质量保证的策略可以分为哪几个阶段?各有什么特征?

6.软件质量保证的主要任务是什么?

7.质量度量模型主要有哪几种?各有什么特征?有什么不同?

8.软件复杂度量主要包含哪几方面内容?

9.程序复杂性的度量方法有哪些?

10.软件可靠性度量模型可以分为哪几类?

11.为什么要进行软件评审?软件设计质量评审与程序质量评审都包括哪些内容?

12.如何实现容错软件?通常采用哪些方法?13.如果让你开发以下三种不同类型的软件:

(1)实时系统;(2)管理信息系统;(3)安全系统。

你选择哪些不同的软件质量特性作为不同软件的质量要求,并对每一特性要求做出说明。

参考答案

二、填空题

1.只能间接度量的因素2.质量活动3.保证软件质量4.质量需求

5.度量 6.规模7.内部规格说明8.软件概要设计说明书

9.软件本身的结构与运行环境的接口10.信息11.环路度量12.程序控制结构

13.容错技术14.以过程管理为重15.产品质量16.质量控制

17.模块内18.可理解性19.用户

三、选择题

1.B

2.A

3.B

4.D

5.A

6.A

7.D

8.C

9.D 10.B

11.B 12.C 13.C 14.B 15.B16.C 17.A

第十二章

一、名词解释

1.软件项目计划

2.人力资源

3.硬件资源

4.软件资源

5.专家估算

6.类推估算

7.算式估算8.COCOMO估算9.工程网络图

10.软件配置管理11.软件配置项12.基线

13.版本控制14.变更控制

二、填空题

1.软件工程包括软件开发技术和______两大部分内容。

2.软件工程管理不同于其他工程管理,它对保证高质量的______产品更具有极为重要的意义。

3.软件工程管理的具体内容包括对开发人员、组织机构、用户、______等方面的管理。

4.在一个软件项目的开发过程中要自始至终得到______的密切合作与支持。

5.软件项目计划的第一项活动是确定______。

6.主程序员组织机构的制度突出了主程序员的领导,责任集中在少数人身上,有利于提高______。

7.在一个大系统的开发过程中,由于______失误造成的后果要比程序错误造成的后果更为严重。

8.软件开发人员一般分为:______、系统分析员、高级程序员、初级程序员、资料员和其他辅助人员。

9.在软件项目管理过程中,一个关键的活动是______。

10.目前软件工程规范可分为三级:国家标准与国际标准、行业标准与工业标准和______。

11.成本估算方法中,有自顶向下估算方法、自底向上估算方法和______方法。

12.差别估算的缺点是不容易明确“差别”的界限,但它的优点是可以提高______。

13.基线的作用是把各阶段的开发工作划分得更加明确,便于检查与确认阶段成果。因此,基线可以作为项目的一个______。

14.在软件开发和维护过程中,一个软件往往有许多版本,版本控制工具用来存储、更新、恢复和管理一个软件的______。

三、选择题

1.软件工程管理是对软件项目的开发管理,即对整个软件( )的一切活动的管理。

A.软件项目

B.生存期

C.软件开发计划

D.软件开发

2.单元测试是发现编码错误,集成错误是发现接口错误,确认错误是发现功能错误,系统测试是发现( )错

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

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 )。

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

《软件工程导论》期末考试-试题与答案 一、填空题 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、计算机软件不仅仅是程序,还应该有一整套(文档资料). 2、软件定义时期的最后一个工作阶段是(需求分析)阶段。 3、(快速原型)模型的基本特性是“快速”和“容易修改”。 4、信息流的类型主要包括(事务流)和(变换流)。 5、(判定表)适用于表示多重嵌套的条件选择。 6、我们通常采用的调试途径包括(蛮干法,回溯法和原因消除法)。 7、程序流程图中的箭头代表(控制流) 8、内聚程度较低的是(偶然)内聚。 9、软件工程方法学三要素(方法,工具,过程). 10、可行性分析至少应从(经济,技术,操作)三方面研究每种解法的可行性。 11、(可行性研究)的目的就是用最小的代价在尽可能短的时间内确定该软件项目是否 能够开发,是否值得开发。

12、在大型数据处理系统的功能分析与设计中,同时进行数据分析和数据设计。数据 库的“概念设计”与“逻辑设计”分别对应于系统开发中的(总体设计)和(需求分析 )阶段,而数据库的物理与模块的(详细设计)相对应。 13、模块之间联系越紧密,其耦合性就越(高),模块的独立性就越(低) 。 14、要把数据流图转换成软件结构,必须首先研究数据流图的类型,一般可分为事务 流和变换流两类。 15、动态测试方法中,根据测试用例设计方法的不同,分为(白盒测试和黑盒测试)。 16、软件产品在交付使用前一般要经过以下四步测试:(单元测试,集成测试,确认测 试和系统测试).对一些关系重大的系统,交付后并不立即投入生产性运行,还要经过 (平行运行)阶段

17、驱动模块的作用是用来模拟被测试模块的(上级调用模块),它只完成接收测试数 据,并把这些测试数据传送给被测试的模块,并且接收测试模块的(结果) 并输出。 18、桩(存根)模块用来代替被测试模块(所调用的模块),它的作用是返回被测试模 块所需信息。 19、软件结构是以(模块)为基础而组成的一种控制层次结构。 20.软件维护的内容包括(改正性维护,适应性维护,完善性维护和预防性维护). 二、选择 1.需求规格说明书的作用不应该包括(D )。 A、软件设计的依据 B、用户与开发人员对软件要做什么的共同理解 C、软件验收的依据 D、软件可行性研究的依据 2.软件测试方法中的静态测试方法之一为(A )A.计算机辅助静态分析B.黑盒法C.路径覆盖D.边界值分析

软件工程导论复习题

一、选择题 1、在软件开发模型中,提出最早,应用最广泛的模型是(A) A.瀑布模型 B 螺旋模型C演化模型D原型模型 2、瀑布模型存在的问题(B) A用户容易参与开发B缺乏灵活性C用户与开发者沟通D适用可变需求3、可行性研究一般不考虑(D) A是否有足够的人员和相关技术来支持系统开发 B 是否有足够的工具和相关技术来支持系统开发 C 待开发软件是否有市场、经济上是否合算 D软件开发是否有质量问题 4、软件详细设计的主要任务是确定每个模块的(A) A 算法和使用的数据类型B外部接口 C 功能D编程 5、可行性分析是在系统开发的早期所做的一项重要的论证工作,它统是否开 发的决策依据,因必须给出(B)的回答 A 确定B行或不行C正确D无 6、流程图是用来描述(D) A描绘程序结构B描绘系统的逻辑模型 C表示信息层次结构的图形工具D描绘物理系统 7、为了提高软件的可维护性,在编码阶段应注意(养成良好的程序设计风格) 总体设计阶段注意(提高模块独立性)测试阶段注意(保存测试用例和数据)8、快速原型模型的主要特点之一是(D) A开发完毕才能见到产品B及早提供全部完整的软件产品

C开发完毕后才能见到工作软件D及早提供工作软件 9、软件需求分析的主要任务是准确定义出要开发的软件系统是(C) A 如何做 B 怎么做C做什么D对谁做 10、软件维护产生的副作用,是指(C) A开发时的错误 B隐含的错误C因修改软件而造成错误D运行时误操作 11、软件生命周期中所花费用最多的阶段是(D) A 详细设计B软件编码C软件测试 D 软件维护 12、模块的内聚性最高的是(D) A 逻辑内聚B时间内聚C偶然内聚D功能内聚 13、与确认测试阶段有关的文档是(A) A需求规格说明书B概要设计说明书C详细设计说明书D源程序 14、白盒测试主要用于测试(A) A 程序的内部逻辑B程序的正确性C程序的外部功能D机构合理 性 15、软件开发和维护的工程中出现的一系列的严重问题称(D) A软件工程 B 软件开发C软件周期D内部逻辑 16、在SD方法中全面指导模块划分最重要原则(D) A 程序模块化B模块高内聚C模块低耦和D模块独立性 17、下面属于维护阶段文的档的是(C) A 软件规格说明B用户操作手册C软件问题报告D软件测试分析报告 18、软件按照设计的要求,在规定时间和条件下达到不出故障持续运行的质 量特征为(B) A 可用性B可靠性C正确性D完整性

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

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

软件工程导论复习试题库完整

a(1)在软件工程中,白盒测试法可用于测试程序的内部结构。此方法将程序看作是 A) 路径的集合 B)循环的集合C)目标的集合D)地址的集合 c(2)在下述哪一种测试中,测试程序的设计者必须接触到源程序 I.功能测试Ⅱ. 结构测试 A)均不须B)只有ⅠC)只有ⅡD)Ⅰ和Ⅱ a(3)检查软件产品是否符合需求定义的过程称为 A)确认测试B)集成测试C)验证测试D)验收测试 c(4)下述陈述中,哪一个不是软件健壮性的度量指标? A)失败后重新启动所需的时间B)引起失败的时间所占的百分比 D)失败前的平均工作时间D)在一次失败中数据恶化的概率 b(5)对软件是否能达到用户所期望的要求的测试称为 A) 集成测试B) 有效性测试C) 系统测试D) 验收测试 a(6)在面向数据流的软件设计方法中,一般将信息流分为 A)变换流和事务流B)变换流和控制流 C)事务流和控制流D)数据流和控制流 d(7)软件需求说明书是软件需求分析阶段的重要文件,下述哪个(些)是其应包含的内容 I.数据描述Ⅲ. 模块描述 II.功能描述Ⅳ. 性能描述 A)ⅡB)Ⅲ和ⅣC)Ⅰ、Ⅱ和ⅢD)Ⅰ、Ⅱ和Ⅳ (8)软件测试一般分为三类,即 I.静态测试Ⅱ. 动态测试Ⅲ. 正确性测试 设计测试用例对程序进行测试,应属于 A)ⅠB)ⅡC)Ⅰ和ⅡD)Ⅲ (9)模块独立性是由内聚性和耦合性来度量的,其中内聚性是度量____,耦合性是度量____。 A)模块间联系程度B)模块的功能强度 C)信息隐蔽程度D)模块的复杂程度 (10)软件设计中一般将用到图形工具,下述哪种(些)工具可用作设计的图形工具 I.结构图Ⅱ. 实体关系图Ⅲ. IPO图 II.Ⅳ. 流程图Ⅴ. N-S图 A)Ⅰ和ⅡB)Ⅲ和ⅣC)Ⅰ、Ⅲ、Ⅳ和ⅤD)全部 A (2)C (3)A (4)C (5) B (6)A (7)D (8)B (10)C (11)试判断下列论述中哪个(些)是正确的 I.软件系统中所有的信息流都可以认为是变换流 II.软件系统中所有的信息流都可以认为是事务流 III.事务分析和变换分析的设计步骤基本类似 A)ⅠB)ⅡC)ⅢD)Ⅰ和Ⅲ (12)软件的有效性测试是验证软件的运行是否达到用户的期望,用户的期望应体现于A)详细设计报告B)软件需求说明书 C)总体设计报告D)有效性测试要求 (13)软件设计中的软件过程其主要描述的是 A)模块间关系B)模块操作细节 C)模块控制方法D)模块类型 (14)软件测试是软件件开发过程的重要阶段,是软件质量保证的重要手段,下列哪个(些)是软件测试的任务?

软件工程导论期末复习

第一章软件工程学概述 1.什么是软件危机(概念) 在计算机软件的开发和维护过程中所遇到的一系列严重问题 2.软件工程学科出现的主要原因:软件危机的出现 3.什么是软件工程?(概念) ①把系统的、规范的、可度量的途径应用于软件开发、运行和维护过程,也就是把工程应用于软件; ②研究①中提到的途径。 4.简述结构化范型和面向对象范型的要点,并分析他们的优缺点 目前使用得最广泛的软件工程方法学(2种): ⑴传统方法学:也称为生命周期方法学或结构化范型。 优点:把软件生命周期划分成基干个阶段,每个阶段的任务相对独立,而且比较简单,便于不同人员分工协作,从而降低了整个软件开发过程的困难程度。 缺点:当软件规模庞大时,或者对软件的需求是模糊的或会承受时间而变化的时候,开发出的软件往往不成功;而且维护起来仍然很困难。 ⑵面向对象方法学 优点:降低了软件产品的复杂性;提高了软件的可理解性;简化了软件的开发和维护工作; 促进了软件重用。 5.软件生命周期每个阶段的基本任务 问题定义:准确地回答“要解决的问题是什么” 可行性研究:确定问题是否值得去解决 需求分析:准确地回答“系统必须做什么” 总体设计:①设计出实现目标系统的几种可能的方案 ②确定程序由哪些模块组成以及模块间的关系 详细设计:把解法具体化(设计出程序的详细规格说明) 编码和单元测试:写出正确的容易理解、容易维护的程序模块 综合测试:通过各种类型测试(及相应的调试)使软件达到预期的要求 软件维护:通过各种必要的维护活动使系统持久地满足用户的需要 软件生命周期由软件定义、软件开发和运行维护(也成为软件维护)3个时期组成 ①软件定义时期:问题定义、可行性研究和需求分析 ②软件开发时期:总体设计、详细设计、编码和单元测试、综合测试 ③软件维护时期

软件工程导论期末考试题

一、单项选择题 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、软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实施的主要保证是(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、需求分析、功能定义、系统设计11、软件开发中常采用的结构化生命周期方法,由于其特征而一般称其为(A) A、瀑布模型 B、对象模型 C、螺旋模型 D、层次模型 12、软件开发的瀑布模型,一般都将开发过程划分为:分析、设计、编码和测试等阶段,一般认为可能占用人员最多的阶段是(C) A、分析阶段 B、设计阶段 C、编码阶段 D、测试阶段 二.填空 21.系统流程图是描述物理模型的传统工具,用图形符号表示系统中各个元素表达了系统中各种元素之间的(信息流动)情况。 [解析]系统流程图是描述物理系统的传统工具,用图形符号表示系统中的各个元素,如人工处理、数据处理、数据库、文件、设备等,表达了元素之间的信息流动的情况。 22.成本效益分析的目的是从(经济)角度评价开发一个项目是否可行。 [解析]成本效益分析首先是估算将要开发的系统的开发成本,然后与可能取得的效益进行比较和权衡,其目的是从经济角度评价开发一个新的软件项目是否可行。 23.自顶向下结合的渐增式测试法,在组合模块时有两种组合策略:深度优先策略和(宽度优先策略)。 [解析]渐增式测试法有自顶向下结合和自底向上结合两种组装模块的方法,其中自顶向下集成是构造程序结构的一种增量式方式,不需要编写驱动模块,只需要编写桩模块。它从主控模块开始,按照软件的控制层次结构,以深度优先或宽度优先的策略,逐步把各个模块集成在一起。 24.独立路径是指包括一组以前没有处理的语句或条件的一条路径。从程序图来看,一条独立路径是至少包含有一条(在其他独立路径中未有过)的边的路径。 [解析]在基本路径测试中,以详细设计或源程序为基础,导出控制流程图的拓扑结构——程序图,在计算了程序图的环路复杂性之后,确定只包含独立路径的基本路径图,其中独立路径是包括一组以前没有处理的语句或条件的一条路径。从程序图来看,一条独立路径是至少包含有一条在其他独立路径中未有过的边的路径。 25.汇编语言是面向(机器)的,可以完成高级语言无法完成的特殊功能,如与外部设备之间的一些接口工作。 [解析]汇编语言属于低级语言,是一种面向机器的语言,它与高级语言相比有许多优越性:如操作灵活,可以直接作用到硬件的最下层,完成与外部设备的接口工作等,是能够利用计算机硬件特性直接控制硬件设备的唯一语言。 26.在JSP方法中解决结构冲突的具体办法是(中间数据结构或中间文件)。 [解析]JSP方法是面向数据结构的设计方法。它定义了一组以数据结构为指导的映射过程,根据输入、输出的数据结构,按一定的规则映射成软件的过程描述,在JSP方法中解决结构冲突的具体办法是引入中间数据结构或中间文件,将冲突部分分隔开来,建立多个程序结构,再利用中间文件把它们联系起来,构成一个系统的整体。 27.详细设计的任务是确定每个模块的内部特性,即模块的算法、(使用的数据)。 [解析]详细设计的基本任务是为每个模块进行详细的算法设计,为模块内的数据结构进行设计,确定每个模块的内部特性,包括模块的算法和使用的数据。对数据库进行物理设计等。 28.所有软件维护申请报告要按规定方式提出,该报告也称(软件问题)报告。 [解析]在软件维护的流程中,第一步就是制定维护申请报告,也称为软件问题报告,它是维护阶段的一种文档,由申请维护的用户填写。

软件工程导论复习知识点

一、软件: 软件定义: 软件=程序+文档+数据 软件特点: 1、具有抽象性 2、没有明显的制造过程 3、软件的维护比硬件的维护要复杂得多 4、对计算机系统有着不同程度的依赖性 5、尚未完全摆脱手工艺的开发方式 6、软件本身是复杂的 7、软件成本相当昂贵 8、相当多的软件工作涉及到社会因素软件的发展: 程序设计、程序系统、软件工程 软件危机: 软件危机指的是软件开发和维护过程中遇到的一系列严重问题。 软件危机的问题: 如何开发软件,怎样满足对软件的日益增长的需求;如何维护数量不断膨胀的已有软件。 软件危机表现: 1.开发成本难以控制,进度不可预计; 2.软件系统的质量和可靠性很差,难以满意; 3.软件文档相当缺乏,软件系统不可维护; 4.软件开发生产率很低,软件产品供不应求。 5.软件产品成本十分昂贵。

软件危机产生原因: 1、软件本身的特点 2、对软件开发与维护存在许多错误认识和做法 3、软件开发与维护的方法不正确 解决软件危机途径: 1、将软件开发看成是一种组织严密、管理严格、各类人员协同配合共同完成的工程项目。 2、研究和推广成功的软件开发技术和方法。 3、开发和使用好的软件工具。 软件生命周期: 软件所经历的定义、开发、使用和维护直到废弃所经历的时期。 程序设计环境: 源程序编辑,编译或解释,链接,调试和运行工具的集合 软件工程环境: 软件定义,设计和实现,测试和维护等各个阶段所使用的软件工具的集合 二、软件工程: 软件工程定义: 研究如何应用一些科学理论和工程上的技术来指导软件的开发,用较少的投资获得高质量的软件的一门学科。 软件工程性质: 涉及计算机科学、工程科学、管理科学、数学等领域,着重于如何建造一个软件系统。用工程科学中的观点来进行费用估算、制定进度、制定计划和方案。用管

软件工程导论试题

1.办公室复印机的工作过程大致如下: 未接到复印命令时处于闲置状态,一旦接到复印命令则进入复印状态,完成一个复印命令规定的工作后又回到闲置状态,等待下一个复印命令; 如果执行复印命令时发现缺纸,则进入缺纸状态,发出警告,等待装纸,装满纸后进入闲置状态,准备接受复印命令;如果复印时发生卡纸故障,则进入卡纸状态,发出警告等待维修人员排除故障,故障排除后回到闲置状态。 请试画出复印机的状态转换图 答案: 2.录入统计计算某班学生成绩,画出数据流图(DFD)。 学生成绩表数据结构如下: 学号|高数|物理|英语|计算机|法律常识|总分|平均分|不及格门数|升留补| 需求功能如下: (1)录入全班学生各课的考分,生成成绩表; (2)检查各课成绩,修改错误,补充未录入成绩,删除非法成绩; (3)计算总分,平均分;

(4)统计不及格门数,然后再写入升级、补考、留级; (5)打印成绩通知单,交家长。 答案: 3.中国古代在“室”内举办宴会,座位以西为尊,北次之,南再次之,东最次。“按上北下南,左西右东”的方位和长幼尊卑的顺序进行入座。孙坚有四个儿子,分别为孙伯符、 孙叔弼、孙仲谋、孙季佐(长幼顺序已打乱),请根据以上叙述,画出入座顺序的程序流程图以及座位分布图。 答案: 座位分布图 程序流程图: 错误成绩通知

4.简要画出电梯系统用例图 答案: 5. 画出下列伪码程序的程序流程图和盒图:START IF p THEN WHILE q DO f END DO ELSE BLOCK m n END BLOCK

END IF STOP 流程图: 盒图:

软件工程导论期末试题

软件工程导论期末考试试题 一.选择(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分,共10分) 1、在结构性的瀑布模型中,哪一个阶段定义的标准将成为软件测试中的系统测试阶段的目标( A ) (A)需求分析阶段(B)详细设计阶段(C)概要设计阶段(D)可行性 2、研究阶段软件工程方法中普遍定义的方法之一是结构化生命周期方法(SLC方法),下述哪一个论述不具有SLC方法的主要特征( C ) A 严格定义需求 B 划分开发阶段 C 规范文档格式 D 分析控制流程 3、软件结构中两个模块之间有调用关系,传递简单数据值,相当于高级语言中的值传递,这两个模块之间的耦合是( D ) (A)公共耦合(B)控制耦合(C)标记耦合(D)数据耦合 4、软件维护的四类维护活动是( A ) (A)改正性维护,适应性维护,完善性维护和预防性维护。 (B)适应性维护,完善性维护,抢救性维护和辅助性维护。 (C)改正性维护,适应性维护,完善性维护和辅助性维护。 (D)适应性维护,完善性维护,抢救性维护和预防性维护。 5、主要从( A )几个方面进行系统可行性研究。 (A)技术可行性,经济可行性,操作可行性。(B)技术可行性,经济可行性,系统可行性。(C)经济可行性,系统可行性,操作可行性。(D)经济可行性,系统可行性,时间可行性。 6、进行需求分析可使用多种工具,但( C )是不适用的。 (A)数据流图(B)判定表(C)PAD图(D)数据字典 7、软件需求分析阶段的工作,可以分为四个方面:对问题的识别、分析与综合、编写需求分析文档以及( B ) (A)软件的总结(B)需求分析评审(C)阶段性报告(D)以上答案都不对8、OMT(Object Modelling Technique)方法的第一步是从问题的陈述入手,构造系统模型。系统模型由对象模型、( C )组成。 A静态模型和功能模型 B动态模型和过程模型 C动态模型和功能模型 D静态模型和操作模型 9、为了表示项目管理功能工作中各项任务之间的进度衔接关系,常用的计划管理工具是( D ) (A)程序结构图(B)数据流图(C) E-R图(D)甘特(Gantt)图 ①软件生命周期中所花费用最多的阶段是(D) A.详细设计B.软件编码C.软件测试D.软件维护 ②可行性分析是在系统开发的早期所做的一项重要的论证工作,它是决定该系统是否开发的决策依据,因必须给出(B)的回答。 A.确定B.行或不行C.正确D.无二义 ③下列关于瀑布模型的描述正确的是(C)。 A. 瀑布模型的核心是按照软件开发的时间顺序将问题简化。 B. 瀑布模型具由于良好的灵活性。 C. 瀑布模型采用结构化的分析与设计方法,将逻辑实现与物理实现分开。 D. 利用瀑布模型,如果发现问题则修改的代价很低。 ④详细设计的结果基本决定了最终程序的(C) A.代码的规模B.运行速度C.质量D.可维护性

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

得分评卷人 一、填空题(每空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、熟练的开发人员

软件工程导论试题

软件工程导论试题 Document number【SA80SAB-SAA9SYT-SAATC-SA6UT-SA18】

1.办公室复印机的工作过程大致如下: 未接到复印命令时处于闲置状态,一旦接到复印命令则进入复印状态,完成一个复印命令规定的工作后又回到闲置状态,等待下一个复印命令; 如果执行复印命令时发现缺纸,则进入缺纸状态,发出警告,等待装纸,装满纸后进入闲置状态,准备接受复印命令;如果复印时发生卡纸故障,则进入卡纸状态,发出警告等待维修人员排除故障,故障排除后回到闲置状态。 请试画出复印机的状态转换图 答案: 2.录入统计计算某班学生成绩,画出数据流图(DFD)。 学生成绩表数据结构如下: 学号|高数|物理|英语|计算机|法律常识|总分|平均分|不及格门数|升留补| 需求功能如下: (1)录入全班学生各课的考分,生成成绩表; (2)检查各课成绩,修改错误,补充未录入成绩,删除非法成绩; (3)计算总分,平均分; (4)统计不及格门数,然后再写入升级、补考、留级; (5)打印成绩通知单,交家长。 答案:

3.中国古代在“室”内举办宴会,座位以西为尊,北次之,南再次之,东最次。“按上北下南,左西右东”的方位和长幼尊卑的顺序进行入座。孙坚有四个儿子,分别为孙伯符、孙叔弼、孙仲谋、孙季佐(长幼顺序已打乱),请根据以上叙述,画出入座顺序的程序流程图以及座位分布图。 答案: 座位分布图 程序流程图: 错误成绩通知

4.简要画出电梯系统用例图 答案: 5. 画出下列伪码程序的程序流程图和盒图:START IF p THEN WHILE q DO f END DO ELSE BLOCK m n END BLOCK END IF STOP 流程图:

最新软件工程导论期末考试试题

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

软件工程导论试题集汇总

1. 航空公司“机票预定系统”: 航空公司为给旅客乘机提供方便,需要开发一个机票预定系统。各个旅行社把预定机票的旅客信息(姓名、性别、工作单位、身份证号码(护照号码)、旅行时间、旅行始发地和目的地,航班舱位要求等)输入到系统中,系统根据旅客信息和航班信息为旅客安排航班。当旅客交付了预订金后,系统打印出取票通知和帐单给旅客,旅客在飞机起飞前一天凭取票通知和帐单交款取票,系统核对无误即打印出机票给旅客。 请用结构化分析方法,给出系统的功能模型(DFD描述)。 参考答案:( 2. 一个简化的机票销售系统需求描述如下: 售票员根据旅客需要的航班,首先查询有无该航班机票。若有,则负责录入旅客的基本信息,并将指定的机票标志设置为售出;售票部经理可随时查询每一个航班的售票情况,并在当日结算时能计算出日营业

3. 图书馆的预定图书子系统有如下功能: (1)由供书部门提供书目给订购组 (2)订书组从各单位取得要订的书目 (3)根据供书目录和订书书目产生订书文档留档 (4)将订书信息(包括书目、数量)反馈给供书单位 (5)将未订书目通知订书者 (6)对于重复订购的书目有系统自动检查,并将结果反馈给订书者 画出数据流图,并转换为软件结构图。 4.某单位要研制一个计算机培训管理系统,它的业务是将学员发来的信件收集分类后,按以下几种情况处理:

如果是报名,则将报名数据送给负责报名事物的职员,他们将查阅课程文件,检查课程是否满额,然后在学生文件、课程文件上登记,并开出报告单较财务部们,财务人员开出发票给学生。 2)注销课程; 如果是想要注销原来已选修的课程,则有注销人员在课程文件、学生文件和账目文件上做相应的修改,并给学生注销单。 3)处理付款 如果是付款,则有财务人员在账目文件上登记,也给学生一张收费收据。 要求:给出该系统的数据流图和软件结构图。 参考答案:(1)数据流图 (2)结构图 5. 假设一家工厂的采购部每天需要一张定货报表,报表按零件编号排序,表中列出所有需要再次定货的零件。对于每个需要再次定货的零件应该列出下述数据;零件编号、零件名称、定货数量、目前价格、主要供应者和次要供应者。零件入库或出库称为事务,通过放在仓库中的CRT终端把事务报告给定货系统。当某种零件的库存数量少于库存量临界值时就应该再次定货。 要求:用结构化方法学对定货系统进行分析及设计,分别完成以下工作: (1) 给出定货系统的功能模型。

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

软件工程导论期末考试试 题和答案 It was last revised on January 2, 2021

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、不是不可以理解的 B、是不能容忍的 C、是要求退货的理由 D、是必然的 1.在进行总体设计时应加强模块间的联系。( N ) 2.系统结构图是精确表达程序结构的图形表示法。因此,有时也可以将系统结 构图当作系统流程图使用。( N ) 3.用黑盒法测试时,测试用例是根据程序内部逻辑设计的。( N ) 4.在程序调试时,找出错误的位置和性质比改正该错误更难。( Y ) 5.以对象、类、继承和通信为基础的面向对象设计方法(OOD)也是常见的软 件概要设计方法之一。( Y ) 6.如果通过软件测试没有发现错误,则说明软件是正确的。( N ) 7.快速原型模型可以有效地适应用户需求的动态变化。( Y )

相关文档
相关文档 最新文档