全国计算机等级考试 二级公共基础知识 (4)
2003.11. 全国计算机等级考试 二级公共基础知识 (4)
4.软件工程基础
4.软件工程基础
4.0内容 ●软件工程基本概念,软件生命周期概念, 软件工具与软件开发环境 ●结构化分析方法,数据流图,数据字典, 软件需求规格说明书 结构化设计方法,总体设计与详细设计。 ●软件测试的方法,白盒测试与黑盒测试, 测试用例设计,软件测试的实施,单元测 试、集成测试和系统测试 程序的调试,静态调试与动态调试
4.0 内容 ⚫ 软件工程基本概念,软件生命周期概念, 软件工具与软件开发环境。 ⚫ 结构化分析方法,数据流图,数据字典, 软件需求规格说明书。 ⚫ 结构化设计方法,总体设计与详细设计。 ⚫ 软件测试的方法,白盒测试与黑盒测试, 测试用例设计,软件测试的实施,单元测 试、集成测试和系统测试。 ⚫ 程序的调试,静态调试与动态调试
4.1基本概念 软件工程 ○软件工程是指应用计算机科学、数学及管理科学 等原理,以工程化的原则和方法来解决软件问题 的工程。其目的是提高软件生产率、提高软件质 量、降低软件成本。 2.软件危机 ○早期的软件主要指程序,采用个体工作方式,缺 少相关文档,质量低,维护困难,这些问题称为 “软件危机”,软件工程概念的岀现源自于软件 危机
4.1 基本概念 1. 软件工程 软件工程是指应用计算机科学、数学及管理科学 等原理,以工程化的原则和方法来解决软件问题 的工程。其目的是提高软件生产率、提高软件质 量、降低软件成本。 2. 软件危机 早期的软件主要指程序,采用个体工作方式,缺 少相关文档,质量低,维护困难,这些问题称为 “软件危机”,软件工程概念的出现源自于软件 危机
3.软件生命周期 ○将软件产品从提出、实现、使用维护到停止使用退役的 过程称为软件生命周期 分为软件定义、软件开发及软件运行维护3个阶段。维护 是持续时间最长,花费代价最大的一个阶段,软件工程 学的一个目的就是提高软件的可维护性,降低维护代价 06个活动阶段 可行性研究与计划制定:确定系统的总体目标。参加人员 有用户、项目负责人和系统分析员,产生文档有可行性分 析报告、项目计划书等 需求分析:确定系统的逻辑模型。参加人员有用户、项目 负责人和系统分析员。产生文档为需求规格说明书,其作 用:(1)便于用户、开发人员进行理解交流;(2)反映 用户问题的结构,可以作为软件开发工作的基础和依据; (3)作为确认测试和验收的依据
3. 软件生命周期 将软件产品从提出、实现、使用维护到停止使用退役的 过程称为软件生命周期 分为软件定义、软件开发及软件运行维护3个阶段。维护 是持续时间最长,花费代价最大的一个阶段,软件工程 学的一个目的就是提高软件的可维护性,降低维护代价 6个活动阶段 ⚫ 可行性研究与计划制定:确定系统的总体目标。参加人员 有用户、项目负责人和系统分析员,产生文档有可行性分 析报告、项目计划书等 ⚫ 需求分析:确定系统的逻辑模型。参加人员有用户、项目 负责人和系统分析员。产生文档为需求规格说明书,其作 用:(1)便于用户、开发人员进行理解交流;(2)反映 用户问题的结构,可以作为软件开发工作的基础和依据; (3)作为确认测试和验收的依据
●软件设计:包括软件结构设计、数据设计、接口设 计和过程设计。其中结构设计是定义软件系统各部 件之间的关系;数据设计是将分析时创建的模型转 化为数据结构的定义;接口设计是描述软件内部 软件和操作系统之间及软件与人之间如何通信;过 程设计则是把系统结构部件转换成软件的过程性描 述。软件设计分概要设计和详细设计。参加人员有 系统分析员和高级程序员。产生的文档有设计规格 说明书。 ●编码:编程。高级程序员和程序员产生源程序清单 测试:由另一部门的高级程序员或系统分析员产生 软件测试计划和软件测试报 运行维护
⚫ 软件设计:包括软件结构设计、数据设计、接口设 计和过程设计。其中结构设计是定义软件系统各部 件之间的关系;数据设计是将分析时创建的模型转 化为数据结构的定义;接口设计是描述软件内部、 软件和操作系统之间及软件与人之间如何通信;过 程设计则是把系统结构部件转换成软件的过程性描 述。软件设计分概要设计和详细设计。参加人员有 系统分析员和高级程序员。产生的文档有设计规格 说明书。 ⚫ 编码:编程。高级程序员和程序员产生源程序清单 ⚫ 测试:由另一部门的高级程序员或系统分析员产生 软件测试计划和软件测试报告 ⚫ 运行维护
4.软件工程三要素 方法:完成软件工程项目的技术手段 ○工具:支持软件的开发、管理、文档生成 ○过程:支持软件开发的各个环节的控制、管理 5.软件工程的理论和技术研究的内容 ○软件开发技术和软件工程管理 6.软件工程的目标 O在给定的成本、进度的前提下,开发出具有有效 性、可靠性、可理解性、可维护性、可适应性、 可移植性、可追踪性和可互操作性且满足用户需 求的产品 ○软件工程鼓励研制和采用各种先进的软件开发方 法、工具和环境
4. 软件工程三要素 方法:完成软件工程项目的技术手段 工具:支持软件的开发、管理、文档生成 过程:支持软件开发的各个环节的控制、管理 5. 软件工程的理论和技术研究的内容 软件开发技术和软件工程管理 6. 软件工程的目标 在给定的成本、进度的前提下,开发出具有有效 性、可靠性、可理解性、可维护性、可适应性、 可移植性、可追踪性和可互操作性且满足用户需 求的产品 软件工程鼓励研制和采用各种先进的软件开发方 法、工具和环境
7.软件工具和软件开发环境 o软件工具(CASE):用来辅助软件开、运行、维 护、管理、支持等过程中的活动的软件 ○软件开发环境:支持软件产品开发的软件系统, 它由软件工具集和环境集成机制构成
7. 软件工具和软件开发环境 软件工具(CASE):用来辅助软件开、运行、维 护、管理、支持等过程中的活动的软件 软件开发环境:支持软件产品开发的软件系统, 它由软件工具集和环境集成机制构成
4.2结构化分析方法 基本思想 ○将系统分析看成工程项目,有计划、有步骤地进行工作 ●开发策略 ○自顶向下,逐层分解 分析结果 一套分层的数据流图(DFD):用来描述数据流从输入到输出的 变换流程 一个数据字典DD):用来描述DFD中的每个数据流、文件以 及组成数据流或文件的数据项 ○一组小说明(加工逻辑说明):用来描述每个基本加工的加 工逻辑
4.2 结构化分析方法 ⚫ 基本思想 将系统分析看成工程项目,有计划、有步骤地进行工作。 ⚫ 开发策略 自顶向下,逐层分解 ⚫ 分析结果 一套分层的数据流图(DFD):用来描述数据流从输入到输出的 变换流程 一个数据字典(DD):用来描述DFD中的每个数据流、文件以 及组成数据流或文件的数据项 一组小说明(加工逻辑说明):用来描述每个基本加工的加 工逻辑
4.3结构化设计方法、总体设计和详细设计 4.3.1结构化设计方法 ○结构图 ●基本成分:模块、调用、输入输出数据 ●模块用矩形表示,模块间用线段连接,表示调用关 系,输入输出数据可写在调用线段的旁边 O信息流的类型 ●变换流 ●事务流
4.3 结构化设计方法、总体设计和详细设计 4.3.1 结构化设计方法 结构图 ⚫基本成分:模块、调用、输入输出数据 ⚫模块用矩形表示,模块间用线段连接,表示调用关 系,输入输出数据可写在调用线段的旁边 信息流的类型 ⚫变换流 ⚫事务流