软件工程考试全.docx

上传人:b****4 文档编号:4200654 上传时间:2022-11-28 格式:DOCX 页数:23 大小:204.30KB
下载 相关 举报
软件工程考试全.docx_第1页
第1页 / 共23页
软件工程考试全.docx_第2页
第2页 / 共23页
软件工程考试全.docx_第3页
第3页 / 共23页
软件工程考试全.docx_第4页
第4页 / 共23页
软件工程考试全.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

软件工程考试全.docx

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

软件工程考试全.docx

软件工程考试全

填空题:

1、可行性研究可以从技术可行性、经济可行性、社会可行性三方面进行论证。

2、可行性研究阶段可能形成的两个文档是可行性研究报告和项目开发计划。

3、经济可行性一般考虑的问题包括:

成本和效益。

4、结构化设计以数据流图为基础,按一定的步骤映射成软件结构。

5数据流图和数据字典共同构成了系统的逻辑模型,是需求规格说明书的主要组成部分。

6、软件结构中各模块间相互联系的密切程度称为耦合

7、模块的扇出指一个模块的直接下属模块的个数,扇入指一个模块的直接上层模块的个数。

8、面向数据流的设计是以需求分析阶段产生的数据流图为基础,按照一定的步骤将数据流图映射成软件结构。

因此又称结构化设计|SD

9、衡量模块独立性的两个定性的度量指标是内聚性和耦合性

10、信息隐蔽是指在设计和确定模块时,使得一个模块内包含的信息(过程或数据)对于不需要这些信息的其它模块来说,是不能访问的

11、人机界面设计是接口设计的一个重要组成部分。

12、系统响应时间有两个重要的属性:

长度与易变性

13详细设计是软件设计的第二个阶段,主要确定每个模块的具体执行过程,故也成为过程设计

14、详细设计的目标不仅是逻辑上的正确的实现每个的模块的功能,还应使设计出的处理工程清晰易懂。

15、PAD图是一种从左到右展开的二维树形结构,PAD图的控制流程是自上而下、从左向右顺序地执行。

16、PDL具有严格的关键字外部语法,又有灵活的表示实际操作和条件内部语法

17、软件测试方法一般分为两大类:

白盒测试和黑盒测试。

18、集成测试可以采用的具体方法是非渐增式测试和渐增式测试。

19、测试用例由输入数据和预期的输出两部分组成

第一章软件工程学概述

1、软件就是程序,编写软件就是编写程序。

2、瀑布模型的最大优点是将软件开发的各个阶段划分得十分清晰。

3、传统开发方法的工作模型就是螺旋模型模型。

4、面向对象的开发方法包括面向对象的分析、面向对象的设计和面向对象的程序设计。

5、软件危机的主要表现是软件的需求量迅速增加,软件价格上升。

6、软件工具的作用是为了延长软件产品的寿命。

7、软件过程应该以软件设计为中心,关键是编写程序。

8、喷泉模型中对象概念的引入,表达分析、设计、实现等活动只用对象类和关系,从而可以较为容易地实现活动的迭代和无间隙,使其开发自然地包括复用。

1、软件的主要特性是(ABC)

A.无形B.高成本C.包括程序和文档D.可独立构成计算机系统

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

A.软件投机B.软件危机C.软件工程D.软件产生

3、软件工程学是应用科学理论和工程上的技术指导软件开发的学科,其目的是(B)

A.引入新技术提高空间利用率B.用较少的投资获得高质量的软件

C.缩短研制周期扩大软件功能D.硬软件结合使系统面向应用

4、软件工程三要素是(B)

A.技术、方法和工具B.方法、工具和过程C.继承、对象和类D.过程、模型、方法

5、使用结构化分析方法时,采用的基本手段是(A)

A.分解和抽象B.分解和综合C.归纳与推导D.试探与回溯

6、包含风险分析的软件工程模型是(A)

A.螺旋模型B.瀑布模型C.增量模型D.喷泉模型

7、软件危机的主要表现是(BD)

A.软件功能太多B.软件产品的质量低劣C.软件开发人员明显不足D.软件生产率低下

8、下列哪些是软件过程模型(ABC)

A.螺旋模型B.循环模型C.瀑布模型D.专家模型

9、软件工程的目标有(ABCD)

A.易于维护B.低的开发成本C.高性能D.短的开发期

10、软件工程定义是(A)

A.应用科学的方法和工程化的方法管理和指导软件开发B.克服软件危机

C.作好软件开发的培训工作D.以较低的成本开发出高质量的软件

11、瀑布模型把软件生存周期划分为软件定义、软件开发和(C)三个阶段,而每一阶段又可细分为若干个更小的阶段。

A.详细设计B.可行性分析C.运行及维护D.测试与排错

12、划分软件生存周期的阶段时所应遵循的基本原则是(B)

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

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

第二章可行性研究

13、可行性分析研究的目的是(B)。

A.争取项目B.项目值得开发与否C.开发项目D.规划项目

14、制定软件项目开发计划属于软件开发周期的第(B)阶段。

A.1B.2C.3D.4

15、下列不属于成本效益的度量指标(C)。

A.货币的时间价值B.投资回收期C.性质因素D.纯收入

16、技术可行性要解决(D)

A.存在侵权否B.成本-效益问题C.运行方式可行D.技术风险问题

17、数据流图是用于软件需求分析的工具,其包括下列哪些元素(ABCD)

A.数据流B.处理(加工)C.数据存储D.外部实体(源)

18、可行性研究要进行一次(C)需求分析。

A.详细的B.全面的C.简化的、压缩的D.彻底的

19、在软件工程项目中,不随参与人数的增加而使软件的生产率增加的主要问题是(D)。

A.工作阶段的等待时间B.生产原形的复杂性

C.参与人员所需的工作站数D.参与人员之间的通信困难

20、经济可行性研究的范围包括(C)

A.资源有效性B.管理制度C.效益分析D.开发风险

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

A.技术可行性B.经济可行性C.社会可行性D.法律可行性

22、制定软件计划的目的在于尽早对欲开发的软件进行合理估计,软件计划的任务是(D)。

A.组织与管理B.分析与估算C.设计与测试D.规划与调整

第三章需求分析

9、需求分析的主要方法有结构化设计(SD)法、面向对象的需求分析(OOA)法及输入/处理/输出图(IPO)法等。

10、需求分析是发现、求精、建模、规格说明和复审的过程。

11、分层的DFD图可以用于可行性分析阶段,描述系统的物理结构。

12、在需求分析阶段,可以用数据流图来建立系统的功能模型,用E-R图来建立系统的数据模型,用状态图来建立系统的行为模型。

13、在需求分析阶段可以使用IPO图简略的描述系统的主要算法。

14、warnier图采用树形结构描述信息,它还能表示数据逻辑组织。

15、加工说明是对系统流程图中的加工进行说明。

16、在结构化分析(SA)方法是面向数据流,建立在数据封闭原则上的需求分析方法真

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

18、软件需求规格说明书的内容不应包括对算法的详细过程的描述真

23、软件需求分析阶段的工作,可以分为以下4个方面:

对问题的识别、分析与综合、编写需求分析文档以及(C)

A.总结B.阶段性报告C.需求分析评审D.以上答案都不正确

24、SA法的主要描述手段有(B)

A.系统流程图和模块图B.DFD图、数据词典、加工说明

C.软件结构图、加工说明D.功能结构图、加工说明

25、在结构化分析方法中,与数据流图配合使用的是(C)。

A.网络图B.实体联系图C.数据字典D.程序流程图

26、初步用户手册在(B)阶段编写

A.可行性研究B.需求分析C.软件概要设计D.软件详细设计

27、需求分析阶段最重要的技术文档之一是(C)

A.项目开发计划B.设计说明书C.需求规格说明书D.可行性分析报告

28、需求分析的主要目的是(BC)。

A.系统开发的具体方案B.进一步确定用户的需求

C.解决系统是“做什么的问题”D.解决系统是“如何做的问题”

29、数据字典不包括的条目是(C)

A.数据项B.数据流C.数据类型D.数据加工

30、在结构化分析(SA)方法的基本思想是(C)

A.自底向上逐步抽象B.自底向上逐步分解C.自顶向下逐步分解D.自顶向下逐步抽象

31、需求分析的主要方法有(CD)

A.形式化分析方法B.PAD图描述C.结构化分析(SA)方法D.面向对象分析(OOA)法

32、画DFD图的主要目的是(AD)

A.作为需求分析阶段用户与开发者之间交流信息的工具B.对系统的数据结构进行描述

C.对目标系统的层次结构进行描述D.作为分析的工具

33、数据字典是数据流图中所有元素的定义的集合,一般由以下四类条目组成。

(C)

A.数据说明条目、控制流条目、加工条目、数据存储条目

B.数据流条目、数据项条目、文件条目、加工条目

C.数据源条目、数据流条目、数据加工(处理)条目、数据文件条目

D.数据流条目、数据文件条目、数据池条目、加工条目

34、在结构化分析方法中,用以表达系统内数据的运动情况的工具有(A)

A.数据流图B.数据词典C.结构化英语D.判定表与判定树

35、E-R图是描述实体关系的工具。

下列元素中,哪些是其基本元素?

(AC)

A.联系B.外部实体C.属性D.存储

36、软件需求分析阶段建立原型的主要目的是(A)。

A.确定系统的功能和性能要求B.确定系统的运行要求

C.确定系统是否满足用户需要D.确定系统是否满足开发人员需要

37、应该从哪些方面来验证软件需求的正确性?

(ABCD)

A.一致性B.完整性C.现实性D.有效性

第五章总体设计

19、软件设计是把软件需求转换成软件表示的过程,包括概要(总体)设计和详细设计两个阶段。

20、结构化设计(SD)方法就是基于数据流的设计方法。

21、模块化可以降低软件的复杂度和工作量,所以应该将模块分得越小越好。

22、信息隐蔽原则有利于提高模块的耦合性。

23、抽象使得设计者能够说明过程和数据,同时却忽略了底层细节。

求精则帮助设计者在设计过程中逐步揭示出底层细节。

38、属于软件设计的基本原理是(D)。

A.数据流分析设计B.变换流分析设计C.事务流分析设计D.模块化

39、结构图中,不是其主要成分的是(C)

A.模块B.模块间传递的数据C.模块内部数据D.模块间的控制关系

40、好的软件结构应该是(B)。

A.高内聚、高耦合B.低耦合、高内聚C.高耦合、低内聚D.低耦合、低内聚

41、一组语句在程序中多次出现,为了节省内存空间,把这些语句放在一个模块中,该模块的内聚度是(C)的。

A.一致性B.瞬时性C.偶然性D.通信性

42、一个模块把数值作为参数传递给另一个模块,这种耦合方式称为(D)。

A.公共耦合B.内容耦合C.控制耦合D.数据耦合

43、最高程度也是最差的耦合是(B)

A.公共耦合B.内容耦合C.控制耦合D.数据耦合

44、内聚是对模块功能强度的度量,内聚性最强的是(D)。

A.逻辑内聚B.顺序内聚C.偶然内聚D.功能内聚

45、在面向数据流的软件设计方法中,一般把数据流分为(A)。

A.变换流和事务流B.变换流和控制流C.事务流和控制流D.数据流和控制流

46、(D)着重反映的是模块间的隶属关系,即模块间的调用关系和层次关系。

A.程序流程图B.数据流图C.E-R图D.软件结构图

47、软件设计一般将用图形工具,下列(ACD)可用作设计的图形工具。

A.结构图B.实体联系图C.IPO图D.层次图

48、(D)是数据说明、可执行语句等程序对象的集合,它是单独命名的而且可通过名字访问。

A.模块化B.抽象C.精化D.模块

49、面向数据流的设计方法把(A)映射成软件结构

A.数据流B.系统结构C.控制结构D.信息流

第六章详细设计

50、软件开发的生命周期方法中,对模块的具体功能进行描述得是(C)。

A.需求分析B.概要设计C.详细设计D.编码设计

51、详细设计的结果基本决定了最终程序的(C)

A.代码的规模B.运行速度C.质量D.可维护性

52、软件详细设计主要采用的方法是(A)。

A.结构化程序设计B.模型设计C.结构化设计D.流程图设计

53、结构化程序设计主要强调的是(D)

A.程序的规模B.程序的效率C.程序设计语言的先进性D.程序易读性

54、结构化程序设计的一种基本方法是(D)。

A.筛选法B.递归法C.迭代法D.逐步求精法

55、结构化方法是一种(D)的软件开发方法。

A.面向用户B.面向数据结构C.面向对象D.面向数据流

56、PDL是下列的什么语言(C)

A.高级程序设计语言B.中级程序设计语言C.伪码D.低级程序设计语言

57、程序的三种基本控制结构是(B)

A.过程、子程序和分程序B.顺序、选择和循环C.递归、堆栈和队列D.调用、返回和转移

58、软件详细设计的主要任务是确定每个模块的(A)

A.算法和使用的数据结构B.外部接口C.功能D.编程

59、软件设计的方法有多种,(A)方法不属于面向数据流的设计方法。

A.基于Jackson图的设计B.基于IDEF0图的设计C.交换分析设计D.事务分析设计

60、过程设计的工具有(ABC)

A.程序流程图B.盒图(N-S图)C.PAD图--问题分析图D.判定表

61、最著名的面向数据结构的设计方法(AC)。

A.Jackson方法B.变换分析C.Warnier方法D.事务分析

62、下面说法不正确的是(C)。

A.流程图不易表示数据结构B.流程图容易造成非结构化的程序结构

C.流程图支持逐步求精D.流程图描述的是程序的逻辑结构

63、下面说法不正确的是(B)

A.PAD图支持逐步求精B.PAD图容易造成非结构化的程序结构

C.PAD图描述的是算法D.PAD图容易表达程序的层次结构

第七章实现

24单元测试通常应该先进行“人工走查”,再以白盒法为主,辅以黑盒法进行动态测试。

25、功能测试是系统测试的主要内容,检查系统的功能、性能是否与需求规格说明相同。

26、在等价分类法中,为了提高测试效率,一个测试用例可以覆盖多个无效等价类。

27、发现错误多的模块,残留在模块中的错误也多。

28、系统测试的主要方法是白盒法,主要进行功能测试、性能测试、安全性测试及可靠性等测试。

29、在发现错误后,则应按照一定的技术去纠正它,纠错的关键是“错误定位”。

64、为了使程序能在不同的机器上运行,程序应具有较好的(A)。

A.可移植性B.可重用性C.可维护性D.可实用性

65、软件测试最突出的特点是(C)

A.软件测试的开销大B.软件测试要依靠工

C.软件不能进行“穷举”测试D.软件测试要依靠人工

66、下面说法正确的是(C)。

A.经过测试没有发现错误说明程序正确B.测试的目标是为了证明程序没有错误

C.成功的测试是发现了迄今尚未发现的错误的测试D.成功的测试是没有发现错误的测试

67、下面覆盖准则最强的是(D)。

A.语句覆盖B.判定覆盖C.条件覆盖D.条件组合覆盖

68、发现错误能力最弱的是(A)。

A.语句覆盖B.判定覆盖C.条件覆盖D.路径覆盖

69、与确认测试有关的文档是(A)。

A.需求规格说明书B.概要设计说明书C.详细设计说明书D.源程序

70、超出软件工程范围的测试是(D)。

A.单元测试B.集成测试C.确认测试D.平行测试

71、调试应该由(B)完成。

A.与源程序无关的程序员B.编制该源程序的程序员

C.不了解软件设计的机构D.设计该软件的机构

72、(B)法需要考察模块间的接口和各模块之间的联系。

A.单元测试B.集成测试C.确认测试D.验收测试

73、关于白盒法覆盖程度的论述中正确的是(AB)。

A.语句覆盖:

选择测试用例使程序中每条语句至少被执行一次

B.判定覆盖:

选择测试用例使程序中每个判定至少都获得一次“真”值和一次“假”值

C.条件覆盖:

选择测试用例使路径都满足

D.条件组合覆盖:

将所有的判定条件都组合起来执行

74、软件测试的基本原则是(AC)

A.关键是注重选择高效的测试用例B.选择尽可能多的测试用例

C.尽量不由程序设计者进行测试D.以白盒测试为主

75、等价分类法的关键是(C)。

A.确定等价类的边界条件B.按照用例来确定等价类

C.划分等价类D.确定系统中相同和不同的部分

76序言性注释主要内容不包括(D)。

A.模块的接口B.数据的描述C.模块的功能D.数据的状态

77、集成测试又称为组装测试,其主要内容包括(C)。

A.对整体的性能进行测试B.用白盒法设计测试用例进行测

C.确定集成策略和次序D.对集成的模块接口进行测试

78、功能性注释主要内容不包括(C)。

A.程序段的功能B.语句的功能C.模块的功能D.数据的状态

第八章维护

30、软件维护只需要纠正性维护、适应性维护和完善性维护假

31、改进程序的执行效率不会引入错误。

32、强调简明性的程序出错率低。

33、用面向对象方法开发的软件系统,可维护性好。

79、软件维护的类型有(ABCD)。

A.完善性维护B.纠错性维护C.适应性维护D.预防性维护

80、各种软件维护的类型中最重要的是(A)。

A.完善性维护B.纠错性维护C.适应性维护D.预防性维护

81、以下属于完善性维护的有(B)。

A.解决开发是未能测试各种可能条件带来的问题B.增加联机求助命令

C.考虑未来移植的问题D.改正发现的错误

82、决定软件可维护性的因素不包括(D)

A.可理解性B.可测试性C.可移植性D.简洁性

83、软件维护困难不包括(D)。

A.读懂别人程序的困难B.文档的不一致性C.软件维护不吸引人D.源程序错误多

84、在软件生存周期中,时间最长、所花费的精力和费用也最多的阶段是(B)。

A.详细设计B.维护C.概要设计D.测试

第九章面向对象方法学引论

34、面向对象的方法是以类作为最基本的元素,它是分析问题解决问题的核心。

35、类是指具有相同或相似性质对象的抽象,对象是抽象的类,类的具体化就是对象。

36、继承性是父类和子类之间共享数据结构和消息的机制,这是类之间的一种关系。

37、多态性就是消息有多种类型。

38、类图用来表示系统中类和类与类之间的关系,它是对系统动态结构的描述。

39、用例模型的基本组成部件是用例、角色和用例之间的联系。

40、UML的用例图是描述功能的。

41、UML是标准的建模语言,而不是标准的开发过程。

85、列哪些是面向对象方法的基本机制(ABC)

A.继承B.消息C.方法D.结构

86、用面向对象方法开发软件,通常需要建立三种形式的模型,它们分别是(ABD)。

A.对象模型B.动态模型C.模块化模型D.功能模型

87、下列各种图可用于动态建模的有(ACD)

A.状态图B.类图C.顺序图D.活动图

89、每个对象可用它自己的一组属性和它可执行的一组(C)来表现。

A.函数B.功能C.操作D.数据

90、面向对象的主要特征除唯一性、继承性、封装性外,还具有(A)

A.多态性B.移植性C.完整性D.兼容性

91、表示对象交互行为的模型是(D)

A.对象模型B.静态模型C.功能模型D.动态模型

92、UML的类图、对象图和(D)是“静态图”。

A.顺序图B.状态图C.活动图D.包图

名词解释

1.阐述面向对象的特征,并做简要的解释。

答:

对象唯一性:

每个对象都有自身唯一的标识,通过这种标识,可找到相应的对象。

分类性:

是指将具有一致的数据结构(属性)和行为(操作)的对象抽象成类。

继承性:

是父类和子类之间共享数据结构和方法的机制,这是类之间的一种关系。

多态性:

是指相同的操作或函数,过程作用于多种类型的对象上并获得不同的结果。

2.如何画分层数据流图?

答:

总的原则是:

至顶而下,逐层分解。

比较复杂的系统不能画在一张纸上,逐层分解的画法可以控制每一层的复杂度。

顶层:

将整个系统作为一个加工,描述系统边界。

中间层:

表示某个加工分解为一组子加工,其中的子加工还需进一步分解。

底层:

由不再进行分解的基本加工组成。

3.请将下述有关模块独立性的各种模块之间的耦合,按其耦合度从低到高排列起来。

①内容耦合②控制耦合③非直接耦合④标记耦合

⑤数据耦合⑥外部耦合⑦公共耦合

③⑤④②⑥⑦①

4.概要设计的基本任务是什么?

基本任务:

(1)设计软件系统结构

a.采用某种设计方法,将一个复杂的系统按功能划分成模块

b.确定模块的功能。

c.确定模块之间的调用关系。

d.确定模块之间的接口,即模块之间传递的信息。

e.评价模块结构的质量.

(2)数据结构及数据库设计

a.数据结构设计

b.数据库设计:

(3)编写概要设计文档

(4)评审

5.请将下述有关模块独立性的各种模块内聚,按其内聚度(强度)从高到低排列起来。

?

①巧合内聚②时间内聚③功能内聚④通信内聚?

⑤逻辑内聚⑥信息内聚⑦过程内聚

③⑥④⑦②⑤①

6.为什么要进行软件维护?

答:

软件维护是指软件系统交付使用以后,为了改正错误或满足新的需求而修改软件的过程。

一个中等规模的软件,如果其开发过程需要一到二年时间,则它投入使用以后,其运行时间可能持续五到十年之久。

在这个维护阶段中,人们需要着手解决开发阶段尚未解决的问题,同时,还解决维护工作本身所产生的问题。

做好软件的维护工作不仅能够排除软件中存在的错误,使它能够正常工作,而且还可以使它扩充功能,提高性能,为用户带来新的效益,维护阶段的花费约占整个软件生命周期花费的67%。

因此,我们应充分认识到维护现有软件的重要意义。

7.等价分类法的基本思想是什么?

答:

根据程序的输入特性,将程序的定义域划分为有限个等价区段-等价类,从等价类中选择出的用例具有“代表性”,即测试某个等价类的代表值就等价于对这一类其它值的测试,如果某个等价类的一个输入数据测试中查出了错误,也即是该等价类中的其它值也会查出同样的错误

8.什么是软件危机?

其产生的原因是什么?

在软件发展第二阶段的末期,由于计算机硬件技术的进步,计算机运行速度、容量、可靠性有显著的提高,生产成本显著下降,这为计算机的广泛应用创造了条件。

一些复杂的、大型的软件开发项目提出来

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

当前位置:首页 > 解决方案 > 学习计划

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

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