软件工程期末考试总结_软件工程复习点总结

2020-02-28 其他工作总结 下载本文

软件工程期末考试总结由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“软件工程复习点总结”。

一、1、1968年“软件工程”诞生。

2、软件定义:软件是程序、数据 相关文档的完整结合。其中,程序是能够完成预订功能和性能的可执行的指令序列;数据是使程序能够适当的处理信息的数据结构;文档是开发、使用和维护程序所需要的图文资料。

3、为了解决软件危机,技术措施(方法和工具),组织管理措施

4、软件工程:软件工程是(1)把系统的、规范的、可度量的途径应用于软件开发、运行和维护过程,也就是把工程应用于软件;(2)研究(1)中提到的途径。

5、软件工程是从管理和技术两方面

6、软件工程的本质特性:(1)软件工程关注于大型程序的构造;(2)专拣工程的中心课题是控制复杂性;

(3)软件经常变化;(4)开发软件的效率非常重要;(5)和谐的合作是开发软件的关键;(6)软件必须有效的支持它的用户;(7)在软件工程领域中通常由具有一种文化背景的人替具有另外一种文化背景的人创造产品。

7、软件工程的7条基本原理:(1)用分阶段的生命周期计划严格管理;(2)坚持进行阶段评审;(3)实行严格的产品控制;(4)采用现代程序设计技术;(5)结果应能清楚的审查;(6)开发小组的人员应该少而精;(7)承认不断改进软件工程实践的必要性。

8、软件工程包括(技术和管理)两方面内容,是技术与管理紧密结合所形成的工程学科。

9、软件工程方法学包括三个要素:方法、工具和过程。

10、CASE计算机辅助软件工程

11、软件的生命周期由 软件定义、软件开发和运行维护(软件维护)3个时期组成。

12、软件生命周期每个阶段的基本任务:(1)问题定义:必须回答的关键问题是:“要解决的问题是什么?”性质规模总目标;(2)可行性研究:要回答的关键问题是:“对于上一个阶段所确定的问题有行得通的解决办法吗?”可解?值得解?(3)需求分析:这个阶段的任务不是具体的解决问题,而是准确的确定“为了解决这个问题,目标系统必须做什么”,主要是确定目标系统必须具备哪些功能需求规格说明书(4)总体设计:这个阶段必须回答的关键问题是:“概括地说,应该怎样实现目标系统?”(总体设计又称概要设计)软件结构图(5)详细设计:把解法具体化,也就是回答下面这个关键问题:“应该怎样具体的实现这个系统呢?”算法、数据结构(6)编码和单元测试:关键任务是写出正确的容易理解、容易维护的程序模块(7)综合测试:关键任务是通过各种类型的测试(及相应的调试)使软件达到预定的要求(最基本的测试是集成测试和验收测试)。

13、软件过程:是为了获得高质量软件所需要完成的一系列任务的框架,他规定了完成各项任务的工作步骤。用生命周期模型描述它。

15、过程模型:生命周期模型规定了把生命周期划分成哪些阶段及各个阶段的执行顺序,因此,也成为过程模型。

16、瀑布模型是唯一被广泛采用的且现在仍是应用最广泛的过程模型。

17、增量模型:也称渐增模型,适用于能在较短时间内向用户提交可完成部分工作的产品。

18、螺旋模型:适用于内部开发的大规模软件项目。

1、可行性研究的目的:就是用最小的代价在尽可能短的时间内确定问题是否能解决。

2、研究每种解法的可行性从三个方面:(1)技术可行性(2)经济可行性(3)操作可行性

3、系统流程图是概括的描绘 物理系统 的传统工具。

数据流图是系统逻辑功能的图形表示。

4、数据字典的作用:在软件分析和设计过程中给人提供关于数据的描述信息。

5、系统的逻辑模型由(数据流图和数据字典)共同构成,没有数据字典,数据流图就不严格,没有数据流图,数据字典也难于发挥作用。只有数据流图和对数据流图中每个元素的精确定义放在一起,才能共同构成系统的规格说明。

5、数据字典由4类元素的定义组成:数据流、数据流分量、数据存储、处理,但是对数据处理的定义用

其他工具(IPO图或PDL)描述更方便。

1、需求分析:把用户关于软件的期望和想法,转变成软件开发人员需要的关于该软件的规格说明。

2、需求分析过程应该建立的3种模型:数据模型、功能模型和行为模型

3、实体-联系图是用于建立数据模型的图形,数据流图是建立功能模型的基础,状态转换图是行为建模的基础。

4、实体-联系图符号:矩形框代表实体,用连接实体的菱形框表示关系,用椭圆形或圆角矩形表示实体(或关系)的属性,用直线把实体(或关系)与其属性连接起来。

5、状态转换图:初态、终态和中间态。

6、在一张状态图中只能有一个初态,终态有0至多个。初态用实心圆,终态用一对同心圆(内为实心圆),中间态用圆角矩形。

8、IPO图是输入、处理、输出图的简称,它是由美国IBM公司发展完善起来的一种图形工具,能够方便的描绘输入数据、对数据的处理和输出数据之间的关系。

9、从以下4个方面验证软件需求的正确性:(1)一致性 所有需求必须是一致的,任何一条需求不能和其他需求互相矛盾(2)完整性 需求必须是完整的,规格说明书应该包括用户需要的每一个功能或性能(3)现实性 指定的需求应该是用现有的硬件技术和软件技术基本上可以实现的(4)有效性 必须证明需求是正确有效的,确实能解决用户面对的问题

10、总体设计阶段主要内容:设计软件结构和设计数据库

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

12、耦合设计原则:尽量少使用数据耦合,少用控制耦合和特征耦合,限制公共环境耦合的范围,完全不用内容耦合13、内聚:内聚标志着一个模块内各个元素彼此结合的紧密程度。功能内聚10偶然内聚014、“高内聚,低耦合”

15、启发规则:(1)改进软件结构提高模块独立性(2)模块规模应该适中(3)深度、宽度、扇出和扇入都应适当【深度:表示软件结构中控制的层数,它往往能粗略的标志一个系统的大小和复杂程度;宽度:是软件结构内同一个层次上的模块总数的最大值;扇出:是一个模块直接控制的模块数目;扇入:表明有多少个上级模块直接调用它】(4)模块的作用域应该在控制域之内【模块的作用域:受该模块内一个判定影响的所有模块的集合。模块的控制域:是这个模块本身以及所有直接或间接从属于它的模块集合。】(5)力争降低模块接口的复杂程度(6)设计单入口单出口的模块(7)模块功能应该可以预测。

16、描绘软件结构的图形工具:层次图和结构图。

17、层次图用来描绘软件的层次结构(作为描绘软件结构的文档)。

18、信息流的两种类型:变换流和事务流

19、变换流:信息沿输入通路进入系统,同时由外部形式变换成内部形式,进入系统的信息通过变换中心,经过加工处理以后再沿输出通路变换成外部形式离开软件系统。当系统具有这些特征时,这种信息流就叫做变换流。

20、事务流:数据沿输入通路到达一个处理T,这个处理根据输入数据的类型在若干个动作序列中选出一个来执行,这类数据成为事务流,处理T叫做事务中心。

六、详细设计

21、结构程序设计的经典定义:如果一个程序的代码块仅仅通过顺序、选择和循环这3种基本控制结构进行连接,并且每个代码块只有一个入口和一个出口,则称这个程序是结构化的。

七、实现

1、高级语言写程序比用汇编语言写程序生产率可以提高好几倍,而且高级语言写的程序容易阅读,容易

测试,容易调试,容易维护。所以高级语言明显优于汇编语言。

2、实现:编码和测试统称为实现。

3、编码:就是把软件设计结果翻译成用某种程序设计语言书写的程序

4、软件测试:是保证软件质量的关键步骤,它是对软件规格说明、设计和编码的最后复审。

5、测试的目的:在软件投入生产性运行之前,尽可能多的发现软件中的错误(发现软件中的错误)。

6、调试是在测试发现错误之后排除错误的过程。

7、软件测试的目标或定义:(1)测试是为了发现程序中的错误而执行程序的过程。(2)好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案(3)成功的测试是发现了至今为止尚未发现的错误的测试。

8、测试的目的是暴露程序中的错误由程序的编写者自己进行测试是不恰当的,测试阶段通常由其他人员组成测试小组来完成测试工作。

9、逻辑覆盖:是对一系列测试过程的总称这组测试过程逐渐进行越来越完整的通路测试。

10、语句覆盖:选择足够多的测试数据,使被测程序中每个语句至少执行一次(语句覆盖是很弱的逻辑覆盖)。

11、判定覆盖(分支覆盖):不仅每个语句必须至少执行一次,而且每个判定的没种可能的结果都应该至少执行一次,也就是每个判定的每个分支都至少执行一次。(比语句覆盖强)

12、条件覆盖:不仅每个语句至少执行一次,而且使判定表达式中的每个条件都取到各种可能的结果(比判定覆盖强)。

13、判定/条件覆盖:选取足够多的测试数据,使得判定表达式中的每个条件都取到各种可能的值,而且每个判定表达式也都取到各种可能的结果(有时不必条件判定强)。

14、条件组合覆盖:是更强的逻辑覆盖,它要求选取足够多的测试数据,使得每个判定表达式中条件的各种可能组合都至少出现一次。

15、点覆盖:如果连通图G的子图G’是连通的,而且包含G的所有节点,则称G’是G 的点覆盖。(要求:选取足够多的测试数据,使得程序执行路径至少经过流图的每个节点一次(与语句覆盖标准相同)。)

16、边覆盖:如果连通图G的子图G”是连通的,而且包含G的所有边,则称G”是G 的点覆盖(要求:选取足够多的测试数据,使得程序执行路径至少经过流图中每条边一次(与判定覆盖相同)。)。

17、路径覆盖:选取足够多的测试数据,使程序的每条可能路径都至少执行一次。

18、控制结构测试包括:基本路径测试、条件测试、循环测试。

19、黑盒测试力图发现下述类型的错误:(1)功能不正确或遗漏了功能(2)界面错误(3)数据结构错误或外部数据库访问错误(4)性能错误(5)初始化和终止错误

20、黑盒测试外部,白盒测试内部。

八、维护

软件维护就是在软件已经交付使用后,为了改正错误或满足新的需要而修改软件的过程。

把诊断和改正错误的过程称为改正性维护。

适应性维护:为了和变化了的环境适当的配合而进行的修改软件的活动,是即必要有经常的维护活动。完善性维护、预防性维护。

《软件工程期末考试总结.docx》
将本文的Word文档下载,方便收藏和打印
推荐度:
软件工程期末考试总结
点击下载文档
相关专题 软件工程复习点总结 软件工程 期末考试 软件工程复习点总结 软件工程 期末考试
[其他工作总结]相关推荐
    [其他工作总结]热门文章
      下载全文