好文档 - 专业文书写作范文服务资料分享网站

软件工程-期末考试复习总结知识点+必考题型

天下 分享 时间: 加入收藏 我要投稿 点赞

软件工程复习资料

1. 软件危机产生的原因

(1) 软件不同于硬件,它是计算机系统的逻辑部件而不是物理部件。在写出程序代码并在计算机上试运行之前软件开发过程的进展情况较难衡量。很难检验开发的正确性且软件开发的质量也较难评价。因此控制软件开发过程相当困难。此外在软件运行过程中发现错误很可能是遇到了一个在开发期间引入的但在测试阶段没有能够检测出来的错误,所以软件维护常常意味着修改原来的设计。这样维护的费用十分惊人,客观上使得软件较难维护。

(2) 软件开发的过程是多人分工合作分阶段完成的过程,参与人员之间的沟通和配合十分重要。但是,相当多的软件开发人员对软件的开发和维护存在不少错误的观念。在实践的过程中没有采用工程化的方法,或多或少采用了一些错误的方法和技术。这是造成软件危机的主要原因。

(3) 开发和管理人员只重视开发而轻视问题的定义,使软件产品无法满足用户的要求。对用户的要求没有完整准确的认识就急于编写程序。这是许多软件开发失败的另一主要原因。事实上,许多用户在开始时并不能准确具体地叙述他们的需要。软件人员需要做大量深入细致的调查研究工作,反复多次与用户交流信息,才能真正全面、准确、具体地了解用户的要求。

(4) 软件管理技术不能满足现代软件开发的需要,没有统一的软件质量管理规范。首先是文档缺乏一致性和完整性,从而失去管理的依据。因为程序只是完整软件产品的一个组成部分。一个软件产品必须由一组的配置组成,不能只重视程序而应当特别重视软件配置。其次,由于成本估计不准确,资金分配混乱,人员组织不合理,进度安排无序,导致软件技术无法实施。

(5) 在软件的开发和维护关系问题上存在错误的观念。软件维护工作通常是在软件完成之后进行的,因此是极端艰巨复杂的工作,需要花费很大的代价。所以做好软件的定义工作是降低软件成本,提高软件质量的关键。如果软件人员在定义阶段没有正确、全面地理解用户要求,直到测试阶段才发现软件产品不完全符合用户的需要,这时再修改就为时已晚了。另外,在软件生存期的不同结点进行修改需要付出的代价是很不相同的。在早期引入变更涉及面较小,付出的代价较低,在开发的中期软件配置的许多成分已经完成,引入一个变更可能需要对所有已完成的配置成分都做相应的修改,不仅工作量大,而且逻辑上更复杂。因而付出的代价剧增。在软\已经完成\后再引入变更。则需要付出更高得多的代价。因此,必须把软件维护的观念引入软件开发的各个阶段,建立起软件开发与维护的正确关系。 2.软件工程的概念

软件工程是研究和应用如何以系统性的、规范化的、可定量的过程化方法去开发和维护软件,以及如何把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来。 2. 软件工程的三要素 方法、工具和过程 3. 软件工程的基本原理

(1) 用分阶段的生命周期计划严格管理 (2) 坚持进行阶段评审 (3) 实行严格的产品控制

(4) 采用现代程序设计技术 (5) 结果应能清楚地审查

(6) 开发小组的人员应该少而精

(7) 承认不断改进软件工程实践的必要性 4. 软件生命周期

问题定义 可行性研究 需求分析 总体设计 详细设计

编码和单元测试 综合测试 软件维护

5. 瀑布模型存在的问题

靠文档驱动,用户不能全面地认识动态的软件产品。且过于理想化,可能出现设计上的错误。缺乏灵活性。 6. RUP统一过程的四个阶段

RUP模型将软件开发过程分为4个大的阶段,分别是先启、精化、(构建)和产品化。

7. 可行性分析研究的主要目的

用最小的代价在尽可能小的时间内,确定问题是否能解决,从而确定问题是否值得去解决。

8. 需求分析阶段所有分析方法需要遵守的准则

(1) 必须理解并描述问题的信息域,根据这条准则必须建立数据模型。 (2) 必须定义软件应完成的功能,这条准则要求建立功能模型。 (3) 必须描述作为外部事件结果的软件行为,这条准则要求建立行为准则。 (4) 必须对描述信息,功能和行为的模型进行分解,用层次的方式展示细

节。

9. 需求分析的目的

准确的回答“系统必须做什么”这个问题 10. 数据字典的作用和概念

概念:数据字典是指对数据的数据项、数据结构、数据流、数据存储、处理逻辑、外部实体等进行定义和描述,其目的是对数据流程图中的各个元素做出详细的说明。

作用:数据字典和数据流图共同构成系统的逻辑模型。没有流图数据字典难以发挥作用。没有数据字典,数据流图就不严格。 11. 数据流图的图形元素 → 数据流

□ 数据的源点或终点 变换数据的处理 〓 数据存储

12. E-R图(非画图题)

在ER图中有如下四个成分:

矩形框:表示实体,在框中记入实体名。

菱形框:表示联系,在框中记入联系名。

椭圆形框:表示实体或联系的属性,将属性名记入框中。对于主属性名,则在其名称下划一下划线。

连线:实体与属性之间;实体与联系之间;联系与属性之间用直线相连,并在直线上标注联系的类型。(对于一对一联系,要在两个实体连线方向各写1; 对于一对多联系,要在一的一方写1,多的一方写N;对于多对多关系,则要在两个实体连线方向各写N,M。)

构成E-R图的3个基本要素是实体型、属性和联系,其表示方法为: 实体

一般认为,客观上可以相互区分的事物就是实体,实体可以是具体的人和物,也可以是抽象的概念与联系。关键在于一个实体能与另一个实体相区别,具有相同属性的实体具有相同的特征和性质。用实体名及其属性名集合来抽象和刻画同类实体。在E-R图中用矩形表示,矩形框内写明实体名;比如学生张三、学生李四都是实体。如果是弱实体的话,在矩形外面再套实线矩形。

属性

实体所具有的某一特性,一个实体可由若干个属性来刻画。属性不能脱离实体,属性是相对实体而言的。在E-R图中用椭圆形表示,并用无向边将其与相应的实体连接起来;比如学生的姓名、学号、性别、都是属性。如果是多值属性的话,在椭圆形外面再套实线椭圆。如果是派生属性则用虚线椭圆表示。

联系

联系也称关系,信息世界中反映实体内部或实体之间的关联。实体内部的联系通常是指组成实体的各属性之间的联系;实体之间的联系通常是指不同实体集之间的联系。在E-R图中用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1 : 1,1 : n或m : n)。比如老师给学生授课存在授课关系,学生选课存在选课关系。如果是弱实体的联系则在菱形外面再套菱形

13. 需求分析和软件设计两个阶段的目的

需求分析:确定对系统的综合要求 分析系统的数据要求 导出系统的逻辑模型 修正系统开发计划

软件设计:用比较抽象概括的方式确定目标系统如何完成预定任务。 14. 信息隐藏的概念

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

15. 耦合的概念和分类 概念:耦合性是程序结构中各个模块之间相互关联的度量.它取决于各个模块之间的接口的复杂程度、调用模块的方式以及哪些信息通过接口.

分类:内容耦合,公共耦合,外部耦合,控制耦合,标记耦合,数据耦合,非直接耦合,顺序耦合(耦合度由高到低排列) 16. 内聚的概念和分类

概念:内聚是从功能角度来度量模块内的联系,一个好的内聚模块应当恰好做一件事。

分类:偶然内聚,逻辑内聚,时间内聚,过程内聚,通信内聚,顺序内聚,功能内聚(内聚度由弱到强排列) 17. 模块化的概念

概念:把程序划分成独立命名且可独立访问的模块,每个模块完成一个子功能,把这些模块集成起来构成一个整体,可以完成指定的功能满足用户的需求。

18. 详细设计的任务

确定怎样具体的实现用户需要的软件系统,也就是要设计出程序的蓝图(书上)

(网上)(1)为每个模块进行详细的算法设计。用某种图形、表格、语言等工具将每个模块处理过程的详细算法描述出来。

(2)为模块内的数据结构进行设计。对于需求分析、概要设计确定的概念性的数据类型进行确切的定义。

(3)为数据结构进行物理设计,即确定数据库的物理结构。物理结构主要指数据库的存储记录格式、存储记录安排和存储方法,这些都依赖于具体所使用的数据库系统。

(4)其他设计:根据软件系统的类型,还可能要进行以下设计:

①代码设计。为了提高数据的输入、分类、存储、检索等操作,节约内存空间,对数据库中的某些数据项的值要进行代码设计。

②输入/输出格式设计。

③人机对话设计。对于一个实时系统,用户与计算机频繁对话,因此要进行对话方式、内容、格式的具体设计。

(5)编写详细设计说明书。

(6)评审。对处理过程的算法和数据库的物理结构都要评审。 19. 设计复审的目的和作用 避免后期付出高代价 20. 判定树,判定表

判定树和判定表是用于描述结构化分析方法中(数据加工)环节的工具 21. 结构化程序设计的三种结构 顺序,选择,循环 22. 画N-S图和pad图 Pad:

N-S图

23. 软件测试的目的

发现程序中的错误而执行程序的过程 24. 软件测试的方法(黑盒&白盒)

黑盒:把程序看做一个黑盒子,完全不考虑程序的内部结构和处理过程。也

软件工程-期末考试复习总结知识点+必考题型

软件工程复习资料1.软件危机产生的原因(1)软件不同于硬件,它是计算机系统的逻辑部件而不是物理部件。在写出程序代码并在计算机上试运行之前软件开发过程的进展情况较难衡量。很难检验开发的正确性且软件开发的质量也较难评价。因此控制软件开发过程相当困难。此外在软件运行过程中发现错误很可能是遇到了一个在开发期间引入的但在测试阶段没有能够检测出来的错误
推荐度:
点击下载文档文档为doc格式
5i3j72v1f99lpyv23wwc1symv1joq100759
领取福利

微信扫码领取福利

微信扫码分享