软件工程试题及答案

软件工程

一、单项选择题

1. TURBO PASCAL是()软件。

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. Jackson方法是一种面向()的方法。

A.数据流

B.对象

C.数据结构

D.控制流

9. 软件详细设计的主要任务是对()进行的详细设计。

A.算法和数据结构

B.外部接口

C.软件编码

D.功能

10. 银行计算机储蓄管理信息系统中,根据客户提出的要求(如存款、取款、查询、挂失、咨询等)进行相应的业务处理的该层数据流图是()_。

A.变换型

B.事务型

C.既不是A也不是B

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.系统模型,ER模型,应用模型

B.对象模型,动态模型,实现(应用)模型

C.ER模型,对象模型,功能模型

D.对象模型,动态模型,功能模型

18. 在面向对象软件方法中,“类”是()。

A.具有同类数据的对象的集合

B.具有相同操作的对象的集合

C.具有同类数据的对象的定义

D.具有同类数据和相同操作的对象的定义

19. 动态模型的描述工具是( ) 。

A. 对象图

B. 结构图

C. 流程图

D. 状态图

20. 结构化程序设计思想的核心是要求程序只由顺序、循环和()三种结构组成。

A. 选择

B. 单入口

C. 单出口

D. 有规则GOTO

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

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

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

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

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

22. 在对数据流的分析中,主要是找到中心变换,这是从()导出结构图的关键。

A.数据结构B.实体关系C.E-R图D.数据流图

二、判断题

1. 结构化方法的工作模型是使用螺旋模型进行开发。( )

2. RCP法与RSP法的主要区别是,前者采用循环渐进的开发方式,原型将成为最终的产品,而后者将被废弃。( )

3. 软件危机的主要表现是软件的需求量迅速增加,软件价格上升。( )

4. 可行性研究阶段要进行一次大大压缩简化了的系统分析和设计的过程。( )

5. 数据流图表示了软件系统对数据的算法处理过程,即系统的物理模型。( )

6. 加工说明是对系统流程图中的加工进行说明。( )

7. 需求管理主要是对需求变化的管理,即如何有效控制和适应需求的变化。( )

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

9. 在进行了可行性分析后,需求分析就只需要解决目标系统的设计方案。( )

10. 在软件开发的过程中,若能推迟暴露其中的错误,则为修复和改正错误所花费的代价就会降低。()

11. 软件技术复审是由用户和测试人员实施的一种质量保证活动。()

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

13. 当验收测试通过,软件开发就完成了。()

14. 好的测试用例应能证明软件是正确的。()

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

16. 软件开发小组的组成人员的素质应该好,而人数则不宜过多

17. 文档是影响软件可维护性的决定因素

18. 文档只起备忘录的作用,可以在软件开发完成后再整理生成。

19. 面向对象的开发方法包括面向对象的分析、面向对象的设计和面向对象的程序实现。( )

20. 面向对象分析,就是抽取和整理用户需求并建立问题域精确模型的过程。( )

21. 模型是对现实的简化,建模是为了更好地理解所开发的系统。()

22. 模块独立要求高耦合低内聚。()

23. 一般况来,模块的内聚程度越高,它们之间的耦合程度也就越高。()

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

件产品。()

三、简答题

1. 什么是软件生存周期模型?有哪些主要模型?

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

3. 什么是软件工程?它的目标和内容是什么?

4. 数据字典是用来定义_________ 中的各个成份的具体含义的。()

A .流程图

B .功能结构图

C .系统结构图

D .数据流图

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

A. 技术可行性

B. 经济可行性

C. 社会可行性

D. 法律可行性

6. DFD 图不反映出系统( )

A. 系统做什么

B. 系统功能如何实现

C. 系统由谁来做

D. 系统实现的约束条件

7. 描述加工逻辑有哪些工具?

8. 什么是需求分析?需求分析阶段的基本任务是什么?

9. 结构化分析方法通过哪些步骤来实现?

10. 移动通信公司为促进业务的发展发行优惠卡,具体规则如下:(10分)

从未发生过话费拖欠,每月通话费300元以上可获金卡,每月通话费150元以上可获银卡,每月通话费低于150元以上可获普通卡;

发生过话费拖欠的,能在规定时间内补清欠款,每月通话费300元以上可获银卡,每月通话费150元以上可获普通卡;

发生过拖欠话费,并未能在规定时间内补清欠款,不能获得优惠卡。

请用判定表描述上述问题的加工逻辑

11. 过程如下图所示的流程,试用判定表予以描述

12. 其流程如下图所示。(10分)

其中b1 、b2、b3为判定的逻辑条件,s1、s2为加工处理。试用判定表给予描述。

13. 一个程序能够既正确又不可靠吗?请加以解释。

14. 软件测试包括哪些类型的测试?这些测试之间的区别是什么?

15. 简述渐增式测试方法与非渐增式测试方法的优劣。

16. 软件维护有哪些内容?

17. 软件维护的特点是什么?

18. 软件维护的流程是什么?

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

20. 面向对象的特征和要素?

21. 三种模型的关系?

22. 试述"变换分析","事务分析"的设计步骤。

23. 模块的内聚性有哪几种?各表示什么含义?

24. 模块间的耦合性有哪几种?它们各表示什么含义?

四、问答题

1. 指出下列数据流图中存在的问题

2. 某银行的计算机储蓄系统功能是:将储户填写的存款单或取款单输入系统,如果是存款,系统记录存款人姓名、住址、存款类型、存款日期、利率等信息,并打印出存款单给储户;如果是取款,系统计算清单储户。请用DFD描绘该功能的需求,并建立相应的数据字典

3. 自学考试报名过程中有个“记录报名单”的加工。该加工主要是根据报名表(姓名、性别、身份证号、课程名)和开考课程(课程名、开考时间)、经校核,编号、填写、输出准考证给报名者,同时记录到考生名册中(准考证号、姓名、课程)。请绘制该加工的DFD图,并写出数据词典中的数据流条目

4. 决定比赛名单”这个加工,根据“运动员名单”和“比赛项目”产生“项目参加者”,如下图所示,运动员名单要包括所在队名,运动员编号号,运动员姓名,及参加的所有项目。请写出这三个数据流条目

5. 已知有一段程序的含义如下,首先输入任意三个数A,B,C;如果(A>1)AND (B=0)则C=C/A,否则(A=2)OR (C>1)则C=C+1;

1)请画出流程图并转化为程序图(5分)

2)设计判定条件覆盖和路径覆盖的测试用例。

6. 根据下列条件使用边界值分析法设计测试用例

7. 具体问题(如:输入A,B,C三个数要求输出其中最小者),画出程序流程图,并计算其复杂度

8. 某机械加工公司要建立的仓库管理系统中,有以下功能:

1.入库:入库员负责登记入库物品(编号,品名,型号,数量,单价,位置,检验员,审批人,入库日期,采购员,供应商)中,包括查看库存中有无这类物品。

2.出库:出库员根据用户要求(编号,品名,型号,数量),查看有无所需物品,若有查看库存量是否满足,方可提货,并修改库存。

要求:

1)设该系统的实体只有:供应商,仓库物品,用户。画出这些实体及它们的联系的图形(数据模型ER图)。

2)根据ER图,给出仓库系统的主要类图

9. 某机械加工公司要建立的仓库管理系统中,有以下功能:

1.入库:入库员负责登记入库物品(编号,品名,型号,数量,单价,位置,检验员,审批人,入库日期,采购员,供应商)中,包括查看库存中有无这类物品。

2.出库:出库员根据用户要求(编号,品名,型号,数量),查看有无所需物品,若有查看库存量是否满足,方可提货,并修改库存。

要求:

1)建立仓库系统用例图

2)画出仓库系统模块结构图

10. 网上购书系统为注册用户、书商和系统管理员服务。注册用户登陆后可以选购图书,书商在网站上发布出售的图书信息,系统管理员负责定期查询整理书目和管理书价。用用例图表示上述需求。

11. 已知模块C中的一个判定影响到模块B,如图所示,它违反了SD的设计原则。试问: 可以采用哪些手段对结构图作改进,请说明改进办法并画出改进的结构图。

12. 已知有一抽象的DFD图如下所示,请用SD方法画出相应的结构图。(15分)

13. 高考录取统分子系统有如下功能:

(1) 计算标准分:根据考生原始分计算,得到标准分,存入考生分数文件;

(2) 计算录取线分:根据标准分、招生计划文件中的招生人数,计算录取线,存入录取线文件。

试根据要求画出该系统的数据流程图,并将其转换为软件结构图。

软件工程答案

一、单项选择题

1. D

2. C

3. A

4. A

5. C

6. B

7. C

8. C

9. A

10. B

11. B

12. A

13. B

14. B

15. D

16. C

17. B

18. D

19. D

20. A

21. B

22. D

二、判断题

1. 错

2. 对

3. 错

4. 对

5. 错

6. 错

7. 对

8. 对

9. 错

10. 错

12. 错

13. 错

14. 错

15. 对

16. 对

17. 对

18. 错

19. 对

20. 对

21. 对

22. 对

23. 错

24. 对

三、简答题

1. 答:

软件生存周期模型:是描述软件开发过程中各种活动如何执行的模型。(模型:是为了理解事物而对事物做出一种抽象,它忽略不必要的细节,它也是事物的一种抽象形式、一个规划、一个程式。)

软件生存周期主要模型:瀑布模型、增量模型、螺旋模型、喷泉模型、变换模型和基于知识的模型等

2. 答:

a.软件产品是一种逻辑产品。

b.软件产品的生产主是研制,软件产品的成本主要体现在软件的开发和研制上,软件开发完成后,复制就产生了大量软件产品。

c.软件产品不会用坏,不存在磨损、消耗问题。

d.软件产品的生产主要是脑力劳动,还未完全摆脱手工开发方式,而且碰分是"定做"的。

e.软件费用不断增加,成本相当昂贵。

3. 答:

软件工程:用科学知识和技术原理来定义、开发、维护软件的一门学科。

软件工程的目标是成功的建造一个大型软件系统,所谓成功是要达到以下几个目标:

a.付出较低的开发成本;

b.面到要求的软件功能;

c.取得较好的软件性能;

d.开发的软件易于移植;

e.需要较低的维护费用;

f.能按时完成开发任务,及时交付使用;

g.开发的软件可靠性高;

软件工程的内容:

1)软件开发技术:软件开发方法、软件开发过程、软件开发工具和环境。

2)软件开发管理:软件管理学、软件经济学、软件心理学

5. B

6. B

7. 答:a,结构化语言b,判定表c.判定树

8. 答:

需求分析是指:开发人员要准确理解用户的要求,进行细致的调查分析,将用户非形式的需求陈述转化为完整的需求定义,再由需求定义转换到相应的形式主义功能规约(需求规格说明)的过程。

需求分析阶段的基本任务是:

(1) 问题识别:双方对问题的综合需求:a.功能需求b.性能需求c.环境需求d.用户界面需求.

(2) 分析与综合,导出软件的逻辑模型.

(3) 编写文档

9. 答:

结构化分析方法步骤:

a.了解当前系统的工作流程,获得当前系统的物理模型.

b.抽象出当前系统的逻辑模型.

c.建立上标系统的逻辑模型.

d.作进一步补充和优化

11. 略

12. 略

13. 答:

软件的功能正确并不代表软件是可靠的。可靠性是指在一定的环境下,在给定的时间内系统不发生故障的概率。由于无法对软件进行彻底的测试,因此即使软件的某个功能是正确的,软件中潜在的错误也可能导致其不可靠,如"2000"年问题就是如此

14. 答:

软件测试包括单元测试、集成测试、确认测试和系统测试等。单元测试集中于单个模块的功能和结构的检验;集成测试集中于模块组合的功能和软件结构检验;确认测试主要检查软件是否符合合同要求,包括需求规格说明、设计规格说明和用户手册等;系统测试集中检验系统所有元素之间协作是否合适,整个系统的性能和功能是否达到。

15. 答:

非渐增式测试一下子把所有模块放在一起,并把庞大的程序作为一个整体来测试,测试者面对的情况十分复杂。测试时会遇到许许多多的错误,改正错误更是极端困难,因为在庞大的

程序中想要诊断定位一个错误是非常困难的。而且一旦改正一个错误之后,马上又会遇到新的错误,这个过程将继续下去,看起来好像永远也没有尽头。

渐增式测试与“一步到位”的非渐增式测试相反,它把程序划分成小段来构造和测试,在这个过程中比较容易定位和改正错误;对接口可以进行更彻底的测试;可以使用系统化的测试方法。因此,目前在进行集成测试时普遍采用渐增式测试方法。

16. 答:

A.校正性维护

B.适应性维护

C.完善性维护

D.预防性维护

17. 答:

A.非结构化维护和结构化维护

B.维护的困难性

C.软件强维护的费用

18. 答:

A.制定申请维护报告

B.审查申请报告并批准

C.进行维护并作详细记录

D.覆审

19. 答:动态模型描述了与时间和变化有关的系统性质,描述的是系统的控制结构,表示了瞬间的系统控制性质,它关心系统的控制,操作顺序,从对象的状态角度出发表现对象的相互行为。

20. 答:特征:一致性、多态性、分类性、继承性。要素:共享、封装、抽象

21. 答:功能模型描述发生了什么,动态模型确定什么时候发生,对象模型确定发生的客体。

22. 答:

变换分析:

a.确定DFD中的变换中心。

b.设计软件结构的顶层和第一层-------变换结构。

c.设计中下层模块。(输入模块下属模块的设计,输出模块下属模块的设计,变换模块下属模块的设计,设计的优化)

事务分析:

a.确定DFD中的事务中心和加工路径。

b.设计软件结构的顶层和第一层------事务结构。(接收、发送给支)

c.事务结构中、下层模块的设计、优化工作同变换结构

23. 答:

模块间的内聚性有6种:偶然内聚、逻辑内聚、时间内聚、通信内聚、顺序内聚、功能内聚。偶然内聚:一个模块内的各处理元素之间没有任何联系。

逻辑内聚:模块内执行几个逻辑上相似的功能,通过参数确定该模块完成哪一个功能。

时间内聚:把需要同时执行的动作组合在一起。

通信内聚:指模块内所有处理元素都在同一个数据结构上操作,或者指各处理使用相同的输入数据或产生相同的输出数据。

顺序内聚:一个模块中各处理元素都密切相关于同一功能且必须顺序执行,前一功能元素的输出是下一功能元素的输入。

功能内聚:最强的内聚,指模块内所有元素共同完成一个功能,缺一不可。

24. 答:

耦合性有六种:无直接耦合、数据耦合、标记耦合、控制耦合、公共耦合、内容耦合

无直接耦合:两个模块之间没有直接的关系,它们分别从属于不同模块的控制与调用,它们之间不传递任何信息。(无直接关系)

数据耦合:指两个模块之间有调用关系,传递的是简单的数据值,相当于高级语言中的值传递。(数据值)

标记耦合:指两个模块之间传递的是数据结构。(数据结构)

控制耦合:指控制模块调用另一个模块时,传递的是控制变量,被调用块通过该控制变量的值有选择地执行块内某一功能(控制变量)

公共耦合:指通过一个公共数据环境相互作用的那些模块间的耦合。(一个公式数据环境)

内容耦合:一个模块直接使用另一个模块的内部数据,或通过非正常入口而转入另一个模块内部(内部数据)

四、问答题

1.

父图子图

答:

(1)、父图没有输入数据流;

(2)、子图的输入数据流应该是C,而不是B;

(3)、子图的输出数据流应该只有D和E,而不应有F。

2. 答:

(1)数据流条目:

数据流名称:存款单

别名:无

简述:储户存款时填写的项目

来源:储户

去向:记帐

数据流量:未知

组成:姓名+住址+存款类型+存款日期+利率

数据流名称:取款单

别名:无

简述:储户取款时填写的项目

来源:储户

去向:统计

数据流量:未知

组成:姓名+住址+取款类型+取款日期+利率

数据流名称:清单

别名:无

简述:储户取款后得到的项目

来源:记录

去向:储户

数据流量:未知

组成:姓名+住址+取款类型+取款日期+利率+余额

(2)数据存储条目:

数据存储名称:账单

别名:无

简述:存放储户信息及其账目

组成:姓名+住址+余额+存款类型+最后修改日期+利率

组织方式:未知

查询要求:能立即查询

(3)数据项条目:

未知

(4)加工条目:

加工名:分类检查

编号:无

激发条件:接收到存/取款单

优先级:优先

输入:存/取款单

输出:存/取款单

加工逻辑:IF 存款单THEN 把存款单输出到统计

ELSE

把取款单输出到统计

ENDIF

加工名:统计

编号:无

激发条件:取款单

优先级:无

输入:取款单

输出:清单

加工逻辑:根据账单检查此储户是否存在,不存在输出错误{

IF 取款数<余额THEN 余额=余额-取款数输出清单到储户,输出现金到储户

ELSE

输出错误清单到储户

ENDIF

}

加工名:记录

编号:无

激发条件:存款单

优先级:无

输入:存款单

输出:存款单

加工逻辑:根据账单检查此储户是否存在,不存在则建立此储户{

余额=余额+存款数

输出存款单到储户

}

3. 答:略

4. 答:

运动员名单=队名+运动员号+姓名+{项目}

项目=项目名

项目参加者=项目名+{运动员号}

5. 答:

程序图:

判定覆盖

a点A>1,A<=1,B=0,B<>0

b点A=2,A<>2,X>1,X<=1

ⅰA=2,B=0,X=4

ⅱA=1,B=1,X=1

路径覆盖:

a点A>1,A<=1,B=0,B<>0

b点A=2,A<>2,X>1,X<=1

ⅰA=2,B=0,X=4

ⅱA=1,B=1,X=1

6. 某一8位微机,其八进制常数定义为:以零开头的数是八进制整数,其值的范围-177~177

7.

复杂度为4

8. 1)E-R图

2)主要类图

9. 答:

1)用例图

2)仓库系统模块结构图

10. 略

11. 略

12. 略

13. 答:

(1) 数据流图

(2) 软件结构图

软件工程考试试题与答案

软件工程考试试题与答 案 LEKIBM standardization office【IBM5AB- LEKIBMK08- LEKIBM2C】

专业:移动通信科目:软件工程 一、单项选择题 1.好的软件结构应该是() A.低耦合、低内聚 B.高耦合、高内聚 C.高耦合、低内聚 D.低耦合、高内聚 答案:D 2.需求分析中开发人员要从用户那里了解() A.软件的规模 B.软件做什么 C.用户使用界面 D.输入的信息 答案:B 3.软件调试技术包括() A.演绎法 B.循环覆盖 C.边界值分析 D.集成测试 答案:A 4.软件需求规格说明书的内容不应包括对()的描述。 A.用户界面及运行环境 B.主要功能 C.算法的详细过程 D.软件的性能 答案:C 5.常用动词或动词词组来表示() A.属性 B.关联 C.类 D.对象 答案:B 6.软件可行性研究实质上是要进行一次()需求分析、设计过程。 A.详细的 B.深入的 C.彻底的 D.简化、压缩的 答案:D 7.软件部分的内部实现与外部可访问性分离,这是指软件的()A.继承性 B.共享性 C.抽象性 D.封装性 答案:D

8.软件部分的内部实现与外部可访问性分离,这是指软件的()A.共享性 B.继承性 C.抽象性 D.封装性 答案:D 9.在详细设计阶段,经常采用的工具有() A.PDL B. DFD C.SC D.SA 答案:A 10.数据字典是对数据定义信息的集合,它所定义的对象都包含于()A.软件结构 B.程序框图 C.方框图 D.数据流图 答案:D 11.软件工程结构化生命周期方法,提出将软件生命周期划分为计划、开发和运行三个时期,下述()工作应属于软件开发期的内容。 A.问题定义 B.可行性研究 C.都不是 D.总体设计 答案:D 12.应用执行对象的操作可以改变该对象的() A.功能 B.数据 C.属性 D.行为 答案:C 13.软件质量因素不包括() A.可理解性 B.可测试性 C.正确性 D.高性能 答案:D 14.软件可行性研究实质上是要进行一次()需求分析、设计过程。 A.详细的 B.彻底的 C.深入的 D.简化、压缩的 答案:D 15.结构化设计是一种面向()的设计方法。

软件工程试题及答案

软件工程 一、单项选择题 1. TURBO PASCAL是()软件。 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. Jackson方法是一种面向()的方法。 A.数据流 B.对象 C.数据结构 D.控制流 9. 软件详细设计的主要任务是对()进行的详细设计。 A.算法和数据结构 B.外部接口 C.软件编码 D.功能 10. 银行计算机储蓄管理信息系统中,根据客户提出的要求(如存款、取款、查询、挂失、咨询等)进行相应的业务处理的该层数据流图是()_。 A.变换型 B.事务型 C.既不是A也不是B 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. 软件测试分析报告

软件工程测试题含答案

软件工程测试题含答案 1、msconfig命令可以用来配置()。 A、系统配置 B、服务配置 C、应用配置 D、协议配置 答案:A 2、下列 _____ 不是网络操作系统。 A、Windows NT Server B、Unix C、DOS D、NetWare 答案:C 3、A方有一对密钥(KA公开,KA秘密),B方有一对密钥(KB公开,KB 秘密),A方向B方发送数字签名M,对信息M加密为:M’= KB公开(KA秘密(M))。B方收到密文的解密方案是()。 A、KB公开(KA秘密(M’)) B、KA公开(KA公开(M’)) C、KA公开(KB秘密(M’)) D、KB秘密(KA秘密(M’)) 答案:C 4、3个结点可构成()棵不同形态的二叉树。 A、2 B、3 C、4 D、5 答案:D 5、系统死锁的可能的原因是 A、进程死循环 B、资源循环等待 C、程序内存访问越界 D、进程释放资源 答案:B 6、下列哪一种方法在支持向量机中有应用 A、极大似然估计

B、最小二乘法 C、拉格朗日乘子法 D、二分法 答案:C 7、下列哪个是有监督算法 A、决策树 B、K-means C、DBSCAN D、聚类算法 答案:A 8、下面关于面向对象方法中消息的叙述,不正确的是()。 A、键盘、鼠标、通信端口、网络等设备一有变化,就会产生消息 B、操作系统不断向应用程序发送消息,但应用程序不能向操作系统发送消息 C、应用程序之间可以相互发送消息 D、发送与接收消息的通信机制与传统的子程序调用机制不同 答案:B 9、计算机中的执行过程是_________。①取指令②执行指令③修改指令计数器④指令译码 A、①②③④ B、①④②③ C、④③②① D、①③②④ 答案:B 10、网络安全法规定,网络运营者应当制定(),及时处置系统漏洞、计算机病毒、网络攻击、网络侵入等安全风险。 A、网络安全事件应急预案 B、网络安全事件补救措施 C、网络安全事件应急演练方案 D、网络安全规章制度 答案:A 11、设顺序线性表的长度为30,分成5块,每块6个元素,如果采用分块查找,则其平均查找长度为 A、6 B、11

软件工程考试试题与答案

软件工程考试试题与答案 软件工程是一个综合性较强的学科,涉及到软件开发的各个方面。为了帮助考生更好地备考软件工程考试,下面为大家整理了一些常见的软件工程考试试题与答案。 一、选择题 1. 软件工程是指()。 A. 设计、开发和维护软件的工程学科 B. 使用计算机辅助设计软件的学科 C. 算法和数据结构的学科 D. 编程语言和工具的学科 答案:A 2. 软件生命周期包括以下几个阶段:()。 A. 需求分析、系统设计、编码和测试 B. 可行性研究、需求分析、系统设计、编码、测试和维护 C. 需求分析、系统设计、编码、测试和维护 D. 可行性研究、编码和测试 答案:B 3. 软件需求分析的目的是()。

A. 确定软件系统的功能和性能要求 B. 设计软件系统的架构 C. 编写软件源代码 D. 测试软件系统的正确性 答案:A 4. 软件测试的目的是()。 A. 检查软件系统是否满足需求 B. 修复软件系统中的错误 C. 优化软件系统的性能 D. 审查软件系统的代码质量 答案:A 5. 软件工程的核心原则是()。 A. 按计划进行工作 B. 管理好项目进度 C. 不断改进开发过程 D. 保证代码质量 答案:C

二、简答题 1. 请简要说明软件需求分析的过程。 答:软件需求分析的过程包括以下几个步骤:需求获取、需求分析、需求规格说明、需求验证。需求获取阶段主要是通过与用户沟通、文 档分析等方式了解用户的需求。需求分析阶段是将获取到的需求进行 分析和整理,确定软件系统的功能和性能需求。需求规格说明阶段是 编写详细的需求规格文档,明确系统功能、非功能性需求、界面设计 等内容。需求验证阶段是通过测试等方式验证需求规格是否满足用户 需求。 2. 请简要介绍软件设计的常见方法。 答:软件设计的常见方法包括结构化设计、面向对象设计和面向服 务的设计。结构化设计是按照自顶向下的步骤将系统划分为模块,并 确定模块之间的接口和数据流动。面向对象设计是通过定义对象及其 相互关系来描述软件系统。面向服务的设计是将软件系统划分为服务,每个服务提供一组特定的功能,并通过服务间的通信实现系统功能。 三、综合题 某软件公司计划开发一个在线购物平台,请根据以下需求分析,完 成该项目的软件设计。 需求分析: 1. 用户可以浏览商品信息、加入购物车和提交订单;

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

软件工程考试试题(含答案) 软件工程考试试题(含答案) 1. 简答题 1.1 请简述软件生命周期模型,包括传统瀑布模型和敏捷开发模型。 传统瀑布模型: 软件生命周期模型的一种经典模型,包含需求分析、系统设计、 编码、测试和运维等阶段,每个阶段完成后才能进入下一个阶段。 优点: - 易于理解和使用; - 需求固定,有利于计划和控制; 缺点: - 需求变更困难; - 风险高,需求出错难以弥补; - 开发周期长,无法满足紧迫的需求。 敏捷开发模型: 一种适应快速变化需求的软件开发模型,主要包括用户故事编写、迭代开发、持续集成和自动化测试等实践。 优点:

- 高度适应变化; - 可以提供早期可用软件; - 强调团队合作和沟通; 缺点: - 需要高度的客户参与度; - 需要经验丰富的开发团队; - 不适用于大型项目。 1.2 什么是需求工程?请简述需求工程的过程和方法。 需求工程: 需求工程是软件开发过程中用来获取、分析、定义和验证系统需 求的过程。它的目标是建立对用户需求的准确和完整的理解。 需求工程的过程: 1. 需求获取:通过与用户、利益相关者沟通和交流获取用户需求。 2. 需求分析:对需求进行分析、整理,形成需求的详细描述。 3. 需求定义:将需求进行文档化,包括功能需求、非功能需求等。 4. 需求验证:通过原型、模型或评审等方式验证需求的正确性和 完整性。 需求工程的方法:

- 面谈法:与用户、利益相关者进行面对面的交谈,获取需求信息。 - 观察法:观察用户的工作环境和行为,了解其需要的功能和约束 条件。 - 文献研究法:通过研究现有的相关文档来获取需求信息。 - 原型法:通过创建原型,让用户提供反馈并进一步明确需求。 2. 算法设计题 有一组整数,编写一个算法将这组整数按照从小到大的顺序进行排序。 算法设计: 1. 将整数数组按照从小到大的顺序进行排序。 2. 使用冒泡排序算法: - 比较相邻的两个数,如果前一个数大于后一个数,则交换它们 的位置。 - 重复上述操作,直到没有任何交换发生,即数组已经按照从小 到大的顺序排列好。 算法实现: ```python def bubble_sort(nums): n = len(nums)

软件工程试题及答案

软件工程试题及答案 第一篇:软件工程试题及答案 1、瀑布模型把软件生命周期划分为8个阶段:问题的定义、可行性研究、软件需求分析、系统总体设计、详细设计、编码、测试和运行、维护。八个阶段又可归纳为三个大的阶段:计划阶段、开发阶段和(运行阶段)。 2、从结构化的瀑布模型看,在它的生命周期中的八个阶段中,(需求分析阶段)出错,对软件的影响最大。 3、在结构化的瀑布模型中,(需求分析阶段)定义的标准将成为软件测试中的系统测试阶段的目标。 4、软件工程的出现主要是由于(软件危机的出现)。 5软件工程方法学的目的:使软件生产规范化和工程化,而软件工程方法得以实施的主要保证是软件开发工具和软件开发的环境。 6、软件开发常使用的两种基本方法是结构化和原型化方法,在实际的应用中,它们之间的关系表现为相互补充。 7、UML是软件开发中的一个重要工具,它主要应用于基于对象的(面向对象)的方法。 8、在下面的软件开发方法中,哪一个对软件设计和开发人员的开发要求最高(原型化方法)。 9、结构化分析方法是一种预先严格定义需求的方法,它在实施时强调的是分析对象的(数据流)。 10、软件开发的瀑布模型,一般都将开发过程划分为:分析、设计、编码和测试等阶段,一般认为可能占用人员最多的阶段是(编码阶段)。 11、软件开发模型是指软件开发的全部过程、活动和任务的结构框架。主要的开发模型有瀑布模型、演化模型、螺旋模型、喷泉模型和智能模型。螺旋模型将瀑布模型和演化模型相结合,并增加了(风险分析),它建立在()的基础上,沿着螺线自内向外每旋转一圈,就得到(原型)的一个新版本。喷泉模型描述了(面向对象)的开发模型,它体现

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

一、选择题:(每题1分,共20分)(将答案写在题号前的()中) ( C )1. 软件是()。 A. 处理对象和处理规则的描述 B. 程序 C. 程序及其文档 D. 计算机系统 ( B )2. 软件需求规格说明的内容不应包括()。 A. 主要功能 B. 算法的详细描述 C. 用户界面及运行环境 D. 软件的性能 ( B )3. 程序的三种基本控制结构是()。 A. 过程、子程序和分程序 B. 顺序、选择和重复 C. 递归、迭代和回溯 D. 调用、返回和转移 ( D) 4. 面向对象的分析方法主要是建立三类模型,即( )。 A) 系统模型、ER模型、应用模型 B) 对象模型、动态模型、应用模型 C) E-R模型、对象模型、功能模型 D) 对象模型、动态模型、功能模型 ( C ) 5. 在E-R模型中,包含以下基本成分( )。 A) 数据、对象、实体 B) 控制、联系、对象 C) 实体、联系、属性 D) 实体、属性、操作 ( A ) 6. 各种软件维护的类型中最重要的是( )。 A) 完善性维护B) 纠错性维护C) 适应性维护D) 预防性维护 ( B ) 7.软件测试的目标是()。 A. 证明软件是正确的 B. 发现错误、降低错误带来的风险 C. 排除软件中所有的错误 D. 与软件调试相同 ( D )8.软件生命周期中所花费用最多的阶段是() A.详细设计 B.软件编码 C.软件测试 D.软件维护 ( C )9.若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0, 1.0],现从输入的角度考虑一组测试用例:-1.001, -1.0, 1.0, 1.001.设计这组测试用例的方法是()A.条件覆盖法 B.等价分类法 C.边界值分析法 D.错误推测法 ( D )10、详细设计的基本任务是确定每个模块的( )设计 A.功能 B.调用关系 C.输入输出数据 D.算法 ( A )11.设函数C(X)定义问题X的复杂程序,函数E(X)确定解决问题X需要的工作量(时间)。对于两个问题P1和P2,如果C(P1)>C(P2)显然E(P1)>E(P2),则得出结论E(P1+P2)>E(P1)+E(P2)就是:() A.模块化的根据B.逐步求精的根据C.抽象的根据D.信息隐藏和局部化的根据 ( D )12.下面几种白箱测试技术,哪种是最强的覆盖准则() A.语句覆盖B.条件覆盖C.判定覆盖D.条件组合覆盖 ( A )13.面向数据流的设计方法把()映射成软件结构。 A.数据流B.系统结构C.控制结构D.信息流 ( A )14.内聚程度最低的是( )内聚 A.偶然 B.过程 C.顺序 D.时间 ( A )15.确定测试计划是在( )阶段制定的.

软件工程试卷及答案软件工程试题和答案

软件工程试卷及答案软件工程试题和答案 一、选择 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封装 7、软件测试计划开始于需求分析阶段,完成于阶段。 A需求分析B软件设计C软件实现D软件测试 第1页共1页

8、在软件生存周期的瀑布模型中一般包括计划、、设计、编码、测试、维护等阶段。 A可行性分析B需求采集C需求分析D问题定义 9、软件需求分析阶段的测试手段一般采用。 A总结 B阶段性报告C需求分析评审D不测试 10、是把对象的属性和操作结合在一起,构成一个独立的对象,其内部信息对外界是隐蔽的,外界只能通过有限的接口与对象发生联系。 A多态性B继承C封装D消息 1 1、软件测试是为了而执行程序的过程。 A纠正错误B发现错误C避免错误D证明正确 12、在结构化分析方法中,表达系统内部数据运动的图形化技术。 A数据字典B实体关系图C数据流图口状态转换图 13、软件工程的基本要素包括方法、工具和。 A过程B软件系统C硬件环境D人员 14、TURBO PASCAL 是软件。 A、系统软件 B、人工智能 C、事务软件 第1页共1页

软件工程考试试题含答案

软件工程考试试题含答案 一、题目类型为单选题 1.软件需求分析的目的是什么? A、确定系统需求 B、建立软件架构 C、编写用户手册 D、进行系统集成 答案:A 2.在软件项目开发中,以下哪个阶段是与需求分析同时进行的? A、需求规格说明 B、软件设计 C、程序编写 D、系统维护 答案:B 3.软件项目管理中,以下哪个是关键路径? A、最长时间路径 B、最短时间路径

C、资源紧张路径 D、资源充足路径 答案:A 4.软件系统测试是为了检查什么? A、代码质量 B、功能实现是否符合需求 C、项目进度 D、硬件设备是否正常 答案:B 5.以下哪个是软件配置管理的主要目标? A、保证软件的质量 B、控制软件的开发成本 C、跟踪软件的版本 D、优化软件的性能 答案:C 二、题目类型为多选题 1.软件开发过程中,以下哪些是敏捷开发的原则?(多选)

A、个人和交互胜过过程和工具 B、软件和协商合约胜过合同文档 C、持续交付胜过完整的计划 D、需求协商胜过客户合作 答案:A、B、C 2.以下哪些是软件工程中的软件生命周期模型?(多选) A、瀑布模型 B、原型模型 C、敏捷模型 D、螺旋模型 答案:A、B、C、D 3.在软件项目中,以下哪些因素可能导致项目失败?(多选) A、需求不明确 B、软件工程师技术水平不高 C、项目计划不合理 D、项目成本过高 答案:A、B、C、D

4.以下哪些是软件维护的类型?(多选) A、适应性维护 B、完善性维护 C、阻碍性维护 D、紧急性维护 答案:A、B、D 5.在软件项目管理过程中,以下哪些风险可以考虑采取风险规避策略?(多选) A、需求变更频繁 B、开发团队沟通效率低 C、软件质量无法满足需求 D、开发进度超过预期 答案:A、C 三、题目类型为填空题 1.软件需求分析的主要输出是______。 答案:需求规格说明 2.软件开发过程中,以下步骤是软件测试的基本流程:需求分析、______、测试执行、缺陷跟踪。

软件工程考试试题 含答案

软件工程考试试题含答案软件工程考试试题含答案 一. 选择题 1. 下列不属于软件工程方法论的是: A. 瀑布模型 B. 敏捷开发 C. 融合开发 D. 增量开发 答案:C. 融合开发 2. 哪个不是软件需求工程的阶段? A. 需求收集和分析 B. 需求规格说明书编写 C. 需求确认和验证 D. 需求修复和更新 答案:D. 需求修复和更新 3. 软件开发生命周期中不包含以下哪个阶段? A. 需求分析

B. 软件设计 C. 软件测试 D. 软件维护 答案:C. 软件测试 4. 下列哪个是软件开发项目管理的基本约束? A. 时间 B. 人员 C. 质量 D. 成本 答案:D. 成本 5. 使用UML建模时,哪个图标不属于结构图? A. 类图 B. 对象图 C. 时序图 D. 包图 答案:C. 时序图 二. 填空题

1. 软件工程的目标是提高软件的质量和________。 答案:生产效率 2. 软件需求可以分为________和________两类。 答案:功能需求,非功能需求 3. 软件设计的核心目标是________。 答案:满足需求 4. 软件测试的目的是发现________。 答案:缺陷和错误 5. 软件维护分为________和________两个主要类别。 答案:正确性维护,适应性维护 三. 简答题 1. 请简要介绍敏捷开发方法。 答案:敏捷开发方法强调迭代与循序渐进的开发方式,注重团队合作和快速响应需求变化。其核心原则包括迭代开发、自组织团队、人与沟通优先、持续集成和及时反馈等。敏捷开发方法通过不断反馈和迭代,提高软件开发的灵活性和适应性。 2. 什么是软件需求工程?为什么软件需求工程是软件开发的关键环节?

软件工程期末试卷(十套含答案)

软件工程期末试题(一) 单项选择题 1.瀑布模型的存在问题是(B ) A.用户容易参与开发B.缺乏灵活性 C.用户与开发者易沟通D.适用可变需求 2.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做( C ) A.软件工程 B.软件周期 C.软件危机 D.软件产生 3.数据耦合、公共耦合、标记耦合、控制耦合的耦合性从低到高的顺序是( B ) A.数据、公共、标记、控制 B.数据、标记、控制、公共 C.控制、数据、标记、公共 D.控制、数据、公共、标记 4.在SD方法中全面指导模块划分的最重要的原则是( D ) A.程序模块化 B.模块高内聚 C.模块低耦合 D.模块独立性 5.软件测试的目的是( B )。 A.评价软件的质量 B. 发现软件的错误 C.找出软件的所有错误 D. 证明软件是正确的 6.在设计测试用例时,( A )是用得最多的一种黑盒测试方法。 A.等价类划分 B. 边界值分析 C. 因果图 D. 判定表 7. 需求分析最终结果是产生( B )。 A. 项目开发计划 B. 需求规格说明书 C. 设计说明书 D. 可行性分析报告 8. Jackson图中,模块框之间若有直线连接,表示它们之间存在(B )。 A. 调用关系 B. 组成关系 C. 链接关系 D. 顺序执行关系 9. 软件详细设计的主要任务是确定每个模块的( C )。 A. 功能 B. 外部接口 C. 算法和使用的数据结构 D. 编程 10.为了提高软件的可维护性,在编码阶段应注意( D ) A.保存测试用例和数据 B.提高模块的独立性 C.文档的副作用 D.养成好的程序设计风格 11.设年利率为i,现存入p元,若计复利,n年后可得钱数为(B) A.p﹡(1+i﹡n) B.p﹡(i+1)n C.p﹡(1+i)﹡n D.p﹡(i+n) 12.在考察系统的一些涉及时序和改变的状态时,要用动态模型来表示。动态模型着重于系统的控制逻辑,它包括两个图:一个是事件追踪图,另一个是(A )。 A .状态图 B. 数据流图 C. 系统结构图 D. 时序图

软件工程试题含答案

软件工程期末试题( 1 ) 一, 判断题(正确的在括号内打上"√ ",错误的打上"×".每题分,共 15 分) Warnier 方式也是一种面向数据结构的设计方式,其逻辑更严格.(×) PAD 图在设置了五种大体控制结构后,还允许递归挪用. (×) 你为了加速软件保护作业的进度,应尽可能增加保护人员的数量.(×) 当验收测试通过,软件开辟就完成为了.(×) 完成测试作业后,为了缩短源程序的长度应删除程序中的注解.(×)系统结构图是精准表达程序结构的图形表示法.因此,有时也可以将系统结构图看成系统流程图利用.(×) 在程序调试时,找犯错误的位置和性质比更正该错误更难.( √) 以对象,类,继承和通信为基础的面向对象设计方式(OOD)也是常见的软件概要设计方式之一.( √) 二,单项选择题(每小题 2 分,共 10 分) 试判断下列叙述中,哪个(些)是正确的(D) a,软件系统中所有的信息流都可以以为是事务流 A,a B,b C,c D,b 和 c 进行需求分析可利用多种工具,但(B)是不合用的. A,数据流图 B,PAD 图 C,判定表 D,数据词典 在详细设计阶段,往往采用的工具有(A).

A, 详细设计的结果大体决定了最终程序的(C) A,代码的规模 B,运行速度可保护性 利用白盒测试方式时,肯定测试数据应按照(A)和指定的覆盖标准. A, 程序的复杂程度 C,该软件的编辑人员 D,程序的功能 三,多项选择题(每题 2 分,共 10 分.注:正确得 2 分,漏选得 1 分,多选, 错选不得分.) (ABCD)可以作为模块. 下面哪些测试属于黑盒测试(BCD). A,路径测试E,循环测试 下列属于气宇效益方式的是(ABCD). 软件保护的策略包括(BCD). A,按期检测保护 下列属于软件测试进程的是(ABE). C,内核测试D,法律验证 四,简答题(每题6 分,共24 分) 1、耦合性和内聚性有几种类型其耦合度, 内聚强度的顺序如何答案

软件工程题库(含答案)

软件工程题库(含答案) 一、单选题(共60题,每题1分,共60分) 1、软件按照设计的要求,在规定时间和条件下达到不出故障,持续运行的要求的质量特性称为( ) A、可用性 B、正确性 C、完整性 D、可靠性 正确答案:D 2、软件特性中,软件从一个计算机系统或环境移植到另一个上去的难易程度指的是( ). A、可移植性 B、可理解性 C、可重用性 D、可修改性 正确答案:A 3、在软件质量要素的评价准则中,操作该软件的难易程度指的是( )。 A、容错性 B、检测性 C、可操作性 D、安全性 正确答案:C 4、下列属于维护阶段的文档是( ) A、软件问题报告 B、用户操作手册 C、软件测试分析报告 D、软件规格说明 正确答案:B 5、快速原型模型的主要特点之一是( ) A、及早提供工作软件 B、开发完毕才见到产品 C、及早提供全部完整的软件产品 D、开发完毕后才见到工作软件 正确答案:C

6、可维护性通常包括( )。 A、可用性和可理解性 B、可修改性、数据独立性和数据一致性 C、可理解性、可修改性和可测试性 D、可测试性和稳定性 正确答案:C 7、软件的可修改性支持软件的( )。 A、可互操作性 B、可维护性 C、可追踪性 D、有效性 正确答案:B 8、数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是( ) A、数据通信 B、数据定义 C、数据维护 D、数据库设计 正确答案:B 9、软件特性中,多个软件元素相互通讯并协同完成任务的能力指的是( )。 A、可追踪性 B、可理解性 C、可互操作性 D、可维护性 正确答案:C 10、可维护性的特性中相互促进的是( ) A、效率和可移植性 B、可理解性和可测试性 C、效率和结构好 D、效率和可修改性 正确答案:B 11、在软件质量特性中,( )是指在规定的一段时间和条件下,与软件维持其性能水平的能力有关的一组属性。

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

软件工程考试试题 第一部分选择题 一、单项选择题每小题1分,共20分。(在每小题的四个选项中只有一个选项是符合题目要 求的,请将正确选项前的字母填在题后的括号内) 1.在下列工具与环境中()属于较早期的CASE。 A.基于信息工程CASE B.人工智能CASE C.结构的基于图形CASE D.集成的CASE环境 2.Putnam成本估算模型是一个()模型。 A.静态单变量B.动态单变量C.静态多变量D.动态多变量 3.在McCall软件质量度量模型中,()属于面向软件产品修改。 A.可靠性B.可重用性C.适应性D.可移植性 4.ISO的软件质量评价模型由3层组成,其中用于评价设计质量的准则是()A.SQIC B.SQMC C.SQRC D.SQDC 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.FORTRAN语言B.Pascal语言C.C语言D.PL/1语言12.程序的三种基本控制结构是() A.过程、子程序和分程序 B.顺序、选择和重复 C.递归、堆栈和队列 D.调用、返回和转移 13.在详细设计阶段,经常采用的工具有() A.PAD B.SA C.SC D.DFD 14.详细设计的结果基本决定了最终程序的() 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图;编码和单元测试--任务:源程序清单,单元测试方案和结果;综合测试--任务:综合测试方案,结果集成测试,验收测试,完整一致的软件配置。

软件工程考试题 带答案

一、选择题 1.软件开发瀑布模型中的软件定义时期各个阶段依次是: ( B ) A)可行性研究,问题定义,需求分析。 B)问题定义,可行性研究,需求分析。 C)可行性研究,需求分析,问题定义。 D)以上顺序都不对。 2.可行性研究主要从以下几个方面进行研究:(A) A)技术可行性,经济可行性,操作可行性。 B)技术可行性,经济可行性,系统可行性。 C)经济可行性,系统可行性,操作可行性。 D)经济可行性,系统可行性,时间可行性。 3 耦合是对软件不同模块之间互连程度的度量。各种耦合按从强到弱排列如下:(C) A)内容耦合,控制耦合,数据耦合,公共环境耦合。 B)内容耦合,控制耦合,公共环境耦合,数据耦合。 C)内容耦合,公共环境耦合,控制耦合,数据耦合。 D)控制耦合,内容耦合,数据耦合,公共环境耦合。 A) 4 .在详细设计阶段所使用到的设计工具是:( 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.降低耦合性

软件工程试题及答案(较详细)

软件工程试题及答案(较详细)软件工程试题及答案 (较详细) 一、简答题 1. 什么是软件工程? 软件工程是一门综合应用计算机科学与工程学、管理学等知识的学科,它致力于开发和维护高质量的软件系统。它包括需求分析、设计、编码、测试和维护等各个阶段,以确保软件项目能够按时交付、高效 运行,并满足用户需求。 2. 请解释什么是软件生命周期? 软件生命周期是指软件从构思、开发、使用到废弃的整个过程。它 包括需求分析、设计、编码、测试、部署和维护等多个阶段。软件生 命周期管理的目标是确保软件产品按时、按质量要求交付,并提供后 续的支持与维护。 3. 请解释什么是需求工程? 需求工程是软件工程中的一个重要阶段,它主要涉及对用户需求的 调研、分析、规划和文档化。通过需求工程,开发人员能够更好地理 解用户需求,并将其转化为具体的软件需求规格说明书,为后续的设 计和开发提供基础。 4. 什么是软件设计模式?

软件设计模式是一套在软件设计过程中重复出现的解决方案。它们被广泛接受,并被认为是开发高质量、可维护和可扩展软件的有效方法。常见的软件设计模式包括单例模式、工厂模式、观察者模式等。 二、分析题 1. 请说明面向对象和面向过程的编程范式的区别。 面向对象编程(OOP)和面向过程编程(POP)是两种不同的编程范式。 面向过程编程更侧重于任务的步骤和流程,它将问题分解为多个步骤,通过一系列函数或过程的调用来完成任务。面向过程编程更加注重解决问题的步骤和执行过程。 面向对象编程更注重数据和对象的定义和封装,它将问题看作是一组对象的交互。面向对象编程通过定义类、创建对象以及对象之间的协作来解决问题。 2. 什么是软件架构? 软件架构是指软件系统的基本结构和组织方式。它定义了软件系统中各个组件的职责、交互方式和部署方式。常见的软件架构模式包括分层架构、客户端-服务器架构、微服务架构等。 3. 解释软件测试中的黑盒测试和白盒测试。

软件工程试题含答案

软件工程试题含答案 一、单项选择题(每题1分,共20分) 1. 以下哪个不是软件工程的目标? A. 提高软件生产效率 B. 提高软件质量 C. 提高软件可靠性 D. 提高软件的价格 答案:D 2. 以下哪个不属于软件工程的基本原则? A. 阶段划分 B. 迭代开发 C. 配置管理 D. 需求分析 答案:D 3. 软件生命周期模型中,以下哪个模型最适合于需求变化较少的项目? A. 瀑布模型 B. 增量模型

C. 螺旋模型 D. 原型模型 答案:A 4. 下面哪种软件测试方法主要通过检查输入和输出数据之间的关系来验证软件的正确性? A. 黑盒测试 B. 白盒测试 C. 灰盒测试 D. 性能测试 答案:A 5. 在软件开发中,以下哪个过程是保证软件质量的关键环节? A. 需求分析 B. 设计 C. 编码 D. 测试 答案:D 6. 以下哪个不是软件配置管理的任务? A. 版本控制

B. 变更管理 C. 代码编写 D. 测试管理 答案:C 7. 软件过程中的度量主要用于评估以下哪个方面? A. 项目进展情况 B. 代码质量 C. 测试覆盖率 D. 用户满意度 答案:A 8. 以下哪个不是软件项目管理中的常见约束? A. 成本约束 B. 资源约束 C. 时间约束 D. 协议约束 答案:D 9. 下面哪种软件开发模型更适合于小型项目?

A. 敏捷开发 B. 瀑布模型 C. 增量模型 D. 螺旋模型 答案:A 10. 下列哪个属于软件缺陷的类型? A. 语法错误 B. 逻辑错误 C. 界面设计错误 D. 所有选项都是 答案:D 二、多项选择题(每题2分,共20分) 11. 软件工程的基本特征包括:(选择所有正确答案) A. 工程化 B. 抽象化 C. 风险管理 D. 需求开发

软件工程习题及答案解析

一、选择题: 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/6 B、1/5 C、1/4 D、1/3 7. 变换型和事务型是程序结构的标准形式。从某处获得数据,再对这些数据作处理,然后将结果送出是属于。 A、变换型 B、事务型 8. PAD (Problem Analysis Diagram)图是一种工具。 A、系统描述 B、详细设计 C、测试 D、编程辅助 9. 分层数据流图是一种比较严格又易于理解的描述方式,它的顶层描绘了系统的。 A、总貌 B、细节 C、抽象 D、软件的作者 10. 数据流图中,当数据流向或者流自文件时,。 A、数据流要命名,文件不必命名 B、数据流不必命名,有文件名就足够了 C、数据流和文件均要命名,因为流出和流进数据流是不同的 D、数据流和文件均不要命名,通过加工可自然反映出

软件工程试题及答案

1. 软件生命期各阶段的任务是什么? 答:软件生命期分为7个阶段: 1、问题定义:要解决的问题是什么 2、可行性研究:确定问题是否值得解,技术可行性、经济可行性、操作可行性 3、需求分析:系统必须做什么 4、总体设计:系统如何实现,包括系统设计和结构设计 5、详细设计:具体实现设计的系统 6、实现:编码和测试 7、运行维护:保证软件正常运行。 2、软件重用的效益是什么? 答:1、软件重用可以显著地改善软件的质量和可靠性。 2、软件重用可以极大地提高软件开发的效率。 3、节省软件开发的成本,避免不必要的重复劳动和人力、财力的浪费。 3、自顶而下渐增测试与自底而上渐增测试各有何优、缺点? 答: ①自顶而下渐增测试 优点:不需要测试驱动程序,能够在测试阶段的早期实现并验证系统的主要功能,而且能够尽早发现上层模块的接口错误。 缺点:需要存根程序,底层错误发现较晚。 ②自底而上渐增测试 优点与缺点和自顶而下渐增测试相反。 4 、提高可维护性的方法有哪些? 答:在软件工程的每一阶段都应该努力提高系统的可维护性,在每个阶段结束前的审查和复审中,应着重对可维护性进行复审。 在需求分析阶段的复审中,应对将来要扩充和修改的部分加以注明。在讨论软件可移植性问题时,要考虑可能要影响软件维护的系统界面。 在软件设计的复审中,因从便于修改、模块化和功能独立的目标出发,评价软件的结构和过程,还应对将来可能修改的部分预先做准备。 在软件代码复审中,应强调编码风格和内部说明这两个影响可维护性的因素。 在软件系统交付使用前的每一测试步骤中都应给出需要进行预防性维护部分的提示。 在完成每项维护工作后,都应对软件维护本身进行仔细认真的复审。 为了从根本上提高软件系统的可维护性,人们正试图通过直接维护软件规格说明来维护软件,同时也在大力发展软件重用技术。 简述软件测试要经过哪几个步骤,每个步骤与什么文档有关。 【解答】 测试过程按4 个步骤进行,即单元测试(模块测试)、集成测试(子系统测试和系统测试)、确认测试(验收测试)和平行运行。 单元测试集中对用源代码实现的每一个程序单元进行测试,与其相关的文档是单元测试计划和详细设计说明书。

相关文档
最新文档