最新电大本科软件工程期末复习题最新.docx

上传人:b****1 文档编号:2244714 上传时间:2023-05-03 格式:DOCX 页数:27 大小:268.69KB
下载 相关 举报
最新电大本科软件工程期末复习题最新.docx_第1页
第1页 / 共27页
最新电大本科软件工程期末复习题最新.docx_第2页
第2页 / 共27页
最新电大本科软件工程期末复习题最新.docx_第3页
第3页 / 共27页
最新电大本科软件工程期末复习题最新.docx_第4页
第4页 / 共27页
最新电大本科软件工程期末复习题最新.docx_第5页
第5页 / 共27页
最新电大本科软件工程期末复习题最新.docx_第6页
第6页 / 共27页
最新电大本科软件工程期末复习题最新.docx_第7页
第7页 / 共27页
最新电大本科软件工程期末复习题最新.docx_第8页
第8页 / 共27页
最新电大本科软件工程期末复习题最新.docx_第9页
第9页 / 共27页
最新电大本科软件工程期末复习题最新.docx_第10页
第10页 / 共27页
最新电大本科软件工程期末复习题最新.docx_第11页
第11页 / 共27页
最新电大本科软件工程期末复习题最新.docx_第12页
第12页 / 共27页
最新电大本科软件工程期末复习题最新.docx_第13页
第13页 / 共27页
最新电大本科软件工程期末复习题最新.docx_第14页
第14页 / 共27页
最新电大本科软件工程期末复习题最新.docx_第15页
第15页 / 共27页
最新电大本科软件工程期末复习题最新.docx_第16页
第16页 / 共27页
最新电大本科软件工程期末复习题最新.docx_第17页
第17页 / 共27页
最新电大本科软件工程期末复习题最新.docx_第18页
第18页 / 共27页
最新电大本科软件工程期末复习题最新.docx_第19页
第19页 / 共27页
最新电大本科软件工程期末复习题最新.docx_第20页
第20页 / 共27页
亲,该文档总共27页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

最新电大本科软件工程期末复习题最新.docx

《最新电大本科软件工程期末复习题最新.docx》由会员分享,可在线阅读,更多相关《最新电大本科软件工程期末复习题最新.docx(27页珍藏版)》请在冰点文库上搜索。

最新电大本科软件工程期末复习题最新.docx

最新电大本科软件工程期末复习题最新

根本不知道□

当然,在竞争日益激烈的现代社会中,创业是件相当困难的事。

我们认为,在实行我们的创业计划之前,我们首先要了解竞争对手,吸取别人的经验教训,制订相应竞争的策略。

我相信只要我们的小店有自己独到的风格,价格优惠,服务热情周到,就一定能取得大多女孩的信任和喜爱。

3、你是否购买过DIY手工艺制品?

调研课题:

2、Google网站www。

people。

com。

cn

调研课题:

1、DIY手工艺市场状况分析

是□否□

年轻有活力是我们最大的本钱。

我们这个自己动手做的小店,就应该与时尚打交道,要有独特的新颖性,这正是我们年轻女孩的优势。

§8-2购物环境与消费行为2004年3月20日软件工程

一、选择题

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

2、(自律、善于沟通、具有一定的软件技能)是职业软件工程师的必要条件。

3、计算机病毒是指(一组自我复制和自动执行的具有破坏能力的代码)。

4、软件需求具有(D)。

A.主观性B.不确定性C.多变性D.以上全部

5、描述软件需求通常不用哪个工具(模块结构图)。

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

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

8、包含关系用于构造多个用例(共性的部分)。

9、如果说用例F被用例T扩展,意思是(F是一个一般用例,T是一个特殊用例)。

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

11、美国卡内基﹒梅隆大学制定的SW-CMM是(软件成熟度模型)。

12、螺旋模型是一种将(瀑布模型和增量模型)结合起来的软件开发模型。

13可行性研究的四大要素是(经济、技术、法律和社会环境)。

14、软件调研报告是在(需求分析之前)提交的时候。

15、系统流程图的主要作用(描述系统的物理模型).

16、PDL是一种(过程设计语言)语言。

17、结构化设计方法划分模块的原则是(低耦合,高内聚)。

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

19、角色可以有四种类型:

系统的使用者,硬件设备,外部系统和(时间)。

20、功能模型用于表达系统的需求,为软件的进一步分析和设计打下基础。

在面向对象方法中,由(用例图和场景描述)实现。

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

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

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

24、业务需求描述的是(软件的目标、规模和范围)。

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

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

27、信息隐藏的核心内容是(一个模块的内部信息不允许其他模块直接访问)。

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

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

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

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

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

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

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

34、在设计测试用例时,应该包括(上面所有情况)测试用例。

35、(边值分析和等价类划分)属于功能测试方法。

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

(30%,70%)

37、软件项目管理的内容不包括(技术和算法)。

38、通俗的说,软件项目管理中常说的基线是(通过正式复审的文档)。

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

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

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

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

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

44、测试用例是一组(测试用的输入数据以及对应的预期结果)。

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

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

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

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

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

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

50、瀑布模型存在的问题是(缺乏灵活性)。

51、(开发一个简单的问题解决方案)不是分析建模的目的。

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

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

54、从狭义上讲,软件测试是(为发现错误而执行程序)的过程。

55、在设计黑盒测试用例时,主要研究(需求规格说明)。

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

57、一般维护程序代码的策略(根据维护申请读源程序,并修改)。

58、Gantt图直观简明、易学易用,但它不能(直接反应任务间的依赖关系和关键路径)。

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

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

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

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

63、下面哪个选项不是软件工程研究的内容(精通一门编程语言)。

64可行性研究的主要任务是(进行一次简要的需求分析)。

65、用户需求描述的是(用户使用该软件要完成的任务)。

66、数据流程图的主要作用是(描绘系统的逻辑模型)。

67、软件设计的目标是(在最短的时间内,生产出可靠性、可维护性俱佳的软件方案。

)。

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

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

(动作的主体/执行动作)

70、UML是一种(面向对象建模语言)语言。

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

A.规范化B.系统化C.可度量D.以上全部

72、软件开发活动的顺序应该是(问题定义、可行性研究、需求分析、设计、编码和测试。

)。

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

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

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

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

(减小/增加)

77、反映模块独立性的指标是(内聚和耦合)。

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

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

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

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

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

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

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

84、测试最早的开始时间是(从需求分析阶段开始)。

85、从测试对象的粒度上划分测试为(单元测试、集成测试、系统测试和验收测试)。

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

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

88所有程序设计语言的基本成分都可归纳为:

数据成分、(运算成分)、控制成分和传输成分。

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

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

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

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

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

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

95、软件测试的目标是设计优秀的测试用例,(以最小的代价、在最短的时间内尽可能多地发现软件中的错误)。

96、(程序员应该仔细测试自己编写的程序代码)不符合软件测试原则。

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

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

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

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

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

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

2.原型化方法是用户和设计者之间的一种交互手段,适用于(需求不确定性高的)系统。

3.IEEE是(国际电气和电子工程师协会)的简称。

4.可行性研究的主要目的是(确定系统是否值得开发)。

5.(功能需求)定义了软件开发人员必须实现的软件功能。

6.数据流程图中的处理不能表示(数据组成)。

7.随着模块规模的——,模块的开发成本——,但是模块之间的接口变得复杂起来,使得模块的集成成本增加。

(减小,减小)

8.详细设计与概要设计衔接的图形工具是(SC图)。

9.面向过程的方法最关心的是,而过程实施的是作为过程参数传递的。

(过程/对象)

11.目前面向对象分析有许多方法,大多数方法可以归结为建立(功能模型)、对象模型、动态模型。

12.构建类图是(对象模型)的任务。

13.首先用(配置图)描述系统的物理构架,然后将需求分析阶段捕获的系统元素分配到这些物理节点上。

14.类的属性结构要坚持简单的原则,尽可能不使用复杂的(数据结构)。

15.现在人们更强调程序的(可读性)。

16.程序的三种基本控制结构,包括顺序结构、(条件/判断结构)和循环结构。

17.一般性的软件其测试工作量大约占整个开发工作量的(40%)。

18.下面哪些测试方法属于黑盒测试?

(等价类划分)

19.软件特性中,相互矛盾的是(效率与通用性)。

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

二、简答题

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

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

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

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

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

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

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

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

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

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

1)功能模型:

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

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

2)对象模型:

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

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

3)动态模型:

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

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

……

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=-1b=0c=-1

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

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

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

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

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

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

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

intmain()

{

inta[10];

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

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

intmax=a[0],min=a[1];

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

{

max=(max>a[j]?

max:

a[j]);

min=(min

min:

a[j]);

}

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

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

printf("\n");

return0;

}

intmain()

{

inta[10];

//读入10个数据

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

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

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

intmax=a[0],min=a[0];

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

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

{

max=(max>a[j]?

max:

a[j]);

min=(min

min:

a[j]);

}

//输出结果

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

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

return0;

}

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

参考答案:

条件:

a>=5b<0

a>=5b≮0

c<1

1

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

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

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

对象模型:

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

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

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

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

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

下面是项目中常用的处理说明模板:

系统名称:

作者:

处理编号:

日期:

输入参数说明:

输出参数说明:

处理说明:

局部数据元素:

备注:

10、什么是耦合?

什么是内聚?

在软件设计中应该保持模块的独立性原则。

反映模块独立性的有两个标准:

内聚和耦合。

内聚衡量一个模块内部各个元素彼此结合的紧密程度;耦合衡量模块之间彼此依赖的程度。

软件设计时追求高内聚、低耦合。

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

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

见图:

其中过程层定义了一组关键过程域,目的是保证软件开发过程的规范性和可控性。

方法层提供了软件开发的各种方法,包括如何进行软件需求分析和设计,如何实现设计,如何测试和维护等方法。

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

intmain()

{

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

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

ifa>5x=10elsex=1;

ifb>10y=20elsey=2;

ifc>15z=30elsez=3;

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

}

参考答案:

条件:

a>5

a<=5

b>10

b<=10

c>15

c<=15

判定测试用例(不唯一):

a=6b=11c=16;a=5b=10c=15

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

在需求分析的同时,以比较小的代价快速建立一个能够反映用户主要需求的原型系统。

用户在原型系统上可以进行基本操作,并且提出改进意见,分析人员根据用户的意见完善原型,然后再由用户评价,提出建议,如此往复,直到开发的原型系统满足了用户的需求为止。

基于快速原型化模型的开发过程基本上是线性的,从创建系统原型到系统运行,期间没有反馈环。

这是由于开发人员是在原型的基础上进行系统分析和设计,而原型已经通过了用户和开发组的审查,在设计阶段由于有原型作设计参考,所以设计的结果正确率比较高。

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

程序段A

程序段B

……

{

T=0;

if(A>=1)&&(B>=2)T=T+1;

elseT=T+2;

if(X>=90)&&(Y>=75)T=T+3;

elseT=T+4;

}

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

……

……

{

T=0;

if(A>=1)&&(B>=2)T=T+1;

elseT=T+2;

if(X>=90)&&(Y<75)T=T+3;

elseT=T+4;

}

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

……

条件组合:

A>=1B>=2;

A>=1B>2

A<1B>=2

A<1B<2

X>=90Y>=75

X>=90Y<75

X<90Y>=75

X<90Y<75

由此获得测试用例:

A=1B=2;A=1B=1;A=0B=2;A=0B=1;X=90Y=75;X=90Y=1;X=1Y=75;X=1Y=1;其中X=90Y=75能够发现错误。

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

包含关系用于构造多个用例共同的活动。

例如,在ATM系统中,取钱、查询、更改密码等功能都需要验证用户密码。

这种情况下应该将密码验证功能独立出来,便于复用、减少冗余。

一个用例扩展另一个用例的功能,例如,在图书馆信息管理系统中,读者还书时,系统检查所还图书是否有预订记录,如果有则执行“通知”用例。

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

所谓抽象就是将事务的相似方面集中和概括起来,暂时忽略它们之间的差异。

或者说,抽象就是抽出事务的本质特性而暂时不考虑它们的细节

17、孩子阅读疲倦时,一定要休息。

如果不疲倦,但是对所阅读的内容不感兴趣,就跳到下一章;如果不疲倦,对内容有兴趣,理解无困难,则继续阅读;如果不疲倦,对内容有兴趣,但理解有困难,则应该重读。

请对上面的描述设计判定表。

参考答案:

疲倦

Y

Y

Y

Y

N

N

N

N

感兴趣

Y

Y

N

N

Y

Y

N

N

糊涂

Y

N

Y

N

Y

N

Y

N

重读

继续

跳到一下章

休息

化简为:

疲倦

Y

N

N

N

感兴趣

Y

Y

N

糊涂

Y

N

重读

继续

跳到一下章

休息

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

(1)描述的重点不同:

活动图描述的是从活动到活动的控制流;状态图描述的是对象的状态及状态之间的转移。

(2)使用的场合不同:

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

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

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

分析阶段的主要模型是数据流程图,设计阶段的主要模型是软件模块结构图,数据流程图和软件模块结构图之间需要进行转换。

不同的人转换出的模块图可能不同,有很大的随意性。

(2)需求分析的细化程度没有标准,只能凭借分析人员的经验自己把握;需求分析的过程是在一种瀑布形式,当需求变更时,功能变化就会导致软件模块结构发生变化,造成了软件结构不稳定。

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

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

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

判定表是结构花设计的工具,用于描述多重条件的处理。

分为4各部分:

条件列表、条件组合、操作列表、特定条件下的操作组合。

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

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

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

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

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

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

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

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

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

结构化程序设计的特征如下:

程序模块只有一个入口和一个出口、程序中只包含顺序、条件和循环三种控制结构。

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

业务需求是用户高层领导机构决定的,它确定软件的目标、规模和范围。

业务需

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

当前位置:首页 > 初中教育 > 语文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2