软件工程期末复习资料.docx

上传人:b****4 文档编号:5090362 上传时间:2022-12-13 格式:DOCX 页数:21 大小:122.33KB
下载 相关 举报
软件工程期末复习资料.docx_第1页
第1页 / 共21页
软件工程期末复习资料.docx_第2页
第2页 / 共21页
软件工程期末复习资料.docx_第3页
第3页 / 共21页
软件工程期末复习资料.docx_第4页
第4页 / 共21页
软件工程期末复习资料.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

软件工程期末复习资料.docx

《软件工程期末复习资料.docx》由会员分享,可在线阅读,更多相关《软件工程期末复习资料.docx(21页珍藏版)》请在冰豆网上搜索。

软件工程期末复习资料.docx

软件工程期末复习资料

软件工程复习资料

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

1.软件工程学科出现的主要原因是()。

A.计算机的发展

B.其他工程科学的影响

C.软件危机的出现

D.程序设计方法学的影响

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

A.自律、善于沟通、具有一定的软件技能B.编程速度快

C.熟悉众多的软件环境D.语言天赋

3.在E-R模型中,包含以下基本成分()。

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.类有3种类型,即()。

A.边界类、实体类、控制类B.实体类、控制类、界面类

C.控制类、实体类、虚类D.界面类、控制类、公共类

10.()是一般化类与特殊化类之间的一种关联形式,设计时应该适当使用这种耦合。

A.消息连接B.参数传递C.方法重写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.模块扇出小于5B.模块扇入小于5C.低耦合,高内聚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.类B.数据结构C.函数D.过程

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

A.为发现错误而执行程序B.为了验证程序正确C.用不同的数据验证程序正确性D.区分程序员水平

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

A.概要设计说明书B.详细设计说明C.项目开发计划D.需求规格说明

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

A、黑盒测试B、白盒测试C、压力测试D、外观测试

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

A.从需求开始重新开发B.根据维护申请读源程序,并修改

C.找一个新的模块替换D.不用读源程序,从新编写代码

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

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

B.反应任务的分解情况

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

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

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

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

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

A.判断结构B.说明结构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.算法说明B.修改程序C.优先级D.环境要求

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

A.估算项目的进度B.分配工作量C.计划资源使用D.以上全部

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

A.性能比B.可扩充性C.可读性D.可移植性

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

A.X0==X1B.X1-X0<εC.|X0-X1|<εD.X0=X1

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

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

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

A.确定系统做什么B.确定性能C.确定功能D.进行一次简要的需求分析

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

A.用户使用该软件要完成的任务B.业务需求C.功能需求D.软件目标、规模和范围

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

A.描述模块组成B.说明用户数据结构C.描述软件功能D.建造系统的逻辑模型

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

A.功能需求B.用户需求C.用户的具体业务流程D.软件的目标、规模和范围

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

A.3B.5C.4D.7

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

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

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

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

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

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

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

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

A.参数B.主体C.过程D.数据结构

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

A.组件视图B.逻辑视图C.用例视图D.对象视图

50、用()模型描述系统组织结构。

A.组织B.CMMC.数据D.静态

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

A.开发满足用户需求的软件B.研究算法C.及时交付软件D.生产无故障软件

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

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

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

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

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

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

A.5202B.4500C.5100D.4712

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

A.系统流程图B.数据流程图C.程序流程图D.E-R图

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

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

C.软件可行性研究的依据D.软件设计的依据

56.进行需求分析有的多种描述工具,但不包括()。

A.数据流图B.判定表C.PAD图D.数据词典

57.反映模块独立性的指标是()。

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

58.两个模块都访问一个全局简单变量而不是同一全局数据结构,则这两个模块属于()。

A.数据耦合B.外部耦合C.公共耦合D.内容耦合

59.下列哪个不是UML的视图()

A.逻辑视图B.行为视图C.组件视图D.并发视图

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

A.数据B.静态C.动态D.用例

61、对象模型描述现实世界中实体的对象以及它们之间的关系,表示目标系统的静态数据结构。

在面向对象方法中,由()实现。

A.顺序图B.类图C.状态图D.组件图

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

A.消息机制B.参数C.方法D.公共数据区

63.动态模型描述系统的动态结构和对象之间的交互,表示瞬时的、行为化的系统“控制”特性。

面向对象方法中,常用()实现。

A.状态图B.交互图C.活动图D.以上全部

64.不适合作为数据处理与数据库应用的语言是()

A.SQLB.CobolC.4GLD.Lisp

65.软件工程中,只根据程序的功能说明而不关心程序内部逻辑的测试方法,称为()测试。

A.白盒法B.灰盒法C.黑盒法D.综合法

66.若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0,1.0],现从输入的角度考虑一组测试用例:

-1.001,-1.0,1.0,1.001。

设计这组测试用例的方法是()。

A.条件覆盖法B.等价分类法C.边界值分析法D.错误推测法

67.即使软件能顺利运行,但用户往往会提出增加新功能或改进已有功能的建议,为满足这一类要求而进行的活动称为()。

A.完善性维护B.预防性维护C.适应性维护D.代码重构

68.可维护性的特性中,相互矛盾的是()。

A.可理解性与可测试性B.效率与可修改性

C.可修改性与可理解性D.可理解性与可读性

69.不属于软件项目管理的是()。

A.软件销售利润B.项目风险评估C.质量监控D.开发机构能力评估

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

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

71、动态模型描述系统的动态结构和对象之间的交互,表示瞬时的、行为化的系统“控制”特性。

面向对象方法中,常用()实现。

A.状态图B.交互图C.活动图D.以上全部

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

A.清晰的B.模糊的C.非线性的D.确定的

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

A.操作B.参数C.算法D.控制

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

A.从详细设计阶段开始

B.从编码阶段开始

C.从需求分析阶段开始

D.以上都对

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

A.单元测试、集成测试

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

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

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

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

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

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

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

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

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

A.运行环境变化B.需求变化C.系统有错D.以上全部

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

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

79.为了适应软硬件环境变化而修改软件的过程是()。

A.校正性维护B.完善性维护C.适应性维护D.预防性维护

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

A.管理的基本思路B.一种软件开发的基本策略

C.基本的技术路线D.通过正式复审的文档

二、简答题

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

2、什么是软件生命周期?

他分为哪几个阶段?

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

……

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

……

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

5.为了提高软件的可维护性,在软件开发过程的各个阶段怎样充分考虑软件的可维护性因素。

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

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

8、简述模块独立性,内聚与耦合。

9、简述在项目开发时选择程序设计语言的主要考虑的因素。

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

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

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

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

intmain()

{

inta,b,c,x,y,z,t;

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

ifa>5&&t<1x=10elsex=1;

ifb>10y=20elsey=2;

ifc>15z=30elsez=3;

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

}

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

14、等价分类法的基本思想是什么?

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

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

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

18.衡量模块独立性的两个标准是什么?

它们各表示什么含义?

19.活动图与状态图的区别?

20.设计下列伪程序的判定覆盖测试用例。

if(a>10)then

x=10

else

x=1

endif

if(b>10)and(t<3)then

y=20

else

y=2

endif

if(c>15)then

z=30

else

z=3

endif

 

三、应用题

1.学校教师工资管理系统的需求描述如下:

教师每月末将本月的工作量输入到系统中,学院负责人对教师输入的工作量进行审核,财务部门对审核后的工作量计算本月工资,本月工资=基本工资+各种补贴+工作量奖金-税收-保险一公积金金。

基本工资、各种补贴、保险、公积金信息由人事处负责输入和维护,教师可以查询月工资明细。

银行系统每月从本系统读入每位教师的实发工资,并向每位教师的银行卡帐户打入月工资。

教师可以查询自己银行卡的金额。

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

 

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

(1)基本信息管理:

教务管理人员输入或修改学期教学计划、学生名单和教师名单;

(2)学生选课:

学生根据课程和教师信息进行选课;

(3)分配任课教师:

教务管理人员为符合开课条件的课程分配教师和时间;

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

(5)成绩管理:

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

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

 

3.一个简化的养老院软件需求描述如下:

老人来到养老院,接待人员将老人的基本信息录入到系统中,管理员读取老人信息,进行护理级别的评估,根据评估结果分配床位、确定护理方案,床位的分配信息存入床位分配数据表,每位老人的护理方案也要保存到数据库表中。

财务人员根据收费标准、床位分配信息、护理方案和老人的日常护理记录计算应收费用,老人的家属可以查询应收费信息和老人的日常护理信息。

护士根据老人基本信息、护理方案对老人进行日常护理,并向系统录入每日的护理信息。

请你根据以上的描述,画出数据流程图。

4.学校开发的网上作业管理信息系统需求如下:

教师使用本系统将作业题输入到数据库中,并且针对不同的学生布置不同的作业。

学生在网上查看教师给自己布置的作业,并完成作业,完成的作业放在学生作业表中。

教师在网上批阅作业,并可以统计作业完成情况。

学生可以查看教师批阅的作业,修改作业中的错误,教师仍然可以查看学生修改作业的情况,并给予批阅。

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

 

软件工程复习资料答案

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

1.C2.A3.C4.B5.D6.D7.A8.D9.B10.D11.C12.D13.A14.D15.A16.D17.C18.B19.D20.C21.D22.D23.A24.D25.D26.B27.B28.A29.D30.A31.C32.D33.D34.A35.B36.B37.D38.C39.C40.D41.C42.A43.B44.D45.C46.A47.C48.A49.C50.D51.D52.A53.A54.A55.C56.C57.D58.B59.B60.D61.B62.A63.D64.D65.C66.C67.A68.B69.A70.C71.D72.B73.A74.C75.C76.B77.D78.C79.C80.D

 

二、简答题

1、答案

1)软件是一种逻辑实体,具有抽象性,无法看到软件本身的形态,必须通过观察、分析、思考和判断才能了解它的功能和性能。

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

计算机硬件和支撑环境不断升级,为了适应运行环境的变化,软件也需要不断维护,并且维护的成本通常比开发成本高许多。

3)软件生产至今尚未摆脱手工方式,软件开发的手工行为造就了一个致命的问题,就是为应用“量身订做”软件。

长期以来,软件给人的感觉是修改几条指令很简单,客户总是强调软件要适应自己的业务需求。

因此,软件产品大多是为客户“订做”的,通用性差。

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

5)软件是与文学艺术作品相似的精神作品,与体力劳动相比,精神活动过程的特点是“不可见性”,这大大增加了组织管理上的困难。

评分标准:

学生只要写出三个特点就给满分,少一个减2分。

2、答案

软件生命周期是一个软件从提出开发要求到废弃为止的整个时期。

软件生命周期可分为8个阶段:

问题定义、可行性分析、需求分析、概要设计、详细设计、编码、系统测试和运行维护

评分标准:

每个问题给3分。

3、答案

a>=4b<0

a>=4b>=0

a<4b<0

a<4b>=0

c>3

c<=3

c<1

c>=1

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

a=4b=-1c=3

a=4b=0c=4

a=-1b=-1c=0

a=2b=0c=2

评分标准:

列出a,b四组数据各给1分,考虑c数据给2分。

4、答案

对象模型:

表示静态的、结构化的系统“数据”性质。

描述现实世界中实体的对象以及它们之间的关系,表示目标系统的静态数据结构。

在面向对象方法中,类图是构建对象模型的核心工具。

评分标准:

6分。

5、答:

(1)在需求分析阶段应该明确维护的范围和责任,检查每条需求,分析维护时这条需求可能需要的支持,对于那些可能发生变化的需求要考虑系统的应变能力。

(2)在设计阶段应该做一些表更实验,检查系统的可维护性、灵活性和可移植性,设计时应该将今后可能变更的内容与其他部分分离出来,并且遵循高内聚、低耦合的原则。

(3)编码阶段要保持源程序与文档的一致性、源程序的可理解性和规范性。

(4)在测试阶段测试人员应该按照需求文档和设计文档测试软件的有效性和可用性,收集出错信息并进行分类统计,为今后的维护打下基础。

评分标准:

每条1.5分。

6、答案

1)功能模型:

表达系统的详细需求,为软件的进一步分析和设计打下基础。

在面向对象方法中,由用例图和场景描述组成。

2)对象模型:

表示静态的、结构化的系统“数据”性质。

描述现实世界中实体的对象以及它们之间的关系,表示目标系统的静态数据结构。

3)动态模型:

描述系统的动态结构和对象之间的交互,表示瞬时的、行为化的系统的“控制”特性。

评分标准:

功能模型2分,对象模型2分;动态模型2分。

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

答:

(1)软件工程强调规范化和文档化。

规范化的目的是使众多的开发者遵守相同的规范,使软件生产摆脱个人生产方式,进入标准化、工程化的生产方式。

(2)文档化是将软件的设计思想、设计过程和实现过程完整地记录下来,以便于后人的使用和维护,在开发过程中各类相关人员借助于文档进行交流和沟通。

另外,在开发过程中产生的各类文档使得软件的生产过程由不可见变为可见,便于管理者对软件生产进度和开发过程进行管理。

在用户最终验收时可以通过对提交的文档进行技术审查和管理审查,保证软件的质量。

评分标准:

每条3分

8.简述模块独立性,内聚与耦合。

答:

模块独立性,是指软件系统中每个模块只涉及软件要求的具体的子功能,而和软件系统中其它的模块的接口是简单的。

一般采用两个准则度量模块独立性。

即模块间耦合和模块内聚。

耦合是模块之间的互相连接的紧密程度的度量。

内聚是模块功能强度(一个模块内部各个元素彼此结合的紧密程度)的度量。

模块独立性比较强的模块应是高内聚低耦合的模块。

评分标准:

正确说明模块独立性(2分);正确说明内聚概念(2分);正确说明耦合概念(2分)

9.简述在项目开发时选择程序设计语言的主要考虑的因素。

答:

●编程人员的水平和编程经历;

●待开发的软件类型;

●算法和计算复杂性;

●数据结构的复杂性;

●软件的开发成本和时间要求;

●软件可移植性要求;

●可用的软件工具。

评分标准:

答对其中任意六项,每项1分。

10、答案

条件:

a>=5b<0

a>=5b≮0

c<1

1

符合判定覆盖的测试用例(不唯一):

a=5,b=-1,c=4;a=5,b=5,c=0;

评分标准:

如果只列出条件给3分;

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

当前位置:首页 > 求职职场 > 简历

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

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