文档库 最新最全的文档下载
当前位置:文档库 › 1260软件工程复习资料1、

1260软件工程复习资料1、

1260软件工程复习资料1、
1260软件工程复习资料1、

软件工程期末复习

一、选择题

1、软件工程的研究者将软件开发和维护过程概括为()大活动。

A.5

B.7

C.8

D.3

2、()是职业软件工程师的必要条件。

A.自律、善于沟通、具有一定的软件技能

B.编程速度快

C.熟悉众多的软件环境

D.语言天赋

3、计算机病毒是指()。

A.计算机系统的漏洞

B. 一组自我复制和自动执行的具有破坏能力的代码

C.一种细菌

D. 程序中的BUG

4、软件需求具有()。

A.主观性

B.不确定性

C.多变性

D.以上全部

5、描述软件需求通常不用哪个工具()。

A.数据流程图

B.数据字典

C.模块结构图

D.E-R图

6、软件结构图中没有()元素。

A.模块B.调用参数C.返回结果D.判断

7、程序流程图与数据流程图的关系()。

A.不确定B.数据流程图可以转换成程序流程图

C.数据调用关系D.程序流程图可以转换成数据流程图

8、包含关系用于构造多个用例()。

A. 关系

B.共性的部分

C.角色

D.特殊活动

9、如果说用例F被用例T扩展,意思是()。

A.F是一个一般用例,T是一个特殊用例

B.F是一个特殊用户,T是一个一般用例

C.都是一般用例

D.都是特殊用例

10、用()对需要长久保存的信息进行建模。

A.实体类

B.数据库表

C.E-R图

D.对象类

11、美国卡内基﹒梅隆大学制定的SW-CMM是()。

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、PDL是一种()语言。

A.低级程序设计语言B.建模语言C.高级程序设计语言D.过程设计语言

17、结构化设计方法划分模块的原则是()。

A.模块扇出小于5 B.模块扇入小于5 C.低耦合,高内聚D.模块深度小于7

18、配置视图体现了系统的实现环境,反映系统的()。

A. 逻辑架构

B. 物理架构

C.组成结构

D.体系结构

19、角色可以有四种类型:系统的使用者,硬件设备,外部系统和()。

A.数据库

B.接口

C.对象

D. 时间

20、功能模型用于表达系统的需求,为软件的进一步分析和设计打下基础。在面向对象方法中,由()实现。

A. 场景描述

B.活动图和场景描述

C. 用例图和场景描述

D.交互图和场景描述

21、下面的哪个选项不是软件工程的宗旨()。

A.开发满足用户需求的软件

B.研究算法

C.及时交付软件

D.生产无故障软件

22、针对需求不确定的软件开发,比较好的模型是()。

A. 快速原型化模型

B. 瀑布模型

C.软件成熟度模型

D.系统化模型

23、可行性分析研究的费用大约是项目总经费的()。

A.2%

B.6%

C.20%

D.5?

24、业务需求描述的是()。

A.功能需求

B.用户需求

C.用户的具体业务流程

D.软件的目标、规模和范围

25、一个数据流程图中的图形符号有且仅有()种。

A.3

B.5

C.4

D.7

26、非直接耦合的模块独立性最强,()的模块独立性最弱。

A.内容耦合B.数据耦合C.控制耦合D.外部耦合

27、信息隐藏的核心内容是()。

A.把数据都放在公共的区域

B.数据不能被其他模块访问

C.一个模块的内部信息不允许其他模块直接访问

D.把信息加密,只能让有密钥的模块访问

28、面向过程的方法最关心的是(),而过程实施的对象是作为过程参数传递的。

A.参数

B.主体

C.过程

D.数据结构

29、()用于描述系统的功能集。

A. 组件视图

B.逻辑视图

C. 用例视图

D.对象视图

30、用()模型建立系统组织结构。

A.组织

B.CMM

C.数据

D.静态

31、对象模型描述现实世界中实体的对象以及它们之间的关系,表示目标系统的静态数据结构。在面向对象方法中,由()实现。

A.顺序图

B.类图

C.状态图

D.组件图

32、如果对象之间的耦合是通过()来实现的,则这种耦合就是交互耦合。

A.消息机制

B.参数

C.方法

D.公共数据区

33、定义类的属性类型时尽量使用已有类型,太多自定义类型会降低系统的()指标。

A.有效性

B.安全性

C. 可维护性

D. 开发效率

34、在设计测试用例时,应该包括()测试用例。

A. 可能产生无效输出的输入情况

B.无效的和不期望的输入情况

C.有效的和期望的输入情况

D.上面所有情况

35、()属于功能测试方法。

A.等价类划分和判定覆盖

B.边值分析和等价类划分

C.边值分析和判定覆盖

D.判定覆盖和回归测试

36、一个软件项目大约()的工作量在开发阶段,()的工作量在维护阶段。

A.30%,70%

B. 70%,30%

C. 30%,30%

D. 70%,70%

37、软件项目管理的内容不包括()。

A.人员的组织与管理

B. 技术和算法

C.软件配置管理

D.软件开发进度计划

38、通俗的说,软件项目管理中常说的基线是()。

A.管理的基本思路

B.一种软件开发的基本策略

C.基本的技术路线

D. 通过正式复审的文档

39、科学计算领域一般选择()语言。

A.HTML

B.C

C.汇编语言

D.XML

40对于嵌套的循环和分支程序,层次不要超过()层。

A.1

B.2

C.3

D.5

41、在分析模型内表示协调、顺序、事务处理以及控制其他对象的类是()。

A.控制类

B.组件类

C.主函数

D.事务类

42、继承耦合是()之间的一种关联形式,设计时应该适当使用这种耦合。

A. 虚类与实体类

B. 一般化类与特殊化类

C.控制类与界面类

D.数据类与处理类

43、构架设计的主要目的是(),这项工作由经验丰富的构架设计师主持完成。

A.类图

B.确定系统数据结构

C.处理流程

D.确定系统总体结构

44、测试用例是一组()。

A.测试用的输入数据以及对应的预期结果

B.测试驱动程序

C.测试数据

D.测试程序及数据

45、由于面向对象中的继承和消息机制,使得软件测试()。

A.更加简单

B.更加复杂

C.没变

D.不确定

46、软件维护过程中产生的副作用,一般是由()引起的。

A.算法说明

B.修改程序

C.优先级

D.环境要求

47、项目计划活动的主要任务是()。

A.估算项目的进度

B.分配工作量

C.计划资源使用

D.以上全部

48、如果程序代码的()好,则调试的成本就可以大幅度降低。

A.性能比

B. 可扩充性

C. 可读性

D.可移植性

49、两个浮点数X0和X1比较相等时,应该用()比较。

A.X0==X1

B.X1-X0<ε

C. |X0-X1|<ε

D.X0=X1

50、瀑布模型存在的问题是()。

A.用户容易参与开发 B.适用可变需求 C.用户与开发者易沟通 D.缺乏灵活性

51、()不是分析建模的目的。

A. 定义可验证的软件需求

B. 开发一个简单的问题解决方案

C. 描述客户需求

D. 建立软件设计的基础

52、对用例进行设计,发现实现用例功能的(),确定类之间的关系。

A. 算法

B.业务流程

C.数据结构

D. 关键类

53、框架是一组可用于不同应用的()的集合。

A.类

B.数据结构

C.函数

D.过程

54、从狭义上讲,软件测试是()的过程。

A. 为发现错误而执行程序

B.为了验证程序正确

C.用不同的数据验证程序正确性

D.区分程序员水平

55、在设计黑盒测试用例时,主要研究()。

A. 概要设计说明书

B.详细设计说明

C.项目开发计划

D. 需求规格说明

56、()时,测试人员必须接触到程序源代码。

A、黑盒测试

B、白盒测试

C、压力测试

D、外观测试

57、一般维护程序代码的策略()。

A. 从需求开始重新开发

B.根据维护申请读源程序,并修改

C.找一个新的模块替换

D. 不用读源程序,从新编写代码

58、Gantt图直观简明、易学易用,但它不能()。

A.直接反应任务间的依赖关系和关键路径

B.反应任务的分解情况

C.直接反应任务的起止日期

D.反应具体任务的时间段

59、()针对开发过程中的程序、数据、文档提出使用和管理策略。

A.组织管理B.过程管理C.风险管理D.软件配置管理

60、程序的三种基本控制结构,包括顺序结构、()和循环结构。

A.判断结构

B.说明结构

C.输入结构

D.输出结构

61、软件工程的研究内容具有层次化结构,最底层是质量保证层,中间层是(),最上层是工具层。

A.过程层

B.方法层

C.过程层和方法层

D.系统层

62美国著名软件工程专家B.W.Boehm于1983年提出了软件工程的()条基本原理。

A.7

B.5

C.3

D.12

63、下面哪个选项不是软件工程研究的内容()。

A. 生产无故障的软件

B. 精通一门编程语言

C.生产满足用户需求的软件

D.生产及时交付的软件

64可行性研究的主要任务是()。

A.确定系统做什么

B. 确定性能

C.确定功能

D. 进行一次简要的需求分析

65、用户需求描述的是()。

A.用户使用该软件要完成的任务

B.业务需求

C.功能需求

D.软件目标、规模和范围

66、数据流程图的主要作用是()。

A.描述模块组成

B.说明用户数据结构

C.描述软件功能

D. 描绘系统的逻辑模型

67、软件设计的目标是()。

A.在最短的时间内,生产出可靠性、可维护性俱佳的软件方案。

B.为软件编码设计模块结构。

C.确定软件要做什么。

D.确定软件的实现算法。

68、内容耦合是模块间最紧密的耦合,()是模块间最松散的耦合。

A.数据耦合B.非直接耦合C.控制耦合D.外部耦合

69、面向对象是“先”确定()“后”()。

A.属性/方法

B.数据结构/方法

C. 动作的主体/执行动作

D.动作/操作

70、UML是一种()语言。

A.高级编程语言

B.面向对象建模语言

C.分析方法

D.过程

71、软件工程强调将()的方法应用于软件的开发和维护过程之中。

A.规范化

B.系统化

C.可度量

D.以上全部

72、软件开发活动的顺序应该是()。

A.问题定义、可行性研究、需求分析、设计、编码和测试。

B.问题定义、设计、可行性研究、编码和测试。

C.需求分析、设计、编码和测试。

D.需求分析、编码和测试、试运行。

73假定银行的存款年利率是2%,请问现在存5000元,两年后的价值应为()元。

A.5202

B.4500

C.5100

D.4712

74、系统物理模型用()表示。

A.系统流程图

B.数据流程图

C.程序流程图

D.E-R图

75、关于软件需求特性不正确的描述是“软件需求具有()”。

A.多变性

B.模糊性

C. 准确性

D.主观性

76、随着模块规模减小,模块开发成本(),模块集成成本()。

A.减小/减小B.减小/增加C.增加/减小D.增加/增加

77、反映模块独立性的指标是()。

A.模块的复杂性B.模块的大小C.模块的参数D.内聚和耦合

78、面向过程的方法最关心的是(),而过程实施的对象是作为过程参数传递的。

A.过程

B.主体

C.参数

D.数据结构

79、UML是一种()语言。

A.建模工具

B.可视化的程序设计语言

C. 面向对象建模语言

D.过程

80、用()模型分析和定义用户的需求。

A.数据

B.静态

C. 动态

D.用例

81、动态模型描述系统的动态结构和对象之间的交互,表示瞬时的、行为化的系统“控制”特性。面向对象方法中,常用()实现。A.状态图 B.交互图 C.活动图 D.以上全部

82、面向对象分析和设计的界限是(),从分析到设计是一个逐渐扩充模型的过程。

A.清晰的

B.模糊的

C.非线性的

D.确定的

83、每个子系统的接口定义了若干(),体现了子系统的功能,而功能的具体实现方法应该是隐藏的。

A. 操作

B.参数

C.算法

D.控制

84、测试最早的开始时间是()。

A.从详细设计阶段开始

B.从编码阶段开始

C.从需求分析阶段开始

D.以上都对

85、从测试对象的粒度上划分测试为()。

A.单元测试、集成测试

B.压力测试、功能测试、性能测试和系统测试

C.单元测试、集成测试、系统测试和验收测试

D.黑盒测试、白盒测试、功能测试和性能测试

86、维护的工作量与软件规模成(),软件的规模可以由源程序的语句数量、模块数、输入输出文件数、数据库的规模,以及输出的报表数等指标来衡量。

A.反比

B.正比

C.没关系

D.不确定

87、上世纪70年代,美国国防部的研究结果发现70%的项目是因为()原因,造成项目失败。

A. 技术不精

B.管理不善引起

C.测试不充分

D.人员不够

88所有程序设计语言的基本成分都可归纳为:数据成分、()、控制成分和传输成分。

A.循环成分

B.运算成分

C.说明成分

D.输入成分

89程序结构清晰且简单易懂,一个函数的规模一般()行。

A.等于300

B.大于500

C.不超过30

D.100左右

90、不属于软件项目管理的是()。

A.软件销售利润

B.项目风险评估

C.质量监控

D. 开发机构能力评估

91、用()模型描述和分析业务流程。

A.交互

B.业务

C.数据

D.动态

92、用()描述系统与角色之间的接口。

A. 表单

B.界面类

C.窗体

D.对话框

93、对类进行详细设计,主要是设计类的(),优化类之间的关系。

A. 数据结构

B.处理流程

C. 属性和方法

D.算法

94、面向对象设计强调定义(),并且使它们相互协作来满足用户需求。

A.软件对象

B.物理模型

C.E-R模型

D.接口

95、软件测试的目标是设计优秀的测试用例,()。

A.最快速地找出程序中的问题

B.以最小的代价、在最短的时间内尽可能多地发现软件中的错误

C.保障程序的正确性

D.区分出程序员的编程水平

96、()不符合软件测试原则。

A.对每个测试结果进行检查,不漏掉已经出现的错误迹象

B.程序员应该仔细测试自己编写的程序代码

C.程序员要避免测试自己编写的程序代码

D.测试工作越早开始越好

97、引起软件改变的原因主要有()。

A.运行环境变化

B. 需求变化

C.系统有错

D.以上全部

98、()针对开发过程中的程序、数据、文档提出使用和管理策略。A.组织管理B.过程管理C.软件配置管理D.风险管理

99、现在人们更强调程序代码的()。

A.可维护性

B.可移植性

C.可扩充性

D.高效性

100、程序的三种基本控制结构,包括顺序结构、()和循环结构。

A.判断结构

B.说明结构

C.输入结构

D.输出结构

二、简答题

1、试从软件的特点出发分析软件危机产生的原因。

2、一个程序片段如下,请设计符合条件组合覆盖的测试用例。

……

if (a>=4) && (b<0) {

c=a+b;

else

c=a-b;

if (c>3) || (c<1)

printf(“c不在计算区域\n”)

else

printf(“%d\n”, c);

……

3、面向对象的分析通常要建立三个模型,请问三个模型的作用?

4、软件工程为什么要强调规范化和文档化?

5、读懂下面的程序,调整格式,使其更容易理解,并添加注释。

int main()

{

int a[10];

for (int i =0;i<10;i++)

scanf(“%d”,a[i]);

int max=a[0],min=a[1];

for (int j = 0;j<10;j++)

{

max=(max>a[j]?max:a[j]);

min=(min

}

printf("max= %d",max);

printf("min= %d",min);

printf("\n");

return 0;

}

6、软件需求可以分为业务需求、用户需求、功能需求和非功能需求,请分析业务需求与用户需求的区别?

7、一个程序片段如下,请设计符合判定覆盖的测试用例。

if (a>=5) && (b<0) {

c=a+b;

else

c=a-b;

if (c>5) || (c<1)

printf(“c不在计算区域\n”)

else

printf(“%d\n”, c);

8、请说明对象模型的作用是什么?

9、请说明IPO图的作用,并给出一个IPO图的模板。

10、什么是耦合?什么是内聚?

11、请画图说明软件工程的层次化结构,并详细分析中间两层的内容。

12、请为下面的程序设计符合判定覆盖的测试用例。

int main()

{

int a,b,c,x,y,z;

scanf(“d%,d%,d%),&a,&b,&c);

if a>5 x=10 else x=1;

if b>10 y=20 else y=2;

if c>15 z=30 else z=3;

printf(“d%,d%,d%\n”,x,y,z)

}

13、请说明快速原型化模型的基本思想。

14、下面的程序段A被程序员误写成程序段B,请设计合适的测试用例发现其中的错误。

15、请举例说明用例之间的包含关系和扩展关系的区别?

16、软件设计中的抽象是什么意思?

17、孩子阅读疲倦时,一定要休息。如果不疲倦,但是对所阅读的内容不感兴趣,就跳到下一章;如果不疲倦,对内容有兴趣,理解无困难,则继续阅读;如果不疲倦,对内容有兴趣,但理解有困难,则应该重读。请对上面的描述设计判定表。

18、活动图与状态图的区别?

19、试分析结构化方法存在的主要问题是什么?

20、请说明判定表的作用及其结构。

21、请给出软件工程七条基本原理中的任意三条基本原理。

22、结构化程序设计的特征是什么?

23、某学校开发了学生网上选课的系统,学生在网上查找到希望选修的课程,并查看是否还有名额,若有名额就输入学号,系统自动记录该学生的选课信息,并返回选课成功。下面的顺序图描述了选课成功的情形,请将以下对象填入最合适的位置:系统界面、学生、学生基本信息、学生选课记录、课程基本信息。

24、软件需求可以分为业务需求、用户需求、功能需求和非功能需求,请分析业务需求与功能需求的区别?

25、对功率大于50马力的机器或已运行10 年以上的机器,应送到专业的维修公司处理;如果功率小于20马力,并且有维修记录,则在车间维修;否则送到本厂的维修中心维修,请建立判定表。

三、应用题

1、某企业的设备维修委托给专业的技术公司完成,现在要开发软件对设备维修信息进行管理,具体描述如下:

车间主任填写维修申请单,内容有设备名称、型号、故障描述、维护时间要求、预计费用;填好后交给审计人员,审计人员根据企业的审计规定对维修申请单进行审计,填写审计意见和审计结果,审计意见可以修改费用,审计结果是同意或不同意;车间主任可以随时查询审计意见和结果;审计通过的维修申请单送给总经理进行审核,并填写审核意见和结果,审核也是以修改费用,审核结果是同意或不同意。审核通过后,车间把设备送去维修。维修后由车间主任组织对设备维修结果进行验收,企业对每台有设备验收标准。验收通过后,由财务人员进行结算,填写支付单并支付维修费。最后收取发票后,财务人员填写发票记录。

请画出设备维修信息管理软件的数据流程图。

2、某个学生成绩管理系统的部分功能如下:

(1)基本信息管理:教务管理人员输入或修改学期教学计划、学生名单和教师名单;

(2)学生选课:学生根据教学执行计划进行选课;

(3)分配任课教师:教务管理人员为符合开课条件的课程分配教师;

(4)教师查询并打印课表;

(5)成绩管理:每门课程的教师在考试评分结束后将考试成绩录入,学生可查询。

请根据要求画出该问题的数据流程图。

3、一个简化的养老院软件需求描述如下:老人来到养老院,接待人员将老人的基本信息录入到系统中,管理员读取老人信息,进行护理级别的评估,根据评估结果分配床位、确定护理方案,床位的分配信息存入床位分配数据表,每位老人的护理方案也要保存到数据库表中。财务人员根据收费标准、床位分配信息、护理方案和老人的日常护理记录计算应收费用,老人的家属可以查询应收费信息和老人的日常护理信息。护士根据老人基本信息、护理方案对老人进行日常护理,并向系统录入每日的护理信息。请你根据以上的描述,画出数据流程图。

4、学校教师工资管理系统的需求描述如下:教师每月末将本月的工作量输入到系统中,学院负责人对教师输入的工作量进行审核,财务部门对审核后的工作量计算本月工资,本月

工资=基本工资+各种补贴+工作量奖金-税收-保险一公积金金。基本工资、各种补贴、保险、公积金信息由人事处负责输入和维护,教师可以查询月工资明细。银行系统每月从本系统读入每位教师的实发工资,并向每位教师的银行卡帐户打入月工资。教师可以查询自己银行卡的金额。

请针对上面描述的需求画出数据流程图。

5、学校开发的网上作业管理信息系统需求如下:教师使用本系统将作业题输入到数据库中,并且针对不同的学生布置不同的作业。学生在网上查看教师给自己布置的作业,并完成作业,完成的作业放在学生作业表中。教师在网上批阅作业,并可以统计作业完成情况。学生可以查看教师批阅的作业,修改作业中的错误,教师仍然可以查看学生修改作业的情况,并给予批阅。

请仔细阅读上面的描述,画出数据流程图。

参考答案

一、选择题,请从四个可选项中选择正确答案。

答案

1. C

2. A

3. B

4. D

5. C

6. D

7. A

8. B

9. A 10. C

11.C 12..D 13. A 14. B 15,A

16.D 17.C 18. B 19. D 20.C

21.B 22. A 23. B 24.D 25.C

26.A 27.C 28.A 29.C 30.D

31. B 32.A 33.C 34.D 35.B

36.A 37.B 38.D 39.B 40.C

41.A 42.B 43.D 44. A 45.B

46. B 47.D 48.C 49.C 50.D

51. B 52. D 53.A 54.A 55.D

56. B 57.B 58. A 59.D 60. A

61.C 62. A 63.B 64.D 65.A

66.D 67. A 68.B 69.C 70.B

71.D 72.A 73. A 74.A 75.C

76.B 77.D 78.A 79.C 80.D

81.D 82. B 83.A 84.C 85.C

86.B 87.B 88.B 89.D 90.A

91.D 92.B 93.C 94.A 95.B

96.B 97.D 98.C 99.A 100.A

二、简答题

1、答案

1)软件是一种逻辑实体,具有抽象性,无法看到软件本身的形态,必须通过观察、分

析、思考和判断才能了解它的功能和性能。

2)软件对硬件和环境有着不同程度的依赖性,这导致了软件升级和移植的问题。计算

机硬件和支撑环境不断升级,为了适应运行环境的变化,软件也需要不断维护,并

且维护的成本通常比开发成本高许多。

3)软件生产至今尚未摆脱手工方式,软件开发的手工行为造就了一个致命的问题,就

是为应用“量身订做”软件。长期以来,软件给人的感觉是修改几条指令很简单,

客户总是强调软件要适应自己的业务需求。因此,软件产品大多是为客户“订做”

的,通用性差。

4)软件涉及人类社会的各行各业,常常涉及一些行业知识,这对软件工程师提出了很

高的要求。

5)软件是与文学艺术作品相似的精神作品,与体力劳动相比,精神活动过程的特点是

“不可见性”,这大大增加了组织管理上的困难。

2、答案

a>=4 b<0

a>=4 b>=0

a<4 b<0

a<4 b>=0

c>3

c<=3

c<1

c>=1

综合以上条件组合,设计测试用例如下(注意结果不唯一,只要满足上面的组合条件即可):a=4 b=-1 c=3

a=4 b=0 c=4

a=-1 b=-1 c=0

a=-1 b=0 c=-1

3、答案

1)功能模型:表达系统的详细需求,为软件的进一步分析和设计打下基础。在面向对象方法中,由用例图和场景描述组成。2)对象模型:表示静态的、结构化的系统“数据”性质。描述现实世界中实体的对象以及它们之间的关系,表示目标系统的静态数据结构。3)动态模型:描述系统的动态结构和对象之间的交互,表示瞬时的、行为化的系统的“控制”特性。

软件工程强调规范化和文档化。规范化的目的是使众多的开发者遵守相同的规范,使软件生产摆脱个人生产方式,进入标准化、工程化的生产方式。文档化是将软件的设计思想、设计过程和实现过程完整地记录下来,以便于后人的使用和维护,在开发过程中各类相关人员借助于文档进行交流和沟通。另外,在开发过程中产生的各类文档使得软件的生产过程由不可见变为可见,便于管理者对软件生产进度和开发过程进行管理。在用户最终验收时可以通过对提交的文档进行技术审查和管理审查,保证软件的质量。

5、答案

int main()

{

int a[10];

//读入10个数据

for (int i =0;i<10;i++)

scanf("%d",a[i]);

//max存放最大值,min存放最小值

int max=a[0],min=a[0];

//从10个数中发现最大、最小值

for (int j = 0;j<10;j++)

{

max=(max>a[j]?max:a[j]);

min=(min

}

//输出结果

printf("max= %d",max);

printf("min= %d",min);

return 0;

}

6、答案

业务需求是用户高层领导机构决定的,它确定软件的目标、规模和范围。业务需求一般在进行需求分析之前就应该确定,需求分析阶段要以此为参照制定需求调研计划、确定用户核心需求和软件功能需求。业务需求通常比较简洁,大约三~五页纸就可以描述清楚,也可以将它直接作为需求规格说明书中的一部分。

用户需求是用户使用该软件要完成的任务。这部分需求应该充分调研具体的业务部门,详细了解最终用户的工作过程、所涉及的信息、当前系统的工作情况、与其他系统的接口等等。用户需求是最重要的需求,也是出现问题最多的。

7、答案

条件:

a>=5 b<0

c<1

1

符合判定覆盖的测试用例(不唯一):a=5,b=-1,c=4; a=5,b=5,c=0;

8、答案

对象模型:表示静态的、结构化的系统“数据”性质。描述现实世界中实体的对象以及它们之间的关系,表示目标系统的静态数据结构。在面向对象方法中,类图是构建对象模型的核心工具。

9、答案

数据流程图中的处理本应该放在数据字典中进行定义,但是由于处理与数据是有一定区别的两类事物,它们各自有独立的描述格式,因此在实际项目中通常将处理说明用IPO图标描述。下面是项目中常用的处理说明模板:

10、答案

在软件设计中应该保持模块的独立性原则。反映模块独立性的有两个标准:内聚和耦合。

内聚衡量一个模块内部各个元素彼此结合的紧密程度;耦合衡量模块之间彼此依赖的程度。软件设计时追求高内聚、低耦合。

11、答案

软件工程的内容具有层次化结构,最底层是质量保证层,中间是过程层和方法层,最上层是工具层。见图:

其中过程层定义了一组关键过程域,目的是保证软件开发过程的规范性和可控性。方法层提供了软件开发的各种方法,包括如何进行软件需求分析和设计,如何实现设计,如何测

试和维护等方法。

12、答案

条件:

a>5

a<=5

b>10

b<=10

c>15

c<=15

判定测试用例(不唯一):a=6 b=11 c=16;a=5 b=10 c=15

13、答案

在需求分析的同时,以比较小的代价快速建立一个能够反映用户主要需求的原型系统。用户在原型系统上可以进行基本操作,并且提出改进意见,分析人员根据用户的意见完善原型,然后再由用户评价,提出建议,如此往复,直到开发的原型系统满足了用户的需求为止。基于快速原型化模型的开发过程基本上是线性的,从创建系统原型到系统运行,期间没有反馈环。这是由于开发人员是在原型的基础上进行系统分析和设计,而原型已经通过了用户和开发组的审查,在设计阶段由于有原型作设计参考,所以设计的结果正确率比较高。

14、答案

条件组合:

A>=1 B>=2;

A>=1 B>2

A<1 B>=2

A<1 B<2

X>=90 Y>=75

X>=90 Y<75

X<90 Y>=75

X<90 Y<75

由此获得测试用例:A=1 B=2; A=1 B=1;A=0 B=2;A=0 B=1;X=90 Y=75;X=90 Y=1;X=1 Y=75;X=1 Y=1;其中X=90 Y=75能够发现错误。

评分标准:答案不唯一,不管用什么方法,给出的测试用例能够发现错误就给满分。参考答案为X=90 Y=75。

15、答案

包含关系用于构造多个用例共同的活动。例如,在ATM系统中,取钱、查询、更改密码等功能都需要验证用户密码。这种情况下应该将密码验证功能独立出来,便于复用、减少冗余。一个用例扩展另一个用例的功能,例如,在图书馆信息管理系统中,读者还书时,系统

检查所还图书是否有预订记录,如果有则执行“通知”用例。

16、答案

所谓抽象就是将事务的相似方面集中和概括起来,暂时忽略它们之间的差异。或者说,抽象就是抽出事务的本质特性而暂时不考虑它们的细节

17、答案

化简为:

18、答案

1)描述的重点不同:活动图描述的是从活动到活动的控制流;状态图描述的是对象的状态及状态之间的转移。

2)使用的场合不同:在分析用例、理解涉及多个用例的工作流、处理多线程应用等情况下,一般使用活动图;在显示一个对象在其生命周期内的行为时,一般使用状态

图。

19、答案

1)结构化方法分析和设计阶段所应用的模型之间存在鸿沟。分析阶段的主要模型是数

据流程图,设计阶段的主要模型是软件模块结构图,数据流程图和软件模块结构图

之间需要进行转换。不同的人转换出的模块图可能不同,有很大的随意性。

2)需求分析的细化程度没有标准,只能凭借分析人员的经验自己把握;需求分析的过

程是在一种瀑布形式,当需求变更时,功能变化就会导致软件模块结构发生变化,造成了软件结构不稳定。

3)结构化程序设计将数据定义与处理数据的过程相分离,不利于软件复用。

4)结构化方法设计的软件结构不稳定,缺乏灵活性,可维护性差。

20、答案

判定表是结构花设计的工具,用于描述多重条件的处理。分为4各部分:条件列表、条件组合、操作列表、特定条件下的操作组合。

21、答案

原理1.用分阶段的生命周期计划严格管理

原理2.坚持进行阶段评审

原理3.实行严格的产品控制

原理4.采用现代程序设计技术

原理5.结果应能清楚地审查

原理6.开发小组的人员应该少而精

原理7.承认不断改进软件工程实践的必要性

22、答案:

结构化程序设计的特征如下:程序模块只有一个入口和一个出口、程序中只包含顺序、条件和循环三种控制结构。

23、答案

24、答案

业务需求是用户高层领导机构决定的,它确定软件的目标、规模和范围。业务需求一般在进行需求分析之前就应该确定,需求分析阶段要以此为参照制定需求调研计划、确定用户核心需求和软件功能需求。业务需求通常比较简洁,大约三~五页纸就可以描述清楚,也可以将它直接作为需求规格说明书中的一部分。

功能需求定义了软件开发人员必须实现的软件功能。用户从他们完成任务的角度对软件提出了用户需求,这些需求通常是凌乱的、非系统化的、有冗余的,开发人员不能据此编写程序。软件分析人员要充分理解用户需求,将用户需求整理成软件功能需求。开发人员根据功能需求进行软件设计和编码。

25、答案

二、应用题

1、答案

参考答案如下,结果不唯一。

软件工程考试试卷答案

一.选择题 1、TURBO C是(D)软件· A、系统软件 B、人工智能 C、事务软件 D、应用软件. 2、计算机辅助软件工程,简称(D) A、SA B、SD C、SC D、CASE' 3、在数据流图中,O(椭圆)代表(C) A、源点 B、终点 C、处理 D、模块、 4、模块内聚度越高,说明模块内各成分彼此结合的程度越(B) A、松散 B、紧密 C、无法判断 D、相等、 5、软件维护是软件生命周期中的固有阶段,一般认为,各种不同的软件维护中以(C)维护所占维护量最小。 A、纠错性维护 B、代码维护 C、预防性维护 D、文档维护、 6、软件需求分析是保证软件质量的重要步骤,它的实施应该是在(C) A、编码阶段 B、软件开发全过程 C、软件定义阶段 D、软件设计阶段. 7、软件测试方法,黑盒、白盒测试法是常用的方法,其中白盒测试主要用于测试(D) A、结构合理性 B、软件外部功能 C、程序正确性 D、程序内部逻辑. 8、软件的结构化设计(SD)方法中,一般分为概要设计和详细设计两阶段,其中详细设计主要是要(D) A、软件结构 B、软件过程 C、软件模型 D、软件模块、 9、软件文档不仅是软件开发各阶段的重要依据,而且与影响软件的(B) A、可理解性 B、可维护性 C、可扩展性 D、可移植性. 10、在瀑布模型中,将软件划分为若干个时期,软件项目的可行性研究一般归属于(B) A、维护时期 B、计划时期 C、运行时期 D、开发时期, 11、系统定义明确之后,应对系统的可行性进行研究。可行性研究应包括(A) A. 软件环境可行性、技术可行性、经济可行性、社会可行性 B. 经济可行性、技术可行性、操作可行性 C. 经济可行性、社会可行性、系统可行性 D. 经济可行性、实用性、社会可行性 12、(C),则说明模块的独立性越强 A、耦合越强 B、扇入数越高 C、耦合越弱 D、扇入数越低 13、面向数据结构的设计方法(JACKSON方法)是进行(B )的形式化的方法 A.系统设计B、详细设计C、软件设计D、编码 14、模块内聚度越高,说明模块内各成分彼此结合的程度越(B)。 A、松散 B、紧密 C、无法判断 D、相等. 15、软件测试的目的是(C) A.评价软件的质量 B.发现软件的错误. C.找出软件的所有错误 D.证明软件是正确的.

软件工程试题及答案34385

软件工程期末试卷(A) 说明:本试卷为04级计算机专业(专升本)软件工程期末试卷,总计100分,时间100分钟 一、选择题:(每题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.条件组合覆盖

河南电大软件工程期末试题带答案

试卷代号:1260 中央广播电视大学2018-2018学年度第二学期“开放本科”期末考试(半开卷) 软件工程试卷 注意事项 一、将你的学号、姓名及分校(工作站)名称填写在答题纸的规定栏内。考试 结束后,把试卷和答题纸放在桌上。试卷和答题纸均不得带出考场o监考人收完 考卷和答题纸后才可离开考场 二、仔细读懂题目的说明,并按题目要求答题。答案一定要写在答题纸的指 定位置上,写在试卷上的答案无效。 三、用蓝、黑圆珠笔或钢笔【含签字笔)答题,使用铅笔答题无效。 一、选择题(请从四个可选项中选择最佳答案0 60分.每题3分l 1.软件工程的研究内容具有层次化结构,最底层是质量保证层,中间层是( ).最上层是工具层。 A.过程层&方法层 C.过程层和方法层 D.系统层 2.美国著名软件工程专家B.W.Boehm于1983年提出了软件工程的( )条基本原理。 A.7 B.5 C.3 D.12 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.软件危机出现于____,为了解决软件危机,人们提出了用____的原理来设计软件,这是软件工程诞生的基础。 A.50年代末 B.60年代初C.60年代末 D.70年代初 A.运筹学B.工程学 C.软件学 D.软件学 E.数字 2.开发软件需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称作____。 A.软件投机B.软件危机C.软件工程D.软件产生 3.产生软件危机的原因有如下几点,除了______。 A、软件开发过程未经审查 B、软件开发不分阶段,开发人员没有明确的分工 C、所开发的软件,除了程序清单外,没有其他文档 D、采用工程设计的方法开发软件,不符合软件本身的特点 4.软件工程学是应用科学理论和工程上的技术指导软件开发的学科,其目的是____。 A.引入新技术提高空间利用率B.用较少的投资获得高质量的软件 C.缩短研制周期扩大软件功能D.硬软件结合使系统面向应用 5.请按顺序写出软件生命期的几个阶段____,____ ,____,____,____,____。 A.维护 B.测试 C.详细设计 D.概要设计 E.编码 F.需求分析6.瀑布模型把软件生存周期划分为软件定义、软件开发和____三个阶段,而每一阶段又可细分为若干个更小的阶段。 A.详细设计B.可行性分析C.运行及维护D.测试与排错7.划分软件生存周期的阶段时所应遵循的基本原则是_____。 A、各阶段的任务尽可能相关性 B、各阶段的任务尽可能相对独立 C、各阶段的任务在时间上连续 D、各阶段的任务在时间上相对独立 8.一个软件项目是否进行开发的结论是在______文档中作出的。 A、软件开发计划 B、可行性报告 C、需求分析说明书 D、测试报告 9.分析员是____。 A.用户中系统的直接使用者B.用户和软件人员的中间人 C.软件的编程人员 D。用户和软件人员的领导 10.下列叙述中,_______不属于数据字典的作用。 A、作为编码阶段的描述工具 B、为用户与开发人员之间统一认识 C、作为概要设计的依据 D、为需求分析阶段定义各类条目 11.使用结构化分析方法时,采用的基本手段是____。 A.分解和抽象 B.分解和综合C.归纳与推导D.试探与回溯12.结构化系统分析主要是通过____进行分析的。 A.算法分解B.控制结构分解 C.数据结构分解D.处理功能分解13.分层数据流图是一种比较严格又易于理解的描述方式,它的顶层描述了系统的____。 总貌B.细节C.抽象D.软件的作者 13.变换型和事务型是程序结构的标准形式。从某处获得数据,再对这些数据作处理,然后将结果送出是属于____。 A.变换型 B 事务型 14.需求分析说明书不能作为______。

软件工程试题及答案(B)

B卷 一、选择题(每题2分,共40分) 1.软件项目的可行性研究要进行一次( C )需求分析。 A.详细的B.全面的C.简化的、压缩的D.彻底的 2、系统流程图用于可行性分析中的( A )的描述。 A.当前运行系统B.当前逻辑模型C.目标系统D.新系统 3、程序的三种基本控制结构的共同特点是( D ) A.不能嵌套使用B.只能用来写简单程序 C.已经用硬件实现D.只有一个入口和一个出口 4、维护中,因误删除一个标识符而引起的错误是( C )副作用。 A.文档B.数据C.编码D.设计 5、( D )是以提高软件质量为目的的技术活动。 A.技术创新B.测试C.技术创造D.技术评审 6、面向对象方法学的出发点和基本原则是尽可能模拟人类习惯的思维方式,分析、设计和 实现一个软件系统的方法和过程,尽可能接近于人类认识世界解决问题的方法和过程。因此面向对象方法有许多特征,如软件系统是由对象组成的;( C );对象彼此之间仅能通过传递消息互相联系;层次结构的继承。 A.开发过程基于功能分析和功能分解B.强调需求分析重要性 C.把对象划分成类,每个对象类都定义一组数据和方法D.对既存类进行调整 7、原型化方法是用户和设计者之间执行的一种交互构成,适用于( A )系统。 A.需求不确定性高的B.需求确定的C.管理信息D.实时 8、为了提高测试的效率,应该( D )。 A.随机地选取测试数据B.取一切可能的输入数据作为测试数据

C.在完成编码以后制定软件的测试计划D.选择发现错误可能性大的数据作为测试数据 9、使用白盒测试方法时,确定测试数据应根据( A )和指定的覆盖标准。 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.编码副作用、数据副作用、测试副作用 B.编码副作用、数据副作用、调试副作用 C.编码副作用、数据副作用、文档副作用 D.编码副作用、文档副作用、测试副作用 14、在下面的软件开发方法中,哪一个对软件设计和开发人员的开发要求最高( B)。 A、结构化方法 B、原型化方法 C、面向对象的方法 D、控制流方法 15、软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实施的主 要保证是( C)。 A、硬件环境 B、软件开发的环境 C、软件开发工具和软件开发的环境 D、开发人员的 素质 16、软件开发模型是指软件开发的全部过程、活动和任务的结构框架。主要的开发模型有瀑 布模型、演化模型、螺旋模型、喷泉模型和智能模型。螺旋模型将瀑布模型和演化模型相结合,并增加了(1),它建立在(2)的基础上,沿着螺线自内向外每旋转一圈,就得到(2)的一个新版本。喷泉模型描述了(3)的开发模型,它体现了这种开发方法创建软件的过程所固有的(4)和(5)的特征。 B(1) A、系统工程 B、风险分析 C、设计评审 D、进度控制 D(2) A、模块划分 B、子程序分解 C、设计; D、原型 A(3) A、面向对象 B、面向数据流 C、面向数据结构 D、面向事件驱动 D(4) A、归纳 B、推理 C、迭代 D、递归 A(5) A、开发各阶段之间无“间隙” B、开发各阶段分界明显 C、部分开发阶段分界明显 D、开发过程不分段 二、判断题(每题2分,共30分) 1.螺旋模型是在瀑布模型和增量模型的基础上增加了风险分析活 动。( T ) 2.数据字典是对数据流图中的数据流,加工、数据存储、数据的源和终点进行详细定义。 ( F ) 3.JAVA语言编译器是一个CASE工具。( T )。

(2020年更新)国家开放大学电大本科《软件工程》期末题库和答案

最新国家开放大学电大本科《软件工程》期末题库及答案 考试说明:本人针对该科精心汇总了历年题库及答案,形成一个完整的题库,并且每年都在更新。该题库对考生的复习、作业和考试起着非常重要的作用,会给您节省大量的时间。做考题时,利用本文档中的查找工具,把考题中的关键字输到查找工具的查找内容框内,就可迅速查找到该题答案。本文库还有其他网核及教学考一体化答案,敬请查看。 《软件工程》题库及答案一 一、选择题。请从四个可选项中选择正确答案。(60分,每题3分) 1.软件工程四个层次由下至上是( ),它们的顺序不能互换。 A.质量层、过程层、方法层、工具层 B.过程层、方法层、质量层、工具层 C.方法层、过程层、质量层、工具层 D.方法层、质量层、过程层、工具层 2.根据软件工程的7条基本原理判断下面正确的选项是( )。 A.软件错误发现的时机不重要,重要的是错误的严重程度 B.软件错误只能通过运行代码才能发现 C.软件错误发现的越早改正的成本越低D.需求阶段一般不会引入错误 8.下列有关标准的符号,属于国内标准的是( )。 A.ZG B.GBC.GN D.CB 4.经济可行性研究的主要内容包括( )。 A.开发过程 B.开发工具C.风险分析 D.效益分析 5.( )定义了用户使用该软件要完成的任务。 A.用户需求 B.业务需求C.性能需求 D.功能需求 6.数据流程图上的数据流必须封闭在( )之间。 A.外部过程 B.内部数据 C.内部过程 D.外部实体 7.按照模块独立性,耦合程度由强至弱正确的顺序是( )。 A.外部耦合、控制耦合、数据耦合 B.控制耦合、数据耦合、外部耦合 C.外部耦合、数据耦合、控制耦合 D.数据耦合、外部耦合、控制耦合 8.PDL是描述处理过程( )。 A.做什么 B.为什么做C.怎么做 D.对谁做 9.面向对象的这种( )模式与人们对客观世界的认识规律相符,从而使得面向对象技术在软件工

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

一、填空题(每空1分,共25分) 1.软件生存周期一般可以划分为,问题定义、____________、____________、设计、 编码、测试和____________。 2.基于软件的功能划分,软件可以划分成__________、__________、__________三种。 3.可行性研究,应从、技术可行性、运行可行性、和开 放方案可行性等方面研究。 4.系统流程图是描绘的传统工具。它的基本思想是用图形符号以 描绘系统里面的每个部件。 5.数据流图的基本四种成分:数据输入的源点和数据输出汇点、、 和。 6.结构化分析方法是面向________________进行需求分析的方法。结构化分析方法使 用________________与________________来描述。 7.是自动地共享类、子类和对象中的方法和数据的机制。 8.软件详细设计工具可分为3类,即________________、________________和 ________________。 9.为了在软件开发过程中保证软件的质量,主要采取下述措施:________________、 复查和管理复审、________________。 10.大型软件测试包括、、确认测试和 四个步骤。 1、可行性研究需求分析运行与维护 2、系统软件支撑软件应用软件 3、经济可行性法律可行性 4、物理系统黑盒子形式 5、加工数据流数据存储文件 6、数据流数据流图DFD 数据字典DD 7、继承性 8、图示工具、设计语言表格工具 9、审查测试 10、单元测试集成测试系统测试 二、单项选择题(每小题2分,共20分) 1 2 3 4 5 C C C A C 6 7 8 9 10 D D A C B 1.软件设计中划分模块的一个准则是()。 A、低内聚低耦合 B、低内聚高耦合 C、高内聚低耦合 D、高内聚高耦合 2.Jackson设计方法是由英国的M. Jackson提出的,它是一种面向()的软件 设计方法。

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

软件工程考试题 简答题 1、什么叫软件? 软件就是计算机系统中与硬件相互依存的另一部分,它就是包括程序,数据及其相关文档的完整集合 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 图;编码与单元测试--任务:源程序清单,单元测试方案与结果;综合测试--任务:综合测试方案,结果集成测试,验收测试,完整一致的软件配置。 维护阶段:软件维护--任务:维护记录以及改正性维护,适应性维护,完整性维护与预防性维护

《软件工程》试题及参考答案(第6套)

第一部分选择题 一、单项选择题(本大题共20小题,每小题1分,共20分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。 1、()是软件生存期中的一系列相关软件工程活动的集合,它由软件规格说明、软件设计与开发、软件确认、软件改进等活动组成。 A 软件过程 B 软件工具 C 质量保证 D 软件工程 2、在各种不同的软件需求中,功能需求描述了用户使用产品必须要完成的任务,可以在用例模型或方案脚本中予以说明,()是从各个角度对系统的约束和限制,反映了应用对软件系统质量和特性的额外要求。 A 业务需求 B 功能要求 C 非功能需求 D 用户需求 3、软件测试计划开始于需求分析阶段,完成于()阶段。 A 需求分析 B 软件设计 C 软件实现 D 软件测试 4.下面关于面向对象方法中消息的叙述,不正确的是( )。 A. 键盘、鼠标、通信端口、网络等设备一有变化,就会产生消息 B.操作系统不断向应用程序发送消息,但应用程序不能向操作系统发送消息 C. 应用程序之间可以相互发送消息 D.发送与接收消息的通信机制与传统的子程序调用机制不同 5.美国卡内基—梅隆大学SEI提出的CMM模型将软件过程的成熟度分为5个等级,以下选项中,属于可管理级的特征是( )。 A.工作无序,项目进行过程中经常放弃当初的计划 B.建立了项目级的管理制度 C.建立了企业级的管理制度 D.软件过程中活动的生产率和质量是可度量的 6.在McCall软件质量度量模型中,()属于面向软件产品修改。 A.可靠性B.可重用性C.适应性 D.可移植性 7.软件生命周期中所花费用最多的阶段是() A.详细设计 B.软件编码 C.软件测 试 D.软件维护 8.需求分析阶段的任务是确定() A.软件开发方法 B.软件开发工具 C.软件开发费 D.软件系统的功能

国家开放大学电大《软件工程(本科)》2020-2021期末试题及答案

国家开放大学电大《软件工程(本科)》2020-2021期末试题及答案 一、选择题(请从四个可选项中选择正确答案。共60分,每小题3分) 1.软件工程的出现是由于( )。 A.计算机硬件技术的发展 B.软件危机 C.软件社会化的需要 D.计算机软件技术的发展 2.瀑布模型存在的问题是( )。 A.缺乏灵活性 B.用户容易参与开发 C.用户与开发者易沟通 D.设计的太完美 3.软件工程的研究内容具有层次化结构,最底层是质量保证层,中间层是( ),最上层是工具层。 A.过程层 B.方法层 C.过程层和方法层 D.系统层 4.下列说法正确的是( )。 A.软件工程课程实际是教授学生精通一门编程语言 B.软件开发虽然不能一帆风顺,但是其过程简单,只要程序员优秀就可以,也不需要任何测试,因此其开发过程不需要任何管理 C.美国著名软件工程专家B.W. Boehm于1983年提出了软件工程的7条基本原理 D.结构化分析方法和面向对象设计方法都是程序员在编写代码时采用的方法,只要程序员知道就可以了,不属于软件工程的内容 5.结构化分析方法(SA法)使用的主要描述工具有( )。 A.数据库 B.模块结构图 C.PAD图 D.分层的DFD图 6.源程序的效率与( )阶段确定的算法的效率直接有关。 A.概要设计 B.总体设计 C.单元设计 D.详细设计 7.可行性研究的主要任务是( )。 A.确定系统做什么 B.确定性能 C.确定功能 D.进行一次简要的需求分析 8.内容耦合是模块间最紧密的耦合,( )是模块间最松散的耦合。 A.数据耦合 B.非直接耦合 C.控制耦合 D.外部耦合 9.UML是一种( )语言。

软件工程试题及答案

1. 软件生命期各阶段的任务是什么? 答:软件生命期分为7个阶段: 1、问题定义:要解决的问题是什么 2、可行性研究:确定问题是否值得解,技术可行性、经济可行性、操作可行性 3、需求分析:系统必须做什么 4、总体设计:系统如何实现,包括系统设计和结构设计 5、详细设计:具体实现设计的系统 6、实现:编码和测试 7、运行维护:保证软件正常运行。 2、软件重用的效益是什么? 答:1、软件重用可以显著地改善软件的质量和可靠性。 2、软件重用可以极大地提高软件开发的效率。 3、节省软件开发的成本,避免不必要的重复劳动和人力、财力的浪费。 3、自顶而下渐增测试与自底而上渐增测试各有何优、缺点? 答: ①自顶而下渐增测试 优点:不需要测试驱动程序,能够在测试阶段的早期实现并验证系统的主要功能,而且能够尽早发现上层模块的接口错误。 缺点:需要存根程序,底层错误发现较晚。 ②自底而上渐增测试 优点与缺点和自顶而下渐增测试相反。 4 、提高可维护性的方法有哪些? 答:在软件工程的每一阶段都应该努力提高系统的可维护性,在每个阶段结束前

的审查和复审中,应着重对可维护性进行复审。 在需求分析阶段的复审中,应对将来要扩充和修改的部分加以注明。在讨论软件可移植性问题时,要考虑可能要影响软件维护的系统界面。 在软件设计的复审中,因从便于修改、模块化和功能独立的目标出发,评价软件的结构和过程,还应对将来可能修改的部分预先做准备。 在软件代码复审中,应强调编码风格和内部说明这两个影响可维护性的因素。 在软件系统交付使用前的每一测试步骤中都应给出需要进行预防性维护部分的提示。 在完成每项维护工作后,都应对软件维护本身进行仔细认真的复审。 为了从根本上提高软件系统的可维护性,人们正试图通过直接维护软件规格说明来维护软件,同时也在大力发展软件重用技术。 简述软件测试要经过哪几个步骤,每个步骤与什么文档有关。 【解答】 测试过程按 4 个步骤进行,即单元测试(模块测试)、集成测试(子系统测试和系统测试)、确认测试(验收测试)和平行运行。 单元测试集中对用源代码实现的每一个程序单元进行测试,与其相关的文档是单元测试计划和详细设计说明书。 集成测试把已测试过的模块组装起来,主要对与设计相关的软件体系结构的构造进行测试。与其相关的文档是集成测试计划和软件需求说明书。 确认测试则是要检查已实现的软件是否满足了需求规格说明中确定了的各种需求,以及软件配置是否完全、正确。与其相关的文档是确认测试计划和软件需求说明书。 平行运行把已经经过确认的软件纳入实际运行环境中,与其他系统成份组合在一起进行测试。与其相关的文档:用户指南、使用手册等。 36.简述容错技术的四种主要手段,并解释。

2020年7月国开电大本科《软件工程》期末考试试题及答案

2020年7月国开电大本科《软件工程》期末考试试题及答案 说明:试卷号:1260 课程代码:01250 适用专业及学历层次:计算机科学与技术;本科 考试:形考(纸考、比例30%);终考(纸考、比例70%) 一、选择题 1.软件开发活动的顺序应该是(A)。 A.问题定义、可行性研究、需求分析、设计、编码和测试 B.问题定义、设计、可行性研究、编码和测试 C.需求分析、设计、编码和测试 D.需求分析、编码和测试、试运行 2.美国卡内基·梅隆大学制定的SW-CMM是(D)。 A.软件工作规范 B.软件工作流描述 C.软件描述的一般方法D.软件成熟度模型 3.假定银行的存款年利率是2%,请问现在存5000元,两年后价值应为(A)元。A.5202 B.4500 C.5100 D.4712 4.系统物理模型用(A)表示。 A.系统流程图 B.数据流程图 C.程序流程图 D.E-R图 5.关于软件需求特性不正确的描述是“软件需求具有(C)”。 A.多变性 B.模糊性 C.准确性 D.主观性 6.软件结构图中没有(D)元素。 A.模块 B.调用参数 C.返回参数 D.判断 7.程序流程图与数据流程图的关系(A)。 A.不确定 B.数据流程图可以转换成程序流程图 C.数据调用关系 D.程序流程图可以转换成数据流程图 8.包含关系用于构造多个用例(B)。 A.关系B.共性的部分 C.角色 D.特殊活动

9.如果说用例F被用例T扩展,意思是(A)。 A.F是一个一般用例,T是一个特殊用例 B.F是一个特殊用户,T是一个一般用例 C.都是一般用例 D.都是特殊用例 10.用(C)对需要长久保存的信息进行建模。 A.实体类 B.数据库表 C.E-R图 D.对象类 11.面向对象程序设计的基本机制(A)。 A.继承 B.消息 C.方法 D.结构 12.面向对象分析和设计的界限是(C),从分析到设计是一个逐渐扩充模型的过程。 A.清晰的 B.模糊的 C.非线性的 D.确定的 13.动态模型描述系统的动态结构和对象之间的交互,表示瞬时的、行为化的系统“控制”特性。面向对象方法中,常用(D)实现。 A.状态图 B.交互图 C.活动图D.以上全部 14.不适合作为数据处理与数据库应用的语言是(D)。 A.soL B.Cobol C.4GL D.Lisp 15.程序设计语言的技术特性不应包括(D)。 A.数据结构的描述性 B.抽象类型的描述性 C.数据库的易操作性D.软件的可移植性 16.程序的三种基本控制结构,包括顺序结构、(A)和循环结构。 A.条件/判断结构 B.说明结构 C.输入结构 D.输出结构 17.一般性的软件其测试工作量大约占整个开发工作量的(B)。 A.小于10% B.40% C.90% D.大于100 18.下面哪些测试方法属于黑盒测试(B)。

软件工程试题及答案53581

软件工程 一、填空题(每题2分,共20分) 1、系统流程图是描述物理模型的传统工具,用图形符号表示系统中各个元素表达了系统中各种 元素之间的( )情况。 2、成本效益分析的目的是从( )角度评价开发一个项目是否可行。 3、自顶向下结合的渐增式测试法,在组合模块时有两种组合策略:深度优先策略和( ) 。 4、在JSP方法中解决结构冲突的具体办法是( )。 5、详细设计的任务是确定每个模块的内部特性,即模块的算法、( )。 6、所有软件维护申请报告要按规定方式提出,该报告也称( )报告。 7、独立路径是指包括一组以前没有处理的语句或条件的一条路径。从程序图来看,一条独立路 径是至少包含有一条( )的边的路径。 8、设计任何一个人机界面,一般必须考虑()四个方面。 9、在软件测试中,已知产品内部工作过程,通过测试检验产品内部动作是否按照产品规格说明 的规定正常进行的方法称为()测试法。 10、()是对软件结构中模快间关联程度的一种度量。 三、判断题(每题2分,共20分) 1. 缺乏有力的方法学的指导和有效的开发工具的支持,这往往是产生软件危机的原因之一。 () 2. 一个好的开发人员应具备的素质和能力不包括具有良好的书面和口头表达能力。() 3. 在用户需求分析时观察用户手工操作过程不是为了模拟手工操作过程,而是为了获取第一手 资料,并从中提取出有价值的需求。() 4. 快速原型技术的适用于软件产品要求大量的用户交互、或产生大量的可视输出、或设计一些 复杂的算法等场合。() 5. 流程图也称为程序框图是最常用的一种表示法。 6. 面向数据设计方法一般都包括下列任务:确定数据结构特征;用顺序、选择和重复三种基 本形式表示数据等步骤。() 7. 理想的人机界面应针对具有典型个性的特定的一类用户设计。() 8. 数据输入的一般准则中包括尽量增加用户输入的动作。() 9. 用穷举测试是较现实的测试方法。() 10、在软件维护过程中改善性维护是为适应环境的变化而修改软件的活动。() 四、论述题(共40分) 1、软件维护是软件生命周期的重要组成,而影响维护的因素较多,除了人员因素、技术因素和 管理因素外,还有程序自身的因素,具体影响因素可归纳为:a) 软件系统的规模;b) 软件系统的年龄;c) 软件系统的结构。 试回答以下问题: 1) 给出上述三项因素的解释,阐述“规模”、“年龄”和“结构”的具体含义。(6分) 2) 扼要分析影响维护工作量的因素,即分析可能增加维护工作量的因素和可能减少维护工作 量的因素。(8分) 3) 简单传述软件可维护性度量的含义。(8分) 2、可行性研究报告的主要内容有哪些?(8分) 3、系统设计的内容是什么?(10分) 五、综合题(20分)某电器集团公司下属的厂包括技术科、生产科等基层单位。现在想建立一 个计算机辅助企业管理系统,其中:

电大期末考试试题带答案软件工程

---- 试卷代号: 1 260 中央广播电视大学2018-2018 学年度第一学期“开放本科”期末考试(半开卷)试卷软件工程注意事项一、将你的学号、姓名及分校(工作站)名称填写在答题纸的规定栏内。考试 结束后,把试卷和答题纸放在桌上。试卷和答题纸均不得带出考场。监考人收完考卷和答题纸后才可离开考场。 二、仔细读懂题目的说明,并按题目要求答题。答案一定要写在答题纸的指定位置上,写在试卷上的答案无效。 三、用蓝、黑圆珠笔或钢笔(含签字笔)答题,使用铅笔答题无效。 60 分,每题3 分)一、选择题(请从四个可选项中选择最佳答案。 )1.美国卡内基·梅隆大学制定的 SW-CMM 是 (。 .软件工作流描述A B.软件工作规范 C.软件成熟度模型D.软件描述的一般方法2.螺旋模型是一种考虑了 () 的软件开发模型。 A .效率 B.风险判断C.可移植性D.安全性( )。3.可行性研究的四大要素是A.经济、技术、法律和社会环境 B.经济、技术、开发组织能力和

领导者水平 D.经济、技术、软件开发工具和人员的稳定性4.软件调研报告是在 ( )提交的。 A .可行性分析之前B.需求分析之前D.设计的时候C.签合同之前5.系统流程图的主要作用( )。 A .描述系统的物理模型.业务流程 B C.系统处理过程D.数据处理过程 (6. PDL 是一种语言。) B.建模语言A .低级程序设计语言CD.过程设计语言.高级程序设计语言7.结构化设计方法划分模块的原则是)(。5A .模块扇出小于 5 B.模块扇人小于7DC.低耦合,高内聚.模块深度小于.配置视图体现了系统的实现环境,反映系统的8。)(B.逻辑架构.物理架构A D.组成结构.体系结构C.角色可以有四种类型:系统的使用者,硬件设备,外部系统和9。)(.数据库A .接口B.对象CD.时间 10.功能模型用于表达系统的需求,为软件的进一步分析和设计打下基础。在面向对象法中,由 ( )实现。 A .场景描述B.活动图和场景描述D.交互图和场景描述C.用例图和场景描述----- ---- ) 。(.在分析模型内表示协调、顺序、事务处理以及控制其他对象的类是11

软件工程期末考试试卷

《软件工程》期末考试试卷 一、填空题(在括号内填写正确的答案,每空1分,共25分) 1.软件工程学的基本原则包括、、一致性、确定性等。 2.软件生存周期一般可分为、可行性研究、、设计、编码、、运行与维护阶段。 3.成本估计方法主要有、和算法模型估计三种类型。4.数据流图的基本符号包括、、、。5.JSD是一种典型的的分析设计方法。 6.详细设计的工具有、表格工具和。 7.IPO图由、处理和三个框组成。这个图的特点是能够直观的显示三者之间的关系。 8.面向对象技术是一整套关于如何看待和的关系,以什么观点来研究问题并进行分析求解,以及如何进行系统构造的软件方法学。面向对象方法是一种运用、、、、聚集、消息传送、多态性等概念来构造系统的软件开发方法。 9.分析已有的程序,寻求比源代码更高级的抽象表现形式,这就是软件的。10.程序测试是对编码阶段的语法错、和进行查找的编码执行活动。二、单项选择题(将一个正确的答案代码填入括号中,每小题2分, 共10分) 1.下列哪个阶段不属于软件生存期的三大阶段()。 A、计划阶段 B、开发阶段 C、编码阶段 D、维护阶段2.下列哪个图不是N-S图的构件()。 3.对于下列各图,有关描述中正确的是()。 A、数据A和B同时输入变成C B、数据A变换成B和C C、数据A或数据B(不能同时)输入,变换成C D、数据A变换成B和C 4.下列哪种方法不是度量效益的方法()。 A、货币的时间价值 B、算法模型估计 C、投资回收期 D、纯收入 5.下列描述错误的是()。 A、数据流图将各种信息流抽象成数据流的形式 B、数据流图不反映控制关系、调用关系 C、数据流图不反映处理逻辑的先后顺序 D、数据流图不反映数据的流向 X Y A、 WHILE M B B、 X Y C、 UNTIL N C D、 C B C C C

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

15、31重复 16. 34. 重复

18. 19.

33.

20. 请就以下需求建立用例图、类图 用时序图描述病人病情异常时系统的情况,其他情况从略 在医院的病房里,将病症监视器安置在每个病床,对病人进行监护。监视器将病人的病症信号(组合)实时地传送到中央监护系统进行分析处理。在中心值班室里,值班护士使用中央监护系统对病员的情况进行监控,监护系统实时地将病人的病症信号与标准的病诊信号进行比较分析,当病症出现异常时,系统会立即自动报警,并打印病情报告和更新病历。系统根据医生的要求随时打印病人的病情报告,系统还定期自动更新病历。

21.OOA模型有哪些元素组成? 22. 现在要对一个自动取款机(A TM)密码功能软件进行黑盒测试,该软件的规格说明如下: 插入ATM机有效银行卡,机器界面显示“请输入六位密码”;若密码正确机器显示“查询、取款等功能界面”;若密码错误显示“密码错误”;若密码错误三次机器吞卡;若插入非银行卡或消磁卡机器显示“无效卡,退出”。有效测试卡的密码是112233。 请用等价类和边界值方法设计测试该软件功能的全部测试用例。 25. 假设你的任务是对一个已有的软件做重大修改,而且只允许你从下述文档中选取两份: (a)程序的规格说明;(b)程序的详细设计结果(自然语言描述加上某种设计工具表示);(c)源程序清单(其中有适当数量的注解)。 你将选取哪两份文档?为什么这样选取?你打算怎样完成交给你的任务? 26. 什么是程序设计风格?为了具有良好的设计风格,应注意哪些方面的问题? 27. 软件测试的步骤是什么?这些测试与软件开发各阶段之间的关系? 28. 某商场在“五一”期间,顾客购物时收费有4种情况:普通顾客一次购物累计少于100元,按A类标准收费(不打折),一次购物累计多于或等于100元,按B类标准收费(打9折);会员顾客一次购物累计少于1000元,按C类标准收费(打8折),一次购物累计等于或多于1000元,按D类标准收费(打7折)。 按照路径覆盖法设计测试用例。

软件工程考试试卷

《软件工程》模拟试卷A 专业年级姓名得分 一、名词解释(每个2分,共10分) 1.软件危机 2.纯收入 3.模块 4.原型 5.BROOKS定律 二、填空题(每题2分,共20分) 1.————是计算机程序及其说明程序的各种文档。————是有关计算机程序功能、设计、编制、使用的文字或图形资料。 2.软件生存周期是指一个软件从提出开发要求开始直到该软件报废不止的整个时期。通常,软件生存周期包括问题定义、————、————、总体设计、详细设计、————、————、软件维护活动,可以将这些活动以适当方式分配到不同阶段去完成。 3.软件详细设计阶段采用的工具有――――――。 4.————的目的就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得去开发。 5.模块的耦合性分为四种类型:————、————、————、————。6.内聚性有七种类型,最强的是————,最弱的是————。 7.结构图的深度指结构图——————,结构图宽度指————————。8.集成测试采用的具体方法有--――――、―――――― 9.对于变换型的数据流图,按照软件设计思想,要将一个大型复杂的软件进行分解,要确定数据流图的――――、逻辑输入、逻辑输出。 10.软件编码阶段要善于积累编程的经验,使得编出的程序――――,易于――――,从而提高软件质量。 三、选择题(每题2分,共20分) 1.系统定义明确之后,应对系统的可行性进行研究。可行性研究应包括()。 A.软件环境可行性、技术可行性、经济可行性、社会可行性 B.经济可行性、技术可行性、操作可行性 C.经济可行性、社会可行性、系统可行性 D.经济可行性、实用性、社会可行性 2.通过()可以完成数据流图的细化。 A.结构分解B、功能分解C、数据分解D、系统分解3.模块(),则说明模块的独立性越强。 A.耦合越强B、扇入数越高C、耦合越弱D、扇入数越低

软件工程试题及答案

4. 面向对象的分析方法主要是建立三类模型,即( D )。 A) 系统模型、ER模型、应用模型B) 对象模型、动态模型、应用模型 C) E-R模型、对象模型、功能模型D) 对象模型、动态模型、功能模型 5. 在E-R模型中,包含以下基本成分( )。 A) 数据、对象、实体B) 控制、联系、对象C) 实体、联系、属性D) 实体、属性、操作 9.若有一个计算类型的程序,它的输入量只有一个X,其范围是[, ],现从输入的角度考虑一组测试用例:, , , .设计这组测试用例的方法是( c ) A.条件覆盖法B.等价分类法C.边界值分析法D.错误推测法 10、详细设计的基本任务是确定每个模块的( d )A.功能B.调用关系C.输入输出数据 D.算法 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 )A.模块化的根据B.逐步求精的根据C.抽象的根据D.信息隐藏和局部化的根据13.面向数据流的设计方法把( D )映射成软件结构。 A.数据流B.系统结构C.控制结构D.信息流 14.内聚程度最低的是( A.偶然)内聚A.偶然 B.过程 C.顺序 D.时间 15.确定测试计划是在( D )阶段制定的.A.总体设计 B.详细设计 C.编码 D.测试 16.需求分析的产品是( D )A.数据流程图案B.数据字典C.判定表D.需求规格说明书 17.数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是( C ) A.数据库设计B.数据通信C.数据定义D.数据维护 18.( D )引入了“风险驱动”的思想,适用于大规模的内部开发项目。 A.增量模型B.喷泉模型C.原型模型D.螺旋模型 (×)2、系统测试的主要方法是白盒法,主要进行功能测试、性能测试、安全性测试及可靠性等测试。 (×)4、软件需求分析的任务是建立软件模块结构图。 (√)5、尽可能使用高级语言编写程序(×)6、以结构化分析方法建立的系统模型就是数据流图。 (×)7、进行总体设计时加强模块间的联系。(×)8、编码时尽量多用全局变量. (√)9、用CASE环境或程序自动生成工具来自动生成一部分程序.(×)10、软件测试是要发现软件中的所有错误。 1. 软件生命期各阶段的任务是什么答:软件生命期分为7个阶段:1、问题定义:要解决的问题是什么 2、可行性研究:确定问题是否值得解,技术可行性、经济可行性、操作可行性 3、需求分析:系统必须做什么 4、总体设计:系统如何实现,包括系统设计和结构设计 5、详细设计:具体实现设计的系统 6、实现:编码和测试 7、运行维护:保证软件正常运行。2、软件重用的效益是什么 答:1、软件重用可以显着地改善软件的质量和可靠性。2、软件重用可以极大地提高软件开发的效率。 3、节省软件开发的成本,避免不必要的重复劳动和人力、财力的浪费。 3、自顶而下渐增测试与自底而上渐增测试各有何优、缺点答:①自顶而下渐增测试 优点:不需要测试驱动程序,能够在测试阶段的早期实现并验证系统的主要功能,而且能够尽早发现上层模块的接口错误。缺点:需要存根程序,底层错误发现较晚。 ②自底而上渐增测试优点与缺点和自顶而下渐增测试相反。 4 、提高可维护性的方法有哪些答:在软件工程的每一阶段都应该努力提高系统的可维护性,在每个阶段结束前的审查和复审中,应着重对可维护性进行复审。 在需求分析阶段的复审中,应对将来要扩充和修改的部分加以注明。在讨论软件可移植性问题时,要考虑可能要影响软件维护的系统界面。 在软件设计的复审中,因从便于修改、模块化和功能独立的目标出发,评价软件的结构和过程,还应对将来可能修改的部分预先做准备。 在软件代码复审中,应强调编码风格和内部说明这两个影响可维护性的因素。 在软件系统交付使用前的每一测试步骤中都应给出需要进行预防性维护部分的提示。 在完成每项维护工作后,都应对软件维护本身进行仔细认真的复审。 为了从根本上提高软件系统的可维护性,人们正试图通过直接维护软件规格说明来维护软件,同时也在大力发展软件重

相关文档