软件工程名词解释和简答题总结.doc

上传人:wj 文档编号:4714672 上传时间:2023-05-07 格式:DOC 页数:20 大小:80KB
下载 相关 举报
软件工程名词解释和简答题总结.doc_第1页
第1页 / 共20页
软件工程名词解释和简答题总结.doc_第2页
第2页 / 共20页
软件工程名词解释和简答题总结.doc_第3页
第3页 / 共20页
软件工程名词解释和简答题总结.doc_第4页
第4页 / 共20页
软件工程名词解释和简答题总结.doc_第5页
第5页 / 共20页
软件工程名词解释和简答题总结.doc_第6页
第6页 / 共20页
软件工程名词解释和简答题总结.doc_第7页
第7页 / 共20页
软件工程名词解释和简答题总结.doc_第8页
第8页 / 共20页
软件工程名词解释和简答题总结.doc_第9页
第9页 / 共20页
软件工程名词解释和简答题总结.doc_第10页
第10页 / 共20页
软件工程名词解释和简答题总结.doc_第11页
第11页 / 共20页
软件工程名词解释和简答题总结.doc_第12页
第12页 / 共20页
软件工程名词解释和简答题总结.doc_第13页
第13页 / 共20页
软件工程名词解释和简答题总结.doc_第14页
第14页 / 共20页
软件工程名词解释和简答题总结.doc_第15页
第15页 / 共20页
软件工程名词解释和简答题总结.doc_第16页
第16页 / 共20页
软件工程名词解释和简答题总结.doc_第17页
第17页 / 共20页
软件工程名词解释和简答题总结.doc_第18页
第18页 / 共20页
软件工程名词解释和简答题总结.doc_第19页
第19页 / 共20页
软件工程名词解释和简答题总结.doc_第20页
第20页 / 共20页
亲,该文档总共20页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

软件工程名词解释和简答题总结.doc

《软件工程名词解释和简答题总结.doc》由会员分享,可在线阅读,更多相关《软件工程名词解释和简答题总结.doc(20页珍藏版)》请在冰点文库上搜索。

软件工程名词解释和简答题总结.doc

软件工程名词解释和简答题总结

名词解释总结:

-9.软件开发环境

-8.错误推测法

-7.黑盒测试法

-6.软件质量保证

-5.瀑布模型

-4.软件危机

-3.软件工程

-2.软件生存周期

-1.软件生存周期模型

0.软件开发方法

1、需求分析

2、白盒法

3、黑盒法

4、渐增式测试

5、非渐增式测试

6、可执行的规格说明

7、经济可行性

8、系统设计说明书

9、面向对象设计

10、结构化设计

11、结构化分析

12、基于脚本的设计

13、IDEF方法

14、JSP方法

15、软件概要设计

16、信息隐蔽

17、系统流程图

18、集成测试

19、附加策略

20、抛弃策略

21、抽象

22、参数化抽象

23、静态测试

24、原型

25、事件

26、动态冗余

27、模块化

28、JSP方法

29、模型

30、瀑布模型

31、增量模型

32、喷泉模型

33、功能模型

34、动态模型

35、对象模型

36、货币的时间价值

37、类

38、对象

39、多态性

40、风险分析

41、模块

42、JSD方法

43、路径覆盖

44、判定/条件覆盖

45、条件组合覆盖

46、条件覆盖

47、原型模型

48、软件工程环境

49、程序图

50.结构化分析方法

51.数据流图

52.字据字典

53.IDEF方法

54.概要设计

55.耦合性

56.内聚性

57.无直接耦合

58.数据耦合

59.标记耦合

60.控制耦合

61.公共耦合

62.内容耦合

63.偶然内聚

64.逻辑内聚

65.时间内聚

66.通信内聚

67.顺序内聚

68.功能内聚

69.软件结构

70.控制范围

71.作用范围

72.变换流

73.事物流

74.程序设计风格

75.集成测试

76.非渐增式

77.渐增式

78.确认测试

79.软件的可维护性

80.对象

81.类

82.类结构

83.消息

84.软件质量

85.质量保证

86.软件可靠性

87.软件评审

88.容错定义

89.软件配置管理

90.基线

-9.指在计算机的基本软件的基础上,为了支持软件的开发而提供的一组工具软件系统

-8.在测试程序时,人们可能根据经验或直觉推荐程序中可能存在的各种错误,从而有针对性地编写检查这些错误的测试用例的方法。

-7.把被测试对象看成一个黑盒子,测试人员完全不考虑程序的内部结构和处理过程。

-6.是向用户及社会提供满意的高质量的产品确保软件产品从诞生到消亡为止的所有阶段的质量的活动,即确定、达到和维护需要的软件质量而进行的所有有计划、有系统的管理活动。

-5.将软件生存周期各个活动规定为依线性顺序连接的若干阶段的一种软件开发模型。

它包括可行性分析、项目开发计划、需求分析、概要设计、详细设计、编码、测试和维护。

-4.软件危机:

软件发展第二阶段的末期,由于计算机硬件技术的进步。

一些复杂的、大型的软件开发项目提出来了,但,软件开发技术的进步一直未能满足发展的要求。

在软件开发中遇到的问题找不到解决的办法,使问题积累起来,形成了尖锐的矛盾,因而导致了软件危机。

-3.软件工程:

用科学的原理和理论定义,开发、维护软件的学科。

-2.软件生存周期:

一个软件从提出开发要求开始直到该软件报废为止的整个时期。

包括:

可行性分析和项目开发计划、需求分析、概要设计、详细设计、编码、测试、维护等.

-1.软件生存周期模型:

是描述软件开发过程中各种活动如何执行的模型。

(模型:

是为了理解事物而对事物做出一种抽象,它忽略不必要的细节,它也是事物的一种抽象形式、一个规划、一个程式。

0.软件开发方法:

用早就定义好的技术集合和符号表示习惯来组织软件生产的过程。

主要有:

结构方法、Jackson方法、维也纳开发方法(VDM)、面向对象的开发方法

1、需求分析:

需求分析是指开发人员要准确理解用户的需求,进行细致的调查分析,将用户非形式的需求陈述转化成完整的需求定义,再由需求定义转换到相应的形式功能规约(需求规格说明)的过程。

2、白盒法:

该方法把测试对象看作一个打开的盒子,测试人员须了解程序的内部结构和处理过程,以检查处理过程的细节为基础,对程序中尽可能多的逻辑路径进行测试,检查内部控制结构和数据结构是否有错,实际的运行状态与预期的状态是否一致。

白盒法也不可能进行穷举测试。

3、黑盒法:

该方法把被测试对象看成一个黑盒子,测试人员完全不考虑程序的内部结构和处理过程,只在软件接口处进行测试,依照需求规格说明书,检查程序是否满足功能要求。

因此,黑盒测试又称为功能测试或数据驱动测试。

4、渐增式测试:

逐个把未经过测试的模块组装到已经过测试的模块上去,进行集成测试。

每加入一个新模块进行一次集成测试,重复此过程直至程序组装完毕。

5、非渐增式测试:

首先对每个模块分别进行单元测试,然后再把所有的模块按设计要求组装在一起进行测试。

6、可执行的规格说明:

这是一种使要求说明过程自动化的技术,通过可执行的规格说明语言来描述预期的行为“做什么”,人们可以从直接观察中用规格说明语言来规定任何系统行为。

7、经济可行性:

对组织的经济状况和投资能力进行分析,对系统建设,运行和维护费用进行估算,对系统建成后可能取得的社会及经济效益进行估计。

8、系统设计说明书:

是从系统总体的角度出发对系统建设中各主要技术方面的设计进行说明,是系统设计阶段的产物,其着重点在于阐述系统设计的指导思想以及所采用的技术路线和方法,编写系统设计说明书将为后续的系统开发工作从技术和指导思想上提供必要的保证。

9、面向对象设计:

是把分析阶段得到的需求转变成符合成本和质量要求的、抽象的系统实现方案的过程。

或者说,面向对象设计就是用面向对象观点建立求解域模型的过程。

10、结构化设计:

面向数据流的设计是以需求分析阶段产生的数据流图为基础,按一定的步骤映射成软件结构,因此又称结构化设计(SD)。

11、结构化分析:

是根据分解与抽象的原则,按照系统中数据处理的流程,用数据图来建立系统的功能模型,从而完成需求分析工作。

12、基于脚本的设计:

此方法主要用于解决要求的验证问题。

一个脚本将模拟在系统运行期间用户经历的事件,它提供了输入、处理、输出的屏蔽,以及有关对话的一个模型,开发者能够给用户显示一个系统的逼真视图。

13、IDEF方法:

是美国空军在1981年针对集成化计算机辅助制造(简称ICAM)工程项目中用于进行复杂系统分析和设计的方法,是在结构化分析与设计技术的基础上提出来的。

14、JSP方法:

定义了一组以数据结构为指导的映射过程,他根据输入、输出的数据结构,按一定的规则映射成软件的过程描述,即程序结构,而不是软件的体系结构,因此该方法适于详细设计阶段。

15、软件概要设计:

进入了设计阶段,要把软件“做什么”的逻辑模型变换为“怎么做”的物理模型,即着手实现软件的需求,并将设计的结果反应在“设计规格说明书”文档中,所以软件设计是一个把软件需求转换为软件表示的过程,最初这种表示只是描述了软件的总的体系结构,称为软件的概要设计或结构设计。

16、信息隐蔽:

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

17、系统流程图:

是描述物理系统的传统工具,它用图形符号来表示系统中的各个元素,例如人工处理、数据处理、数据库、文件、设备等。

它表达了系统中各个元素之间的信息流动的情况。

18、集成测试:

是指在单元测试的基础上,将所有模块按照设计要求组装成一个完整的系统进行的测试,故也称组装测试或联合测试。

19、附加策略:

是将原型用于开发的全过程,原型由最基本的核心开始,逐步增加新的功能和新的需求,反复修改反复扩充,最后发展为用户满意的最终系统。

20、抛弃策略:

是将原型用于开发过程的某一阶段,促使该阶段的开发结果更加完整、准确、一致、可靠,该阶段结束后,原型随之作废。

21、抽象:

是认识复杂现象过程中使用的思维工具,即抽出事物本质的共同的特征而暂不考虑它的细节,不考虑其它因素。

22、参数化抽象:

所谓参数化抽象,它是指当描述类的规格说明时并不具体指定所要操作的数据类型,而是把数据类型作为参数。

23、静态测试:

指被测试程序不在机器上运行,而是采用人工检测和计算机辅助静态分析的手段对程序进行检测。

24、原型:

是指模拟某种产品的原型模型。

软件开发中的原型是软件的一个早期可运行的版本,它反映了最终系统的重要特征。

25、事件:

是指定时刻发生的某件事情。

它是某事情发生的信号,它没有持续时间,它是一种相对性的快速事件。

26、动态冗余:

动态冗余的主要方式是多种模块待机储备,当系统检测到某工作模块出现错误时,就用一个备用的模块来顶替它并重新运行。

这里须有检测、切换和恢复过程,故称其为动态冗余。

27、模块化:

是指解决一个复杂问题是自顶向下逐层把软件系统划分成若干模块的过程,每个模块完成一个特定的子功能,所有的模块按某种方法组装起来,成为一个整体,完成整个系统所要求的功能。

28、JSP方法:

定义了一组以数据结构为指导的映射过程,它根据输入、输出的数据结构,按一定的规则映射成软件的过程描述,即程序结构,而不是软件的体系结构,因此该方法适于详细设计阶段。

29、模型:

是为了理解事务而对事物做出一种抽象,它忽略不必要的细节,它也是事物的一种抽象形式,一个规划,一个程式。

30、瀑布模型:

是将软件生存各个活动规定为依线性顺序联接的若干阶段的模型。

它包括可行性分析、项目开发计划、需求分析、概要设计、详细设计、编码、测试和维护。

它规定了由前至后,相互衔接的固定次序,如同瀑布流水,逐级下落。

31、增量模型:

是在项目的开发工程中以一系列的增量方式开发系统。

增量方式包括增量开发和增量提交。

增量开发是指在项目开发过程中以一定的时间间隔开发部分工作软件;增量提交是指在开发周期内,以一定的时间间隔增量方式向用户提交工作软件及相应稳当。

增量开发和增量提交可以同时使用,也可单独使用。

32、喷泉模型:

是一种以用户需求为动力,以对对象作为驱动的模型,适合于面向对象的开发方法。

他克服了瀑布模型不支持软件重用和多项开发活动集成的局限性。

喷泉模型使开发过程具有迭代性和无间隙性。

系统某些部分常常重复工作多次,相关功能在每次迭代中随之加入演化的系统。

无间隙是指在分析、设计、实现等开发活动之间不存在明显的边界。

33、功能模型:

描述了系统的所有计算,它表明一个计算如何从输入值得到输出值,他不考虑所计算的次序。

功能模型说明对象模型中操作的涵义、动态模型中动作的意义以及对象模型中约束的意义。

34、动态模型:

是与时间和变化有关的系统性质。

该模型描述了系统的控制结构,他表示了瞬时的、行为化的系统控制性质。

它关心的是系统的控制,操作的执行顺序。

它从对象的事件和状态的角度出发,表现了对象的相互行为。

35、对象模型:

表示了静态的、结构化的系统数据性质,描述了系统的静态结构,它是从客观世界实体的对象关系角度来描述,表现了对象的相互关系。

36、货币的时间价值:

通常利用银行的存款利息来表示货币的时间价值。

设年利率为I,现存入p元,n年后得到本金和利息为F。

若不计复利,则P元在n年后的价值为:

F=P*(1+n*i)。

反过来,若n年后能收入的本金和利息为F,则将来F元的现在价值(本金)P为:

P=F/(1+n*i)。

可用这个公式来计算将来收入的现在价值。

这是效益分析的最基本公式。

37、类:

具有相同或相似性质的对象的抽象就是类。

38、对象:

是人们要进行研究的任何事物,从最简单的整数到复杂的飞机等均可看作对象,它不仅能表示具体的事物,还能表示抽象的规则、计划或事件。

类的具体化就是对象,也可以说类的实例是对象。

39、多态性:

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

不同的对象,收到同一消息可以产生不同的结果,这种现象称为多态性。

40、风险分析:

实际上就是贯穿在软件工程上的一系列风险管理步骤,其中包括风险识别、风险估计、风险管理策略、风险解决和风险监督,它能让人们主动“攻击”风险。

41、模块:

模块在程序重视数据说明、可执行语句等程序对象的集合,或者是单独命名和编址的元素,如高级语言中的过程、函数、子程序等等。

42、JSD方法:

主要以活动事件为中心,通过有一串活动顺序组合构成的进程,建立系统模型,最后实现该模型。

43、路径覆盖:

指设计足够的测试用例,覆盖被测程序中所有可能的路径。

44、判定/条件覆盖:

指设计足够的测试用例,使得判定表达式中的每个条件的所有可能取值至少出现一次,并使每个判定表达式所有可能的结果也至少出现一次。

45、条件组合覆盖:

是指设计足够的测试用例,使的每个判定表达式中条件的各种可能的值的组合都至少出现一次,条件组合覆盖是比较强的覆盖标准。

46、条件覆盖:

是指设计足够的测试用例,使得判定表达式中每个条件的各种可能的值至少出现一次。

满足条件覆盖并不一定满足判定覆盖。

47、原型模型:

又称快速原型模型,它是在开发真实系统之前,构造一个原型,在该原型的基础上,逐渐完成整个系统的开发工作。

48、软件工程环境:

美国国防部在STARS计划中定义如下:

“软件工程环境是一组方法、过程及计算机程序(计算机化的工具)的整体化构件,他支持从需求定义、程序生成知道维护的整个软件生存期”。

49、程序图:

是退化的程序流程图。

也就是说,把程序流程图中每个处理符号都退化成一个结点,原来连接不同处理符号的流线变成连接不同结点的有向弧,这样得到的有向图就叫程序图。

50.结构化分析方法:

是采用自顶向下逐层分解的分析策略把一个复杂的系统分解成若干小问题然后分别解决。

51.数据流图:

简称DFD,是SA(结构化分析)方法中用于表示系统逻辑模型的一种工具.是一种功能模型.作用:

它以图形的方式描绘数据在系统中流动和处理的过程,反映系统必须完成的逻辑功能.

52.字据字典:

简称DD,就是用来定义数据流图中的各个成分具体含义的,它以一种准确的\无二义性的说明方式为系统的分析\设计及维护提供了有关元素的一致的定义和详细的描述.

53.IDEF方法:

是美国空军在1981年针对集成化计算机辅助制造(IntegratedComputerAidedManufacturing,简称ICAM)工程项目中用于进行复杂系统分析和设计的方法,是在结构化分析与设计技术的基础上提出来的。

54.概要设计:

是在需求分析的基础上通过抽象和分解将系统分解成模块,确定系统功能是实现。

55.耦合性:

也称块间联系。

指软件系统结构中各模块间相互联系紧密程度的一种度量。

模块之间联系越紧密,其耦合性就越强,模块的独立性则越差。

56.内聚性:

也称块内联系。

指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量。

模块内元素联系越紧密,内聚性越高。

57.无直接耦合:

两个模块之间没有直接的关系,它们分别从属于不同模块的控制与调用,它们之间不传递任何信息。

58.数据耦合:

指两个模块之间有调用关系,传递的是简单的数据值,相当于高级语言中的值传递。

59.标记耦合:

指两个模块之间传递的是数据结构。

60.控制耦合:

指控制模块调用另一个模块时,传递的是控制变量,被调用块通过该控制变量的值有选择地执行块内某一功能(控制变量)

61.公共耦合:

通过一个公共数据环境相互作用的那些模块间的耦合。

(一个公式数据环境)

62.内容耦合:

一个模块直接使用另一个模块的内部数据,或通过非正常入口而转入另一个模块内部

63.偶然内聚:

一个模块内的各处理元素之间没有任何联系。

64.逻辑内聚:

模块内执行几个逻辑上相似的功能,通过参数确定该模块完成哪一个功能。

65.时间内聚:

把需要同时执行的动作组合在一起。

66.通信内聚:

指模块内所有处理元素都在同一个数据结构上操作,或者指各处理使用相同的输入数据或产生相同的输出数据。

67.顺序内聚:

一个模块中各处理元素都密切相关于同一功能且必须顺序执行,前一功能元素的输出是下一功能元素的输入。

68.功能内聚:

最强的内聚,指模块内所有元素共同完成一个功能,缺一不可。

69.软件结构:

软件系统的模块层次结构,反映了整个系统的功能实现,即将来程序的控制体系

70.控制范围:

是模块本身和它的下属模块的集合。

71.作用范围:

模块中的一个判定影响的所有模块的集合。

作用范围应该在控制范围内。

72.变换流由输入、变换(或处理)、输出三部分组成。

73.事物流:

某个加工将它的输入流分离成许多发散的数据流,形成许多加工路径,并根据输入选择其中一个路径来执行这种特征的DFD称为事物流。

74.程序设计风格:

指一个人编制程序时所表现出来的特点、习惯、逻辑思路等。

75.集成测试:

将模块组合起来成为一个完整的系统对其进行测试。

76.非渐增式:

将模块先进行单元测试然后组装在一起进行测试。

77.渐增式:

逐个将未测试的模块组装到已经测试过的模块上去进行集成测试,每加入一个就测试一次。

78.确认测试:

按照需求规格说明书中的确定指标对系统进行功能与性能的测试。

79.软件的可维护性:

软件能够被理解、校正、适应及增强功能的容易程度。

80.对象:

是客观实体在问题域中的抽象。

81.类:

具有相似或相同性质的对象的抽象就是类。

82.类结构:

类的结构通常有一般----具体(分类结构)整体---抽象(组装结构)

83.消息:

对象之间通信的构造。

84.软件质量:

与确定的功能和性能需求一致、与成文的开发标准相一致、与所有专业开发的软件所期望的隐含特性相一致。

85.质量保证:

向社会和用户提供满意高质量的产品确保软件从诞生到消亡为止的所有阶段的质量的活动。

86.软件可靠性:

在规定的环境下和时间里软件按要求的功能执行的概率。

87.软件评审:

是一个过滤器,它使用在软件开发的各个阶段,通过软件评审可以及时的发现软件中存在的问题然后加以改正。

88.容错定义:

规定功能的软件在出现错误是仍然可以在一定程度上完成要求的功能、规定功能的软件可以屏蔽错误、规定功能的软件可以在出错的时候自动恢复到正常的状态、规定功能的软件在一定的程度上有容错的能力。

89.软件配置管理:

软件配置管理(SCM)用于整个软件工程过程,目标是表示变更,控制变更,确保变更的正确实施,报告变更。

SCM是用在整个软件生存周期个阶段中的变更活动。

90.基线:

是软件生存周期中各开发阶段的一个特定点,它的作用是把开发各阶段的工作划分的更加明确化,使本来连续的工作在这些点上断开,便于检查于肯定阶段成果。

91.数据字典:

一个定义应用程序中使用的所有数据元素和结构的含义、类型、数据大小、格式、度量单位、精度以及允许取值范围的共享仓库。

数据字典的维护独立于软件需求规格说明,并且在产品的开发和维护的任何阶段,各个风险承担者都可以访问数据字典。

它定义了原数据元素、组成结构体的复杂数据元素、重复的数据项、一个数据项的枚举值以及可选的数据项。

92.数据流图:

是结构化系统分析的基本工具。

一个数据流图确定了系统的转化过程、系统所操纵的数据或物质的收集(存储),还有过程、存储、外部世界之间的数据流或物质流。

数据流模型把层次分解方法运用到系统分析上,这种方法很适用于事务处理系统和其它功能密集型应用程序。

93.数据流图:

描绘了系统的数据关系。

分析实体联系图有助于对业务或系统数据组成的理解和交互,并暗示产品将有必要包含一个数据库。

相反,当你在系统设计阶段建立实体联系图时,通常要定义系统数据库的物理结构。

94.状态转换图:

实时系统和过程控制应用程序可以在任何给定的时间内以有限的状态存在。

当满足所定义的标准时,状态就会发生改变,例如在特定条件下,接收到一个特定的输入激励。

这样的系统是有限状态机的例子。

大多数软件系统需要一些状态建模或分析,就像大多数系统涉及到转换过程、数据实体和业务对象。

95.对话图:

在许多应用程序中,用户界面可以看作是一个有限状态机。

在任何情况下仅有一个对话元素(例如一个菜单,工作区,行提示符或对话框)对用户输入是可用的。

在激活的输入区中,用户根据他所采取的活动,可以导航到有限个其它对话元素。

因此,许多用户界面可以用状态转换图中的一种称为对话图来建模。

对话图描绘了系统中的对话元素和它们之间的导航连接,但它没有揭示具体的屏幕设计。

96.类图:

面向对象的软件开发优于结构化分析和设计,并且它运用于许多项目的设计中,从而产生了面向对象分析、设计和编程的域。

类图是用图形方式叙述面向对象分析所确定的类以及它们之间的关系。

简答题总结:

1、可行性研究的任务是什么?

  首先需要进行概要的分析研究,初步确定项目的规模和目标,确定项目的约束和限制,把他们清楚地列举出来。

然后,分析员进行简要的需求分析,抽象出该项目的逻辑结构,建立逻辑模型。

从逻辑模型出发,经过压缩的设计,探索出若干种可供选择的主要解决方法,对每种解决方法都要研究它的可行性,可从以下三个方面分析研究每种解决方法的可行性。

㈠技术可行性:

对要开发项目的功能、性能、限制条件进行分析,确定在现有的资源条件下,技术风险有多大,项目是否能实现。

㈡经济可行性:

进行开发成本的估算以及了解取得效益的评估,确定要开发的项目是否值得投资开发。

㈢社会可行性:

要开发的项目是否存在任何侵犯、妨碍等责任问题,要开发项目的运行方式在用户组织内是否行得通,现有管理制度、人员素质、操作方式是否可行。

  2、什么是模块的影响范围?

什么是模块的控制范围?

他们之间应该建立什么关系?

  一个模块的作用范围(或称影响范围)指受该模块内一个判定影响的所有模块的集合。

一个模块的控制范围指模块本身以及其所有下属模块(直接或间接从属于它的模块)的集合。

一个模块的作用范围应在其控制范围之内,且判定所在的模块应在其影响的模块在层次上尽量靠近。

如果再设计过程中,发现模块作用范围不在其控制范围之内,可以用“上移判点”或“下移受判断影响的模块,将它下移到判断所在模块的控制范围内”的方法加以改进。

  3、非渐增式测试与渐增式测试有什么区别?

渐增式测试如何组装模块?

  ㈠非渐增式测试方法把单元测试和集成测试分成两个不同的阶段,前一阶段完成模块的单元测试,后一阶段完成集成测试。

而渐增式测试往往把单元测试与集成测试和在一起,同时完成。

㈡非渐增式需要更多的工作量,因为每个模块都需要驱动模块和桩模块,而渐增式利用已测试过的模块作为驱动模块或桩模块,因此工作量较少。

㈢渐增式可以较早的发现接口之间的错误,非渐增式最后组装是才发现。

㈣渐增式有利于排错,发生错误往往和最近加进来的模块有关,而非渐增式发现接口错误推迟到最后,很难判断是哪一部分接口出错。

㈤渐增式比较彻底,已测试的模块和新的模块再测试。

㈥渐增式占用的时间较多,但非渐增式须更多的驱动模块、桩模块也占用一些时间。

㈦非渐增式开始可并行测试所有模块,能充分利用人力,对测试大型软件很有意义。

渐增式测试有以下两种不同的组装模块的方法:

㈠自顶向下组合。

该方法只需编写桩模块,其步骤是从顶层模块开始,沿被测程序的软件结构图的控制路径逐步向下测试,从而把各个模块都结合起来,它又有两种组合策略:

①深度有先策略:

先从软件结构中选择一条主控制路径,把该路径上的模块一个个结合进来进行测试,以便完成一个特定的子功能,接着再结合其它需要优先考虑的路径。

②宽度有先策略:

逐层结合直接下属的所有模块。

㈡自低向上结合。

该方法仅需编写驱动模块。

其步骤为:

①把底层模块组合成实现一个个特定子功能的族。

②为每一个族编写一个驱动模块,以协调测试用例的输入和测试结果的输出。

③对模块族进行测试。

④按软件结构图依次向上扩展,用实际模块替换驱动模块,形成一个个更大的族。

⑤重复②至④步,直至软件系统全部测试完毕。

  4、软件质量与软件质量保证的含义是什

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

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

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

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