软件工程考试复习名词解释整理.doc

上传人:b****2 文档编号:1707985 上传时间:2022-10-23 格式:DOC 页数:5 大小:58.50KB
下载 相关 举报
软件工程考试复习名词解释整理.doc_第1页
第1页 / 共5页
软件工程考试复习名词解释整理.doc_第2页
第2页 / 共5页
软件工程考试复习名词解释整理.doc_第3页
第3页 / 共5页
软件工程考试复习名词解释整理.doc_第4页
第4页 / 共5页
软件工程考试复习名词解释整理.doc_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

软件工程考试复习名词解释整理.doc

《软件工程考试复习名词解释整理.doc》由会员分享,可在线阅读,更多相关《软件工程考试复习名词解释整理.doc(5页珍藏版)》请在冰豆网上搜索。

软件工程考试复习名词解释整理.doc

1.软件生存期:

一个软件从定义到开发、使用和维护,直到最终被废弃,要经历一个漫长的时期,通常把软件经历的这个漫长的时期称为生存周期。

软件生存周期就是从提出软件产品开始,直到该软件产品被淘汰的全过程。

2.什么是软件危机?

为什么会产生软件危机?

软件危机是指计算机软件的开发和维护过程中所遇到的一系列严重的问题,主要包含二方面的问题,一是如何开发利用软件,二是如何维护数量不断膨胀的已有软件。

产生软件危机的原因,一方面与软件本身的特点有关,另一方面和软件开发与维护的方法不正确有关。

3.快速原型模型:

所谓快速原型模型是快速建立起来的可以在计算机上运行的程序,它所能完成的功能往往是最终产品能完成的功能的一个子集。

瀑布模型:

是将软件生命周期的各项活动规定为依线性顺序连接的若干阶段的模型,适合于软件需求很明确的软件项目。

增量模型(渐增模型):

瀑布模型的顺序特征和快速原型模型的迭代特征相结合的产物。

螺旋模型:

对于大型软件,只开发一个原型往往达不到要求。

螺旋模型将瀑布模型和增量模型结合起来,并加入了风险分析。

喷泉模型:

以面向对象的软件开发方法为基础,以用户的需求为动力,以对象来驱动的模型。

4.结构化分析方法(SA)是E.Yourdon提出,是使用数据流图DFD与数据字典DD,用来描述面向数据流问题的需求分析,适合于数据处理型的软件的需求描述。

核心思想是分解化简问题,将物理表示与逻辑表示分开,对系统进行数据与结构的抽象。

优点是表达方式比文字清晰、简明,易于交流与掌握。

缺点是不能表达复合逻辑的需求分析问题,不能详细描述加工。

5.结构化设计(SD)是使用最广泛的一种设计方法,该方法适合于软件系统的总体设计和详细设计,特别是将一个复杂的系统转换成模块化结构系统,该方法具有它优势。

(相对独立,功能单一的模块结构;块内联系大,块间联系小的模块性能标准;采用模块结构图的描述方式)以模块化设计为中心,将待开发的软件系统划分为若干个相互独立的模块。

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

6.数据流图(ppt第二章18)数据流图描绘系统的逻辑模型,图中没有任何具体的物理元素,只是描绘信息在系统中流动和处理的情况。

简称DFD,是SA(结构化分析)方法中用于表示系统逻辑模型的一种工具,它以图形的方式描绘数据在系统中流动和处理的过程,由于它只反映系统必须完成的逻辑功能,所以它是一种功能模型。

数据流图是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换。

7.数据字典(ppt第二章39)是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。

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

四类条目:

数据流、数据项、数据存储、数据加工。

数据流图和数据字典共同构成系统的逻辑模型

数据字典内容:

(1)数据流

(2)数据流分量(数据元素)(3)数据存储(4)处理

8.什么是黑盒测试法?

什么是白盒测试法?

黑盒测试法把程序看成一个黑盒子,完全不考虑程序的内部结构和处理过程,它只检查程序功能是否能按照规格说明书的规定正常使用,程序是否能适当地接收输入数据,产生正确地输出信息。

白盒测试法的前提是可以把程序看成装在一个透明的白盒子里,也就是完全了解程序的结构和处理过程。

这种方法按照程序内部的逻辑测试程序,检验程序中的每条通路是否都能按预定要求正确工作。

黑盒测试和白盒测试的区别:

前者基于功能,后者基于结构;

黑盒测试常用方法有:

等价划分、边界值分析、错误推测、因果图等。

9.软件系统的测试基本步骤:

(1)模块测试(单元测试)

把每个模块作为一个单独的实体来测试。

模块测试的目的是保证每个模块作为一个单元能正确运行。

2)子系统测试(集成测试)

子系统测试是把经过单元测试的模块放在一起形成一个子系统来测试。

模块相互间的协调和通信是这个测试过程中的主要问题,着重测试模块的接口。

3)系统测试(集成测试)

系统测试是把经过测试的子系统装配成一个完整的系统来测试。

不仅能发现设计和编码的错误,还应能验证系统确实能提供需要说明书中指定的功能,系统的动态特性也符合预定要求。

在这个测试步骤中发现的往往是软件设计中的错误,也能发现需求说明中的错误。

(4)验收测试(确认测试)

验收测试把软件系统作为单一的实体进行测试。

主要使用实际数据进行测试。

验收测试的目的是验证系统确实能够满足用户的需要。

单元测试又称模块测试,是针对软件设计的最小单位─程序模块,进行正确性检验的测试工作。

其目的在于发现各模块内部可能存在的各种差错。

单元测试需要从程序的内部结构出发设计测试用例。

多个模块可以平行地独立进行单元测试。

对支持某些标准规程的程序,更要着手进行互联测试。

有人把这种情况特别称为模块测试,以区别单元测试。

模块并不是一个独立的程序,在考虑测试模块时,同时要考虑它和外界的联系,用一些辅助模块去模拟与被测模块相联系的其它模块。

驱动模块(driver)

桩模块(stub)──存根模块

10.驱动模块:

接收测试数据,把这些数据传送给被测试的模块,并印出有关的结果。

11.桩模块:

代替被测试的模块所调用的模块。

12.用面向对象方法开发软件,通常需要建立三种形式的模型,它们分别是描述系统数据结构的对象模型,描述系统控制结构的动态模型和描述系统功能的功能模型。

动态模型(ppt第九章28)动态模型表示瞬时的﹑行为化的系统的“控制”性质,它规定了对象模型中的对象的合法变化序列。

各对象之间相互触发(即作用),就形成了一系列的状态变化。

通常,用状态图来描绘对象的状态﹑触发状态转换的事件﹑以及对象的行为(对事件的响应)。

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

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

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

他从对象的事件和状态的角度出发,表现了对象的相互关系。

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

是对模拟客观实体的对象以及对象彼此间的关系的映射,描述了系统的静态结构。

功能模型功能模型表示变化的系统的“功能”性质,它指明了系统应该“做什么“,因此更直接地反映了用户对目标系统的需求。

13.各种耦合(ppt第五章25)模块的独立程度由两个定性标准度量:

内聚性和耦合性。

耦合:

是对一个软件结构内不同模块之间互连程度的度量。

耦合性是对软件模块间互连程度的度量。

耦合性强,标志互连的强,模块独立性差;耦合性弱,标志互连的弱,模块独立性强;耦合强弱取决于模块间接口的复杂程度,进入或访问一个模块的点,以及通过接口的数据。

模块间的耦合程度强烈影响系统的可理解性、可测试性、可靠性和可维护性。

模块间的耦合

前两个为低等耦合中间两个为中等耦合剩下三个为高等耦合

非直接耦合(NondirectCoupling)两个模块之间没有直接关系,它们之间的联系完全是通过主模块的控制和调用来实现的。

非直接耦合的模块独立性最强。

数据耦合(DataCoupling)一个模块访问另一个模块时,彼此之间是通过简单数据参数(不是控制参数、公共数据结构或外部变量)来交换输入、输出信息的。

数据耦合是最弱的耦合。

标记耦合(StampCoupling)一组模块通过参数表传递记录信息,就是标记耦合。

这个记录是某一数据结构的子结构,而不是简单变量。

控制耦合(ControlCoupling)如果一个模块通过传送开关、标志、名、字等控制信息,明显地控制选择另一模块的功能,就是控制耦合。

控制耦合是中等程度的耦合,它增加了系统的复杂程度。

控制耦合往往是多余的,在把模块适当分解之后通常可以用数据耦合代替它。

去除模块间控制耦合的方法:

(1)将被调用模块内的判定上移到调用模块中进行

(2)被调用模块分解成若干单一功能模块

外部耦合(ExternalCoupling)一组模块都访问同一全局简单变量而不是同一全局数据结构,而且不是通过参数表传递该全局变量的信息,则称之为外部耦合。

公共耦合(CommonCoupling)若一组模块都访问同一个公共数据环境,则它们之间的耦合就称为公共耦合。

公共的数据环境可以是全局数据结构、共享的通信区、内存的公共覆盖区等。

内容耦合(ContentCoupling)如果发生下列情形,两个模块之间就发生了内容耦合

(1)一个模块直接访问另一个模块的内部数据;

(2)一个模块不通过正常入口转到另一模块内部;(3)两个模块有一部分程序代码重迭(只可能出现在汇编语言中);(4)一个模块有多个入口。

14各种内聚(ppt第五章47)

内聚性标志一个模块内各个元素彼此结合的紧密程度,它是信息隐蔽和局部化概念的自然扩展。

简单地说,理想内聚的模块只做一件事情、单一的功能。

内聚性强,标志模块的独立性强;内聚性弱,标志模块的独立性差。

设计时应该力求做到高内聚。

前两个为高等内聚,中间两个为中等内聚,后面三个为低等内聚

功能内聚(FunctionalCohesion)一个模块中各个部分都是完成某一具体功能必不可少的组成部分,或者说该模块中所有部分都是为了完成一项具体功能而协同工作,紧密联系,不可分割的。

则称该模块为功能内聚模块。

功能内聚是最高内聚。

顺序内聚:

(Sequentialcohesion)是指一个模块内的处理元素和同一个功能密切相关,而且这些处理必须顺序执行(顺序依赖)。

顺序内聚也是最高内聚。

通信内聚(CommunicationCohesion)如果一个模块内各功能部分都使用了相同的输入数据,或产生了相同的输出数据,则称之为通信内聚模块。

通常,通信内聚模块是通过数据流图来定义的。

过程内聚(ProceduralCohesion)使用流程图做为工具设计程序时,把流程图中的某一部分划出组成模块,就得到过程内聚模块。

例如,把流程图中的循环部分、判定部分、计算部分分成三个模块,这三个模块都是过程内聚模块。

时间内聚(ClassicalCohesion)时间内聚又称为经典内聚。

这种模块大多为多功能模块,但模块的各个功能的执行与时间有关,通常要求所有功能必须在同一时间段内执行。

例如初始化模块和终止模块。

逻辑内聚(LogicalCohesion)这种模块把几种相关的功能组合在一起,每次被调用时,由传送给模块的判定参数来确定该模块应执行哪一种功能。

偶然内聚(CoincidentalCohesion)当模块内各部分之间没有联系,或者即使有联系,这种联系也很松散,则称这种模块为偶然内聚模块,它是内聚程度最低的模块

总结:

内聚性和耦合性是密切相关的。

高内聚性模块往往是低耦合性;强耦合性的两个模块,必是低内聚性的。

在模块的划分中应尽量用高内聚性低耦合性来确保模块的独立性,进行软件结构设计.

15.软件维护有哪些内容?

维护的内容:

维护内容的多少,依赖于设计水平的高低,设计水平高,尤其设计时就注意到软件的易维护性,则维护的内容和工作量就大为减少。

(4个维护活动包括(改正性维护,适应性维护,完善性维护,预防性维护))

1)改正性维护:

指发现和改正潜藏的软件错误。

分为:

非用户因素的错误的维护;影响系统正常运行的错误的维护;不影响系统正常运行的错误的维护。

约占全部维护活动的17~20%;

(2)适应性维护:

指在硬件环境改善,软件支撑环境改善的情况下,交付使用的软件系统做相应的修改,以适应新的系统环境。

约占全部维护活动的18~25%;

(3)完善性维护:

交付使用后,随着对系统的功能的熟悉,对系统环境的掌握,用户提出了一些新的增加功能和性能的要

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

当前位置:首页 > 高中教育 > 英语

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

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