chapter 8 SOFTWARE QUALITY ASSURANCE The software engineering approach described in this book works toward a single goal: to produce high-quality software. What is software quality? 8. 1 Quality Concept 就象没有两片雪花是相同的一样,所有 的工程和制造产品都会表现出差异。这是自 然界的规律。软件也一样 差异控制是质量控制的核心。 质量控制是为了保证每一件工作产品都满足对 它的需求而应用于整个开发周期中的一系列 审查、复审和测试。度量和反馈相结合
CHAPTER 8 SOFTWARE QUALITY ASSURANCE The software engineering approach described in this book works toward a single goal: to produce high –quality software. What is software quality? 8.1 Quality Concept 就象没有两片雪花是相同的一样, 所有 的工程和制造产品都会表现出差异。这是自 然界的规律。软件也一样。 差异控制是质量控制的核心。 质量控制是为了保证每一件工作产品都满足对 它的需求而应用于整个开发周期中的一系列 审查、复审和测试。度量和反馈相结合
chapter 8 SOFTWARE QUALITY ASSURANCE 质量控制视为整个开发过程的一部分 所有的工作产品都具有定义好的和可度量 的规约 8.1.3质量保证 质量保证由管理层的审计和报告功能构成。 质量保证的目标是为管理层提供产品质量信 息。发现质量不符合预定目标,则由管理层 负责解决这一问题 ≥8.1.4质量的成本 质量成本包括所有由质量或者进行与质量
CHAPTER 8 SOFTWARE QUALITY ASSURANCE 质量控制视为整个开发过程的一部分。 所有的工作产品都具有定义好的和可度量 的规约。 8.1.3 质量保证 质量保证由管理层的审计和报告功能构成。 质量保证的目标是为管理层提供产品质量信 息。发现质量不符合预定目标,则由管理层 负责解决这一问题。 8.1.4 质量的成本 质量成本包括所有由质量或者进行与质量
chapter 8 SOFTWARE QUALITY ASSURANCE 有关的活动所导致的成本。预先设定成本基线, 标识降低成本的机会。 质量成本可以被划分为与预防、鉴定及失败相 关的成本。 预防成本:质量计划、正式技术复审、测试设 备、培训等 鉴定成本:过程内和过程间审查、设备校准和 维护、测试等 失败成本:包括内部失败成本和外部失败成本。 内部失败成本:产品交付用户以前发现错误而 引发的成本。包括返工、修复、失败模式分 析
CHAPTER 8 SOFTWARE QUALITY ASSURANCE 有关的活动所导致的成本。预先设定成本基线, 标识降低成本的机会。 质量成本可以被划分为与预防、鉴定及失败相 关的成本。 预防成本:质量计划、正式技术复审、测试设 备、培训等。 鉴定成本:过程内和过程间审查、设备校准和 维护、测试等。 失败成本:包括内部失败成本和外部失败成本。 内部失败成本:产品交付用户以前发现错误而 引发的成本。 包括返工、修复、失败模式分 析
chapter 8 SOFTWARE QUALITY ASSURANCE 外部失败成本:产品交付用户以后发现错 误而引发的成本。包括解决用户的抱怨、 退换产品、求助电话支持和保修工作。 改正一个错误的 相对成本 10倍15-40倍 3-6倍 1倍 需求分析设计编码开发测试
CHAPTER 8 SOFTWARE QUALITY ASSURANCE 外部失败成本:产品交付用户以后发现错 误而引发的成本。包括解决用户的抱怨、 退换产品、求助电话支持和保修工作。 改正一个错误的 相对成本 需求分析 设计 编码 开发测试 1倍 3--6倍 10倍 15--40倍
chapter 8 SOFTWARE QUALITY ASSURANCE
CHAPTER 8 SOFTWARE QUALITY ASSURANCE
chapter 8 SOFTWARE QUALITY ASSURANCE 82质量运动 全面质量管理 8.3软件质量保证 生产高质量的软件是一个十分重要的目标 1)软件需求是进行质量度量的基础,与需求不 →符就是质量不高。 一2)指定的标准定义了一组指导软件开发的准则, 就极有可能导致质量不高 3)通常有一组隐含需求是不被提及的(如易维 护性需求)。如果软件符合了明确的需求却 没有满足隐含需求,软件质量仍然值得怀疑
CHAPTER 8 SOFTWARE QUALITY ASSURANCE 8.2 质量运动 全面质量管理。 8.3 软件质量保证 生产高质量的软件是一个十分重要的目标。 1)软件需求是进行质量度量的基础,与需求不 符就是质量不高。 2)指定的标准定义了一组指导软件开发的准则, 就极有可能导致质量不高。 3)通常有一组隐含需求是不被提及的(如易维 护性需求)。如果软件符合了明确的需求却 没有满足隐含需求,软件质量仍然值得怀疑
chapter 8 SOFTWARE QUALITY ASSURANCE 831背景 软件质量保证的定义是为了保证软件质量 而必需的有计划的和系统化的行动模式。 在计算机发展的早期,质量保证曾经只由 程序员承担。而今天,则由软件工程师、项 目管理者、客户、销售人员和SQA小组的成 员。SQA小组充当客户在公司内部的代表。 SQA小组的成员必须以客户的观点看待软件
CHAPTER 8 SOFTWARE QUALITY ASSURANCE 8.3.1 背景 软件质量保证的定义是为了保证软件质量 而必需的有计划的和系统化的行动模式。 在计算机发展的早期,质量保证曾经只由 程序员承担。而今天,则由软件工程师、项 目管理者、客户、销售人员和SQA小组的成 员。SQA小组充当客户在公司内部的代表。 SQA小组的成员必须以客户的观点看待软件
chapter 8 SOFTWARE QUALITY ASSURANCE 8.32SQA活动 软件质量保证: 软件工程师:做技术工作。正式技 术复审、执行计划周密的软件测试 SQA小组:计划、监督、记录、分析及 报告工作。辅助软件工程小组得到高质 量的最终产品 参与开发该项目的软件过程描述
CHAPTER 8 SOFTWARE QUALITY ASSURANCE 8.3.2 SQA活动 软件质量保证: 软件工程师:做技术工作。正式技 术复审、执行计划周密的软件测试 SQA小组:计划、监督、记录、分析及 报告工作。辅助软件工程小组得到高质 量的最终产品。 参与开发该项目的软件过程描述
chapter 8 SOFTWARE QUALITY ASSURANCE 二复审各项软件工程活动,对其是否符合定义好 的软件过程进行核实 审计指定的软件工作产品,对其是否符合定义 好的软件过程中的响应部分进行核实。 确保软件工作及工作产品中的偏差已被记录在 案,并根据预定规程进行处理 记录所有不符合的部分,并报告给高级管理者
CHAPTER 8 SOFTWARE QUALITY ASSURANCE 复审各项软件工程活动,对其是否符合定义好 的软件过程进行核实。 审计指定的软件工作产品,对其是否符合定义 好的软件过程中的响应部分进行核实。 确保软件工作及工作产品中的偏差已被记录在 案,并根据预定规程进行处理。 记录所有不符合的部分,并报告给高级管理者
chapter 8 SOFTWARE QUALITY ASSURANCE 84软件复审 软件复审是软件工程中的过滤器。起到发 现软件过程各个点上的错误的作用。如净化 分析、设计和编码中所产生的软件工作产品。 一次复审是一种借助于一组人的差异性来达到 目的方法; 1)指出一个人或小组生产的产品所需进行的改 造 2)确定产品中不需要或者不希望改进的部分。 3)得到与没有进行复审相比更加一致,或者至
CHAPTER 8 SOFTWARE QUALITY ASSURANCE 8.4 软件复审 软件复审是软件工程中的过滤器。起到发 现软件过程各个点上的错误的作用。如净化 分析、设计和编码中所产生的软件工作产品。 一次复审是一种借助于一组人的差异性来达到 目的方法; 1)指出一个人或小组生产的产品所需进行的改 造。 2)确定产品中不需要或者不希望改进的部分。 3)得到与没有进行复审相比更加一致,或者至