软件工程(郑人杰版)复习资料
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件工程复习
第一章:软件危机与软件工程
一.软件危机概念,软件危机产生的原因,解决软件危机的方法
二.软件工程概念,软件工程原理,软件工程途径
三.生命周期各阶段及其基本任务
四.软件开发模型如:瀑布模型,演化模型,螺旋模型几种模型的形式与特征
第二章:可行性研究
一.可行性研究的任务,可行性研究的步骤,
二.辅助工具如:数据流图,数据字典的画法及其在分析中的作用
三.成本/效益分析
第三章:需求分析
一.需求分析的任务,需求分析的步骤,ER模型,
二.辅助工具
三.验证软件需求
第四章:总体设计
一.总体设计的任务和过程
二.软件设计原理及概念
模块化,抽象化,信息隐蔽,模块独立性(耦合与内聚)三.启发式规则(模块的作用域与控制域)
四.辅助工具
五.面向数据流的方法
变换型分析与设计
事务型分析与设计
(结构化分析方法建立模型---变换设计与事务设计)
第五章:详细设计
一.结构化程序设计
二.详细设计工具(程序流程图与盒图,PAD图之间的转化)
三.JACKSON程序设计方法
四.程序复杂度的定量度量(McCabe方法)
第六章:编码设计
一.选择程序设计语言
二.程序的编码风格
三.程序设计途径
第七章:测试
一.测试的有关概念
二.软件测试的目的
三.软件测试的策略
四.软件测试用例设计
两种常用的测试方法
白盒测试中逻辑覆盖的各种测试方法(给定程序建立相应的控制流程图,设计测试用例,实现逻辑覆盖)
黑盒测试的各种测试方法(等价类划分、边界值分析等)
五.调试
第八章:维护
一.维护的方法
二.维护的特点
三.维护的过程
四.可维护性
第九章:面向对象的有关概念与特性
面向对象、对象、消息、类和实例、继承、重载、多态
第十章:面向对象方法的开发过程
一.软件开发模型
二.基于复用的面向对象开发过程的几个阶段
三.面向对象应用生存期与面向过程的软件生存期
四.类生存期、类的开发方法
第十一章:面向对象分析与模型化
一.对象模型、动态模型、功能模型的功能描述
二.面向对象分析方法建立对象—关系模型
三.面向对象分析方法建立动态模型
《软件工程》期末复习
第一章第一章软件工程概述
一、一、重点掌握的内容:
软件和软件工程的基本概念
二、二、一般掌握内容:
软件生存周期及软件开发的各种模型。
三、三、主要知识点:
软件:软件定义由以下三部分组成:
(1)(1)在运行中能提供所希望的功能和性能的指令集(即程序);
(2)(2)使程序能够正确运行的数据结构;
(3)(3)描述程序研制过程、方法所用的文挡。
软件是一种产品,同时又是开发和运行产品的载体。作为一种产品,它表达了由计算机硬件体现的计算潜能。作为开发运行产品的载体,软件是计算机工作的基础、信息通信的基础,也是创建和控制其他程序的基础。
软件的特点:①软件是一种逻辑实体,而不是具体的物理实体,因而它具有抽象性。②软件是通过人们的智力活动,把知识与技术转化成信息的一种产品,是在研制、开发中被创造出来的。③在软件的运行和使用期间,没有硬件那样的机械磨损、老化问题。④软件的开发和运行经常受到计算机系统的限制,对计算机系统有着不同程度的依赖性。⑤软件的开发至今尚未完全摆脱手工的开发方式。⑥软件的开发费用越来越高,成本相当昂贵。
软件的分类:软件依据不同的标准,可划分为不同的分类。
软件工程:是指导计算机软件开发和维护的工程学科。采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来。软件工程准则可以概括为六条基本原理:(1)用分阶段的生存周期计划严格管理;(2)坚持进行阶段评审;(3)实行严格的产品控制;(4)采用现代程序设计技术;(5)应能清楚地审查结果;(6)合理安排软件开发小组的人员。
软件危机:指的是软件开发和维护过程中遇到的一系列严重问题。
软件工程的基本内容:软件工程学的内容可包括理论、结构、方法、工具、环境、管理、规范等。
软件生存周期:一个软件从定义到开发、使用和维护,直到最终被弃用,要经历一个漫长的时期,通常把软件经历的这个漫长的时期称为生存周期。软件生存周期一般可分为以下阶段:
·问题定义
·需求分析与可行性研究
·设计
·编码
·测试
·运行与维护
软件生存期也可以分为三个大的阶段:计划阶段。开发阶段和维护阶段。
软件开发模型:软件开发模型是跨越整个软件生存周期的系统开发、运作、维护所实施的全部工作和任务的结构框架。瀑布模型即生存周期模型,由 B.M.Boehm 提出,是软件工程的基础模型。其核心思想是按工序将问题化简,将功能的实现与设计分开,便于分工协作。采用结构化的分析与设计方法,将逻辑实现与物理实现分开。此外,还有螺旋模型、第四代技术模型、原型模型、构件组装模型、混合模型等软件开发模型。
第二章可行性研究
一、重点掌握的内容:
可行性研究的系统流程图
二、二、一般掌握内容:
可行性研究的任务和步骤,成本效益分析
三、主要知识点:
系统流程图:系统流程图是描绘物理系统的传统工具。它的基本思想是用图形符号以黑盒子形式描绘系统里面的每个部件(程序,文件,数据库,表格,人工过程等等)。系统流程图表达的是部件的信息流程,而不表示对信息进行加工处理的控制过程。
系统流程图的功能:1.制作系统流程图的过程是系统分析员全面了解系统业务处理概况的过程,它是系统分析员作进一步分析的依据。2.系统流程图是系统分析员、管理人员、业务操作人员相互交流的工具。3.系统分析员可直接利用系统流程图画出可以实现计算机处理的部分。4.可利用系统流程图来分析业务流程的合理性。
可行性研究的任务:是用最小的代价在尽可能短的时间内确定问题是否能够解决。一般说来,应从经济可行性、技术可行性、运行可行性、法律可行性和开发方案等方面研究可行性。
可行性研究的步骤:可行性研究的步骤分为九个步骤。
成本效益分析:成本/效益分析的目的是要从经济角度分析开发一个特定的新系统是否可行,从而帮助使用部门负责人正确地做出是否投资于这项开发工程的决定。几种度量效益的方法:1.货币的时间价值;2.投资回收期;3.纯收入。
第三章需求分析
一、重点掌握的内容:
需求分析的方法和面向数据流的分析方法。
二、一般掌握内容:
需求分析的任务和原则。
三、主要知识点:
需求分析的方法:需求分析方法由对软件的数据域和功能域的系统分析过程及其表示方法组成,它定义了表示系统逻辑视图和物理视图的方式,大多数的需求分析方法是由数据驱动的,也就是说,这些方法提供了一种表示数据域的机制,分析