软件制造工程 第一章软件制造工程的概念
软件制造工程 第一章 软件制造工程的概念
知识回顾 软件 程序+文档 ■软件的生命周期 软件计划、需求分析、软件设计 软件编码、软件测试、运行维护 软件工程 采用工程化方法把软件作为工程产品按 软件生命周期进行生产
知识回顾 ◼ 软件 ◼ 软件的生命周期 ◼ 软件工程 程序+文档 采用工程化方法把软件作为工程产品按 软件生命周期进行生产 软件计划、需求分析、软件设计、 软件编码、软件测试、运行维护
软件生命周期的另一种划分 需求定义分析 设计工程 制造工程 测试工程 ■运行与维护
软件生命周期的另一种划分 ◼ 需求定义分析 ◼ 设计工程 ◼ 制造工程 ◼ 测试工程 ◼ 运行与维护
软件制造工程 程序设计 ■程序编码 ■单元测试
软件制造工程 ◼ 程序设计 ◼ 程序编码 ◼ 单元测试
软件制造工程的位置 需求分析工程 设计工程 用户需求 转化为软 制造工程 软件开发过程 件产品所 需的全部 测试工程 软件工程 活动的集 应用安装 运行维护
软件制造工程的位置 软 件 开 发 过 程 需求分析工程 设计工程 制造工程 测试工程 应用安装 运行维护 用户需求 转化为软 件产品所 需的全部 软件工程 活动的集 合
软件开发过程的主要作业内容 开发工程 目的和处理内容 需求 确定系统开发的目的,做出软件系统的开发计划。 分析 需求分析 在需求分析基础上明确系统构想模型和处理要求,作出系统 工程 系统计划 功能概要说明,确定系统能够实现的范围 外部设计 系统功能概要处理的具体化,作出用户看得到的部分系统要 (概要设计) 件的基本设计(如系统窗体显示和外部接口等方面的设计) 设计 工程 内部设计 进行数据库及其文件系统的设计。 (详细设计) 进行系统内部结构及其处理要求的详细设计(程序处理概要 ,模块功能说明等)。 制造 程序制造 按照各个程序的处理概要,做出程序单元设计说明书。 工程 (程序设计、程序编 按照程序单元设计说明书,进行程序编码 制、单元测试) 实施程序单元测试,验证各个程序单元的处理功能。 测试 软件测试 为提高软件质量,按以下顺序进行测试。 组合测试:各个子系统内的程序单元的组合测试。 工程 (组合测试、系统测 试、运行测试) 系统测试:各个子系统连接起来,全系统的综合测试 ·运行测试:在用户环境下进行实际运行环境的测试。 处理在用户环境中运行时所发现的问题 应用 移植安装 对与新系统有关的所有人员(客户)进行新系统培训。 安装 运行评价 实施导入新系统作业,满足项目初期所确立的需求,使客户 满意
软件开发过程的主要作业内容 开发工程 目的和处理内容 需求 分析 工程 需求分析 系统计划 • 确定系统开发的目的,做出软件系统的开发计划。 • 在需求分析基础上明确系统构想模型和处理要求,作出系统 功能概要说明,确定系统能够实现的范围。 设计 工程 外部设计 (概要设计) • 系统功能概要处理的具体化,作出用户看得到的部分系统要 件的基本设计(如系统窗体显示和外部接口等方面的设计)。 内部设计 (详细设计) • 进行数据库及其文件系统的设计。 • 进行系统内部结构及其处理要求的详细设计(程序处理概要 ,模块功能说明等)。 制造 工程 程序制造 (程序设计、程序编 制、单元测试) • 按照各个程序的处理概要,做出程序单元设计说明书。 • 按照程序单元设计说明书,进行程序编码。 • 实施程序单元测试,验证各个程序单元的处理功能。 测试 工程 软件测试 (组合测试、系统测 试、运行测试) • 为提高软件质量,按以下顺序进行测试。 • 组合测试:各个子系统内的程序单元的组合测试。 • 系统测试:各个子系统连接起来,全系统的综合测试。 • 运行测试:在用户环境下进行实际运行环境的测试。 应用 安装 移植安装 运行评价 • 处理在用户环境中运行时所发现的问题。 • 对与新系统有关的所有人员(客户)进行新系统培训。 • 实施导入新系统作业,满足项目初期所确立的需求,使客户 满意
软件制造工程的主要作业内容 ■如图1.2软件工程的主要内容
软件制造工程的主要作业内容 ◼ 如图1.2软件工程的主要内容
程序设计过程 程序设计 程序单元内的功能模块分割 详细设计书理解 模块功能说明及处理内容说明 程序设计作业实施 程序功能层次图及模块关联说明 程序设计书作成 定义公共变量和重要变量
程序设计过程 程序设计 详细设计书理解 程序设计作业实施 程序设计书作成 程序单元内的功能模块分割 模块功能说明及处理内容说明 程序功能层次图及模块关联说明 定义公共变量和重要变量
程序编制 程序编制 详细设计书或 程序设计书的理解 PCL作成(程序测试清单) 程序编制
程序编制 程序编制 详细设计书或 程序设计书的理解 PCL 作成(程序测试清单) 程序编制
单元测试 又称为“模块测试” 利用PCL确定程序的检测点 利用各种数据验证模块功能 通常由编码的程序员担任此工作
单元测试 ◼ 又称为“模块测试” ◼ 利用PCL确定程序的检测点 ◼ 利用各种数据验证模块功能 ◼ 通常由编码的程序员担任此工作