软件工程试题.docx

上传人:b****6 文档编号:6583041 上传时间:2023-01-08 格式:DOCX 页数:17 大小:25.03KB
下载 相关 举报
软件工程试题.docx_第1页
第1页 / 共17页
软件工程试题.docx_第2页
第2页 / 共17页
软件工程试题.docx_第3页
第3页 / 共17页
软件工程试题.docx_第4页
第4页 / 共17页
软件工程试题.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

软件工程试题.docx

《软件工程试题.docx》由会员分享,可在线阅读,更多相关《软件工程试题.docx(17页珍藏版)》请在冰豆网上搜索。

软件工程试题.docx

软件工程试题

一、一、单项选择题(在每小题的四个备选答案中,选出一个正确的答

得分

案序号填在括号内。

每小题1分,共15分

1. 为了解决软件危机,人们提出了用(B

的原理来设计软件,这是软件工程诞生的基础。

A.运筹学

B.工程学

C.软件学

D.管理学

2.

由于计算机软件开发的成本高、质量低、难控制、可靠性差、生产率低而引发了( B 。

A. 软件投机

B.软件危机

C.软件工程

D.软件产生

3. 划分软件生存周期的阶段时所应遵循的基本原则是(B 。

A. 各阶段的任务尽可能相关性

B. 各阶段的任务尽可能相对独立

C. 各阶段的任务在时间上连续

D. 各阶段的任务在时间上相对独立

4.

需求分析是由分析员了解用户的要求,认真细致地调研分析,最终应建立目标系统的

逻辑模型并

写出( A 。

A.数据定义

B. 数据库设计

C. 数据维护

D. 数据结构实现

5. 结构化设计方法是面向( C 的设计方法。

A.过程

B. 对象

C. 数据流

D. 数据结构

6. 在结构化系统分析中,判定表和判定树常用于表达数据流图中的( A 。

A.加工

B.数据流

C. 数据存储

D.外部项

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

A.扇入数

B.扇出数

C.宽度

D.作用域

8. 软件的( A 设计又称为总体设计,其主要任务是建立软件系统的总体结构。

A.概要

B.抽象

C.逻辑

D.规划

9.如果(A ,则称该模块具有功能内聚。

A.模块包括单一功能

B.模块包括若干功能,但所有功能相互紧密相关

C.每个模块有单入口、单出口

D.模块中每个处理成分对应一个功能,它们紧密结合

10.结构化设计采用模块化方法的主要出发点是( D 。

A.增加内聚性

B.减少耦合度

C.提高有效性

D.降低复杂度

11.为了提高测试的效率,应该(D 。

A.随机地选取测试数据

B.取一切可能的输入数据作为测试数据库

C.在完成编码后制定软件的测试计划

D.选择发现错误可能性大的数据作为测试数据

12.通过对软件的测试,可以证明的是(C 。

A.软件的正确性

B.错误不存在

C.错误存在

D.软件不含有隐患

13.某模块的输入数据为某工厂中一个车间的生产产量表,通过该模块可以计算

出车间中生产工人

的平均产量、统计产量前10名的人员名单,从内聚度来看,该模块属于( B 。

A.逻辑内聚

B.通信内聚

C.顺序内聚

D.功能内聚

15.软件维护,可按不同的维护目的而分类,为了适应硬件环境或软件环境的变更

对软件作修改是

(B 。

A.纠正性维护

B.适应性维护

C.完善性维护

D.预防性维护

二、三、简答题 (每题5分,共25分

得分

1.什么叫软件危机?

该如何应对软件危机的出现?

答:

落后的软件生产方式无法满足迅速增长的计算机软件需求,从而导致软件开

发与维护过程中出现一系列严重问题的现象。

(3分解决的方法是,使用软件工具,应用

软件工程技术,建立与系统化软件生产有关的概念、原则、方法、技术和工具,指导和

支持软件系统的生产活动,以期达到降低软件生产成本、改进软件产品质量、提高软

件生产率水平,从而从根本上解决软件危机。

(2分

2.请按时间顺序,列举软件生命周期中的各项基本活动。

答:

软件生存周期包括:

可行性分析与开发计划、需求分析、设计(概要设计和详

细设计、编码测试、运行与维护等活动。

(列出全部活动得5分,缺1项活动扣1分

3.软件测试是否一定要在编码之后进行?

为什么?

答:

不一定。

(2分静态测试方法是指不运行被测程序本身,仅通过分析或检查源

程序的语法、结构、过程、接口等来检查程序的正确性。

因此静态测试方法就可以在

编码之前进行。

(3分

4.使用什么策略,可以减少完善性维护?

答:

使用新技术,包括数据库管理系统、软件开发环境、程序自动生成系统、较高

级(第四代的语言,可减少完善性的维护。

(1分可把因环境变化而必须修改的程序局

部于某些程序模块之中,也可以减少完善性的维护。

(1分使用内部程序列表、外部文

件,以及处理的例行程序包,可为维护时修改程序提供方便。

(1分此外,建立软件系统

的原型,把它在实际系统开发之前提供给用户使用。

用户通过研究原型,进一步完善

他们的功能要求,就可以减少以后完善性维护的需要。

(2分

5.在NATO

关于软件工程的定义中提到:

“软件工程是指导计算机软件开发和维护的一门工程学

科。

采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明

正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质

量的软件并有效地维护它”。

如何理解上述意思。

答:

从软件工程的定义可以看出其目标就是按照工程化的思想开发、管理和维护

软件,以达到提高软件质量的同时,减低开发软件的成本。

具体地说:

要求我们为软件

的开发提供科学的开发模型和设计方法,提高软件开发工具的质量,重视软件的项目

管理,这样才可以在更低的成本下开发出高质量的软件。

(5分,本答案为参考答案,答

对意思即可

三、 应用分析题 (共60分 1.仓库管理系统有如下角色和功能:

(1仓库管理员完成货物的入库和出库操作,入库是将指定数量的货物存入仓库(

包括:

货物

名称、数量信息;出库是将指定数量的货物从仓库中取出,在取出货物时需要对

仓库中是否有足够的货物进行判断,再决定是否执行该操作;

(2部门经理完成对货物的查询工作,在货物查询过程中,是根据输入的货物名称

进行的,输

入货物名称后将显示仓库中所该货物的库存量。

试根据要求画出该系统的数据流图,不必分层。

(15分

仓库管理员

入库

出库审查

入库单

出库单入库文件出库文件

库存文件

入库数据

出库请求

入库数据

出库数据

查询

部门经理

查询单查询结果

库存数据

拒绝出库

出库

出库数据

2.请根据以下描述,设计UML

类图,并使用重数说明数据实体之间的具体关系:

(12分

(1每个出版社都经常联系一些作者; (2作者可能会写出著作;

(3著作的出版权只能授予一个出版社;

(4每本著作有一个封面、一个目录、一个前言、若干章、每章有若干节;

出版

作者

著作

封面

 

前言

章*

1..*

1

1..*

1

*

1

1111

*节

1

*

3.请结合一下关于电梯的描述,为电梯的运行状态建模。

(10分 得分

(2 按用户上楼或是下楼的要求,电梯可以向上或是向下移动; (3

到达目的层后,电梯空闲; (4 空闲超时后,电梯回到第一层。

位于第一层

向上移动

向下移动

空闲

上楼

到达

下楼

上楼

到达

超时

4. 一元二次方程式

AX 2+BX+C=0

的求根程序有以下功能:

①输入A 、B 、C

3个系数;②输出有关根的性质的信息,包括两个相等或不等的实根,两个大小相等符

号相反的实根,仅有一个实根,或有两个虚根等;③打印根的数值。

试用功能(黑盒测试

方法设计出程序的测试用例。

(15分

根据一元二次方程式的求根公式:

a

ac b b x 242-±-=

(条件:

0≠a 且042

 

>-ac b ;结果:

两个不等实根 a

b

x x 221-=

=

(条件:

0≠a 且042

=-ac b ;结果:

两个相等实根

a

ba

c i b x 242-±-=

(条件:

0≠a 且042

<-ac b ;结果:

两个虚根 b

cx-

= (条件:

0=a 且0≠b ;结果:

仅有一个实根 方程无意义

(条件:

0=a 且0=b ;结果:

方程无意义

使用等价类法设计测试用例。

 有效等价类(输入三个数值系数

无效等价类

0≠a 且042>-ac b ;两个不等实根 ①

输入不足3个系数 ⑤ 0≠a 且042=-ac b ;两个相等实根 ② 输入超过3个系数 ⑥

0≠a 且042<-ac b ;两个虚根 ③

输入的3个系数中包含非数字字符:

 A 中含有非数字字符 ⑦ B

中含有非数字字符 ⑧ C 中含有非数字字符 ⑨

0=a 且0≠b ;仅有一个实根 ④

0=a 且0=b ⑩

序号对应等价类测试数据期望结果

1 ①-1,0,4 x1=2; x2= -2

2 ②1,4,4 x1= x2= -2

3 ③1,0,

4 x1=2i; x2= -2i

4 ④0,2,4 x=2

5 ⑤0,2 提示系数不足

6 ⑥0,2,4,0 提示系数过多

7 ⑦A,2,4 提示有非数值系统

8 ⑧0,A,4 提示有非数值系统

9 ⑨0,2,A 提示有非数值系统

10 ⑩0,0,4 提示方程无意义

5. 请根据以下流程图:

(8分

 

(1画出流图。

(2计算其环行复杂度。

1

32

4

5

6

7

8

9

10

环形复杂度(画出节点1时V = E-N+2 = 14 – 10 + 2 = 6

环形复杂度(不画出节点1时V = E-N+2 = 13 – 9 + 2 = 6

四、一、单项选择题(在每小题的四个备选答案中,选出一个正确的答

得分

案序号填在括号内。

每小题1分,共15分

1. 下列做法中,对于发挥集体智慧最有利的是(A 。

A.设计评审

B.模块化

C.主程序员制

D.进度控制

2. 开发软件需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称作(B 。

A. 软件投机

B.软件危机

C.软件工程

D.软件产生

3.

分层数据流图是一种比较严格又易于理解的描述方式,它的顶层描述了系统的( A 。

A.总貌

B. 细节

C. 抽象

D. 软件的作者

4. 成功的测试是指( B 。

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

B. 发现程序的错误

C. 证明程序正确

D. 改正程序的错误

5. 软件测试中,白盒方法是通过分析程序的( B 来设计测试实例的方法。

A.应用范围

B. 内部逻辑

C. 功能

D. 数据结构

6. 采用( D 且编写程序,可提高程序的可移植性。

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.在软件研究过程中,CASE是( D 。

A.指计算机辅助系统工程

B.CAD和CAM技术的发展动力

C.正在实验室用的工具

D.指计算机辅助软件工程

12.通过对软件的测试,可以证明的是(C 。

A.软件的正确性

B.错误不存在

C.错误存在

D.软件不含有隐患

13.某模块的输入数据为某工厂中一个车间的生产产量表,通过该模块可以计算

出车间中生产工人

的平均产量、统计产量前10名的人员名单,从内聚度来看,该模块属于(B 。

A.逻辑内聚

B.通信内聚

C.顺序内聚

D.功能内聚

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

A.人工校核工资数据

B.工资支票数据

C.打印工资支票

D.计算职工工资

15.在维护请求且进行的维护过程中,应先( A

然后对维护要求进行评估并分别处理。

五、 三、

简答题 (每题5分,共25分 1.什么是软件工程?

这门学科的目的是什么?

答:

软件工程是一门研究用工程化方法构建和维护有效的、实用的和高质量的软

件的学科。

(3分软件工程的目标是生产具有正确性、可用性以及开销合宜的软件产

品。

(2分 2.请简述模块独立性的度量方法。

答:

模块独立性可以从两个方面来度量,即模块本身的内聚性和模块之间的耦合

度。

(3分内聚性越强,模块独立性越高(1分;耦合度越低,模块独立性也越高(1分。

3.如何理解“软件测试应该贯穿整个软件生命周期”这一说法?

答:

完整的软件测试应该贯穿整个软件生命周期,这一说法有两方面的含义:

(1分

(1软件开发不同阶段都有软件测试工作;(2分

(2软件测试工作的各个步骤分布在整个软件生存周期中。

(2分

4.软件维护就是改正软件中的错误吗?

为什么?

答:

软件维护是指在软件的运行/维护阶段由软件厂商向客户所提供的服务工作,

不完全是修改软件中的错误。

(3分软件维护除了改正性的维护以外,还有适应性、完

善性以及预防性的维护。

(2分 5.在NATO

关于软件工程的定义中提到:

“软件工程是指导计算机软件开发和维护的一门工程学

科。

采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明

正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质

量的软件并有效地维护它”。

如何理解上述意思。

答:

从软件工程的定义可以看出其目标就是按照工程化的思想开发、管理和维护

软件,以达到提高软件质量的同时,减低开发软件的成本。

具体地说:

要求我们为软件

的开发提供科学的开发模型和设计方法,提高软件开发工具的质量,重视软件的项目

管理,这样才可以在更低的成本下开发出高质量的软件。

(5分,本答案为参考答案,答

对意思即可 六、 应用分析题 (共60分 1.酒店客房管理系统有如下角色和功能:

(1顾客通过提供相关信息,向酒店申请入住,如果申请通过,则办理入住客房,否则

将遭到

拒绝;

(2顾客在离开酒店前需要退房,退房的同时结算房费;

(3管理员可以通过输入查询条件,查询酒店里客房的入住情况。

试根据要求画出该系统的数据流图,不必分层。

(15分

得分 得分

顾客

退房

申请入住

退房请求

申请单客房数据

入住请求

退房数据

客房数据

查询

部门经理

查询单查询结果

客房数据

拒绝申请

入住

顾客信息文件

客房文件

2.请根据以下描述,设计UML

类图,并使用重数说明数据实体之间的具体关系:

(12分

(1录音带和录像带都属于归档资料; (2每一个归档文件属于至少一个记者;

(3不同的记者在不同的通讯社工作;

(4通讯社由国内新闻部和国外新闻部共同组成。

通讯社

记者

归档文件

1

1..*

1

1..*

1..*

*1

1

国内新闻

1

1

国外新闻部

录音带

录像带

3.请结合一下关于手机销售管理软件的描述,为手机的状态建模。

(10分 (1

每一个刚进入商店的手机首先都必须登记机器信息;

(2

顾客可以预订购买某一手机,但如果超过期限仍不付款则认为该顾客放弃了本次预

订; (3 售出的手机都将被登记在案; (4 顾客享受7天无条件退货服务

(5

手机出现故障,可以返回商店修理,修理完成后交还顾客继续使用,如果不能维修,则登

记报废。

已登记

已预订

维修中

已卖出

顾客预订

成功维修

返回维修

付款

过期未付款

七天内无条件退货

付款

报废

无法维修

4. 一元二次方程式

AX 2+BX+C=0

的求根程序有以下功能:

①输入A 、B 、C

3个系数;②输出有关根的性质的信息,包括两个相等或不等的实根,两个大小相等符

号相反的实根,仅有一个实根,或有两个虚根等;③打印根的数值。

试用功能(黑盒测试

方法设计出程序的测试用例。

(15分

根据一元二次方程式的求根公式:

a

ac b b x 242-±-=

(条件:

0≠a 且042

 

>-ac b ;结果:

两个不等实根 a

b

x x 221-=

=

(条件:

0≠a 且042

=-ac b ;结果:

两个相等实根

a

ba

c i b x 242-±-=

(条件:

0≠a 且042

<-ac b ;结果:

两个虚根 b

cx-

= (条件:

0=a 且0≠b ;结果:

仅有一个实根 方程无意义

(条件:

0=a 且0=b ;结果:

方程无意义

使用等价类法设计测试用例。

 有效等价类(输入三个数值系数

无效等价类

0≠a 且042>-ac b ;两个不等实根 ①

输入不足3个系数 ⑤ 0≠a 且042=-ac b ;两个相等实根 ② 输入超过3个系数 ⑥

0≠a 且042<-ac b ;两个虚根 ③

输入的3个系数中包含非数字字符:

 A 中含有非数字字符 ⑦ B

中含有非数字字符 ⑧ C 中含有非数字字符 ⑨

测试用例:

 序号 1 2 3 4 5 6 7 8 9 10 对应等价类 ① ② ③ ④ ⑤ ⑥ ⑦ ⑧ ⑨

⑩ 测试数据 -1,0,4 1,4,4 1,0,4 0,2,4 0,2 0,2,4,0 A,2,4 0,A,4 0,2,A 0,0,4 期望结果 x1=2;

x2= -2 x1= x2= -2 x1=2i; x2= -2i x=2 提示系数不足 提示系数过多 提示有非数值系统

提示有非数值系统 提示有非数值系统 提示方程无意义 5. 请根据以下流程图:

 (8

分) 初始化 普通字符 Y 字符数加1 N 回车键 Y 插入换行符 N 显示字符

(1)画出流图。

 

(2)计算其环行复杂度。

 环形复杂度(画出节点 1 时) V = E-N+2 = 8 –

6 + 2 = 4 环形复杂度(不画出节点 1 时) V = E-N+2 = 7 – 5 + 2 = 4 第 11 页 共 11 页

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1