




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、软件工程 第三部分 质量管理 质量管理涉及问题 高质量软件的一般特性是什么?高质量软件的一般特性是什么? 如何评审质量,如何有效地进行质量评审?如何评审质量,如何有效地进行质量评审? 什么是软件质量保证?什么是软件质量保证? 软件测试需要应用什么策略?软件测试需要应用什么策略? 使用什么方法才能设计出有效的测试用例?使用什么方法才能设计出有效的测试用例? 有没有确保软件正确性的可行方法?有没有确保软件正确性的可行方法? 如何管理和控制软件开发过程中经常发生的变如何管理和控制软件开发过程中经常发生的变 更?更? 第十一章 质量概念 质量概念 如果软件团队在所有软件工程活动中强调如果软件团队在所有
2、软件工程活动中强调 质量,就可以减少很多必需的返工,结果质量,就可以减少很多必需的返工,结果 是降低了成本,更为重要的是缩短了上市是降低了成本,更为重要的是缩短了上市 时间。时间。 为实现高质量软件,必须做为实现高质量软件,必须做4项活动:已项活动:已 验证的软件过程和实践、扎实的项目管理、验证的软件过程和实践、扎实的项目管理、 全面的质量控制和具有质量保证基础设施。全面的质量控制和具有质量保证基础设施。 质量概念 Ric01提到:尽管意愿良好,有缺陷的提到:尽管意愿良好,有缺陷的 代码仍然是软件工业的幽灵,计算机系统代码仍然是软件工业的幽灵,计算机系统 的故障时间高达的故障时间高达45%,美
3、国公司去年花,美国公司去年花 费了大约一千亿美元,用在了丧失的生产费了大约一千亿美元,用在了丧失的生产 率和修补上,这还不包括使客户生气而失率和修补上,这还不包括使客户生气而失 去了这些客户的代价。去了这些客户的代价。 质量概念 怎样差的软件才是劣质软件呢?定义是怎样差的软件才是劣质软件呢?定义是 不同的,专家认为,只要每不同的,专家认为,只要每1000行代码行代码 有有3或或4处缺陷就能使程序执行得很差,大处缺陷就能使程序执行得很差,大 多数程序员每写多数程序员每写10行代码大约注入一个错行代码大约注入一个错 误,许多商业产品有数百万行代码,软件误,许多商业产品有数百万行代码,软件 经销商至
4、少将开发预算的一半花费在了测经销商至少将开发预算的一半花费在了测 试时修改错误上。试时修改错误上。 质量概念 如今,软件质量仍然是个问题,但是应该如今,软件质量仍然是个问题,但是应该 责备谁?客户责备开发人员,认为粗心的责备谁?客户责备开发人员,认为粗心的 实践导致低质量的软件。开发人员责备客实践导致低质量的软件。开发人员责备客 户,认为不合理的交工日期以及连续不断户,认为不合理的交工日期以及连续不断 的变更使开发人员在还没有完全验证时就的变更使开发人员在还没有完全验证时就 交付了软件。交付了软件。 什么是质量 质量是一个复杂多面的概念。可以从质量是一个复杂多面的概念。可以从5个个 不同的观点
5、来描述。玄妙观点认为质量是不同的观点来描述。玄妙观点认为质量是 马上就能识别的东西,却不能清楚地定义。马上就能识别的东西,却不能清楚地定义。 用户观点是从最终用户的具体目标来说的。用户观点是从最终用户的具体目标来说的。 如果产品达到这些目标,就显示出质量。如果产品达到这些目标,就显示出质量。 制造商观点是从产品的原始规格说明的角制造商观点是从产品的原始规格说明的角 度来定义质量,如果产品符合规格说明,度来定义质量,如果产品符合规格说明, 就显示出质量。产品观点认为质量是产品就显示出质量。产品观点认为质量是产品 的固有属性。最后,基于价值的观点根据的固有属性。最后,基于价值的观点根据 客户愿意为
6、产品支付多少钱来评测质量。客户愿意为产品支付多少钱来评测质量。 什么是质量 在软件开发中,设计质量包括设计满足需在软件开发中,设计质量包括设计满足需 求模型规定的功能和特性的程度。符合质量求模型规定的功能和特性的程度。符合质量 关注的是实现遵从设计的程度以及所得到的关注的是实现遵从设计的程度以及所得到的 系统满足需求和性能目标的程度。系统满足需求和性能目标的程度。 用户满意度用户满意度=合格的产品合格的产品+好的质量好的质量+按预按预 算和进度安排交付算和进度安排交付 软件质量 软件质量可以这样定义:在一定程度上应用有软件质量可以这样定义:在一定程度上应用有 效的软件过程,创造有用的产品,为生
7、产者和使效的软件过程,创造有用的产品,为生产者和使 用者提供明显的价值。该定义强调了以下用者提供明显的价值。该定义强调了以下3个重个重 要方面:要方面: 有效的软件过程为生产高质量的软件产品奠定了基有效的软件过程为生产高质量的软件产品奠定了基 础。础。 有用的产品是指交付最终用户要求的内容、功能和有用的产品是指交付最终用户要求的内容、功能和 特征,但最重要的是,以可靠、无误的方式交付这特征,但最重要的是,以可靠、无误的方式交付这 些东西。些东西。 通过为软件产品的生产者和使用者增值,高质量软通过为软件产品的生产者和使用者增值,高质量软 件为软件组织和最终用户群体带来了收益。件为软件组织和最终用
8、户群体带来了收益。 Garvin的质量维度 性能质量性能质量。软件是否交付了所有的内容、功能。软件是否交付了所有的内容、功能 和特性,这些内容、功能和特性在某种程度上是和特性,这些内容、功能和特性在某种程度上是 需求模型所规定的一部分,可以为最终用户提供需求模型所规定的一部分,可以为最终用户提供 价值。价值。 特性质量特性质量。软件是否首次提供了使最终用户惊。软件是否首次提供了使最终用户惊 喜的特性?喜的特性? 可靠性可靠性。软件是否无误地提供了所有的特性和。软件是否无误地提供了所有的特性和 能力,当需要(使用该软件)时,它是否是可用能力,当需要(使用该软件)时,它是否是可用 的,是否无错地提
9、供了功能?的,是否无错地提供了功能? 符合性符合性。软件是否遵从本地的和外部的与应用。软件是否遵从本地的和外部的与应用 领域相关的软件标准,是否遵循了事实存在的设领域相关的软件标准,是否遵循了事实存在的设 计惯例和编码惯例?计惯例和编码惯例? Garvin的质量维度 耐久性耐久性。是否能够对软件进行维护或改正,而。是否能够对软件进行维护或改正,而 不会粗心大意地产生料想不到的副作用?随着时不会粗心大意地产生料想不到的副作用?随着时 间的推移,变更会使错误率或可靠性变得更糟吗?间的推移,变更会使错误率或可靠性变得更糟吗? 适用性适用性。软件能在可接受的短时期内完成维护。软件能在可接受的短时期内完
10、成维护 和改正吗?技术支持人员能得到所需的所有信息和改正吗?技术支持人员能得到所需的所有信息 以进行变更和修正缺陷吗?以进行变更和修正缺陷吗? 审美审美。美的东西具有某种优雅、特有的流畅和。美的东西具有某种优雅、特有的流畅和 醒目的外在,这些都是很难量化的,但显然是不醒目的外在,这些都是很难量化的,但显然是不 可缺少的。美的软件具有这些特征。可缺少的。美的软件具有这些特征。 感知感知。在某些情况下,一些偏见将影响人们对。在某些情况下,一些偏见将影响人们对 质量的感知。质量的感知。 McCall的质量因素 McC77提出了影响软件质量因素的一提出了影响软件质量因素的一 种有用的分类。这些软件质量
11、因素侧重于种有用的分类。这些软件质量因素侧重于 软件产品的软件产品的3个重要方面:操作特性、承个重要方面:操作特性、承 受变更的能力以及对新环境的适应能力,受变更的能力以及对新环境的适应能力, 如图如图11-1所示。所示。 McCall的质量因素 图11-1McCall的软件质量因素 McCall的质量因素 正确性正确性:程序满足其需求规格说明和完成用户:程序满足其需求规格说明和完成用户 任务目标的程度。任务目标的程度。 可靠性可靠性:期望程序以所要求的精度完成其预期:期望程序以所要求的精度完成其预期 功能的程度。功能的程度。 效率效率:程序完成其功能所需的计算资源和代码:程序完成其功能所需的
12、计算资源和代码 的数量。的数量。 完整性完整性:对未授权的人员访问软件或数据的可:对未授权的人员访问软件或数据的可 控程度。控程度。 易用性易用性:对程序进行学习、操作、准备输入和:对程序进行学习、操作、准备输入和 解释输出所需要的工作量。解释输出所需要的工作量。 McCall的质量因素 维护性维护性:查出和修复程序中的一个错误所需要:查出和修复程序中的一个错误所需要 的工作量。的工作量。 灵活性灵活性:修改一个运行的程序所需的工作量。:修改一个运行的程序所需的工作量。 易测试性易测试性:测试程序以确保它能完成预期功能:测试程序以确保它能完成预期功能 所需要的工作量。所需要的工作量。 可移植性
13、可移植性:将程序从一个硬件和(或)软件系:将程序从一个硬件和(或)软件系 统环境移植到另一个环境所需要的工作量。统环境移植到另一个环境所需要的工作量。 可复用性可复用性:程序(或程序的一部分)可以在另:程序(或程序的一部分)可以在另 一个应用系统中使用的程度。一个应用系统中使用的程度。 互操作性互操作性:将一个系统连接到另一系统所需要:将一个系统连接到另一系统所需要 的工作量。的工作量。 ISO 9126质量因素 功能性功能性:软件满足已确定要求的程度,由以下子属性表:软件满足已确定要求的程度,由以下子属性表 征:适合性、准确性、互操作性、依从性和安全保密性。征:适合性、准确性、互操作性、依从
14、性和安全保密性。 可靠性可靠性:软件可用的时间长度,由以下子属性表征:成:软件可用的时间长度,由以下子属性表征:成 熟性、容错性和易恢复性。熟性、容错性和易恢复性。 易用性易用性:软件容易使用的程度,由以下子属性表征:易:软件容易使用的程度,由以下子属性表征:易 理解性、易学习性和易操作性。理解性、易学习性和易操作性。 效率效率:软件优化使用系统资源的程度,由以下子属性表:软件优化使用系统资源的程度,由以下子属性表 征:时间特性和资源利用特性。征:时间特性和资源利用特性。 维护性维护性:软件易于修复的程度,由以下子属性表征:易:软件易于修复的程度,由以下子属性表征:易 分析性、易改变性、稳定性
15、和易测试性。分析性、易改变性、稳定性和易测试性。 可移植性可移植性:软件可以从一个环境移植到另一个环境的容:软件可以从一个环境移植到另一个环境的容 易程度,由以下子属性表征:适应性、易安装性、符合易程度,由以下子属性表征:适应性、易安装性、符合 性和易替换性。性和易替换性。 定向质量因素 直觉直觉:界面遵照预期使用模式的程度,使:界面遵照预期使用模式的程度,使 得即使是新手,不经过专门培训也能使用。得即使是新手,不经过专门培训也能使用。 效率效率:定位或初步了解操作和信息的程度。:定位或初步了解操作和信息的程度。 健壮性健壮性:软件处理有错的输入数据或不恰:软件处理有错的输入数据或不恰 当的用
16、户交互的程度。当的用户交互的程度。 丰富性丰富性:界面提供丰富特征集的程度。:界面提供丰富特征集的程度。 软件质量困境 如果生产了一个存在严重质量问题的软件系统,如果生产了一个存在严重质量问题的软件系统, 你将受到损失,因为没有人想去购买。另一方面,你将受到损失,因为没有人想去购买。另一方面, 如果你花费无限的时间、极大的工作量和高额的如果你花费无限的时间、极大的工作量和高额的 资金来开发一个绝对完美的软件,那么完成该软资金来开发一个绝对完美的软件,那么完成该软 件将花费很长的时间,生产成本是极其高昂的,件将花费很长的时间,生产成本是极其高昂的, 以至于破产。要么错过了市场机会,要么几乎耗以至
17、于破产。要么错过了市场机会,要么几乎耗 尽所有的资源。所以企业界的人们努力达到奇妙尽所有的资源。所以企业界的人们努力达到奇妙 的中间状态:一方面,产品要足够好,不会立即的中间状态:一方面,产品要足够好,不会立即 被抛弃;另一方面,又不是那么完美,不需要花被抛弃;另一方面,又不是那么完美,不需要花 费太长时间和太多成本。费太长时间和太多成本。Ven03 质量成本 质量成本包括追求质量过程中或在履行质质量成本包括追求质量过程中或在履行质 量有关的活动中引起的费用以及质量不佳量有关的活动中引起的费用以及质量不佳 引起的下游费用等所有费用。为了解这些引起的下游费用等所有费用。为了解这些 费用,一个组织
18、必须收集度量数据,为目费用,一个组织必须收集度量数据,为目 前的质量成本提供一个基准,找到降低这前的质量成本提供一个基准,找到降低这 些成本的机会,并提供一个规范化的比对些成本的机会,并提供一个规范化的比对 依据。质量成本可分为依据。质量成本可分为预防成本、评估成预防成本、评估成 本和失效成本。本和失效成本。 质量成本 预防成本包括:预防成本包括:(1)计划和协调所有质量控制和计划和协调所有质量控制和 质量保证所需管理活动的成本;质量保证所需管理活动的成本;(2)为开发完整为开发完整 的需求模型和设计模型所增加的技术活动的成本;的需求模型和设计模型所增加的技术活动的成本; (3)测试计划的成本
19、;测试计划的成本;(4)与这些活动有关的所与这些活动有关的所 有培训成本。有培训成本。 评估成本包括为深入了解产品“第一次通过”评估成本包括为深入了解产品“第一次通过” 每个过程的条件而进行的活动。评估成本的例子每个过程的条件而进行的活动。评估成本的例子 包括:包括: 对软件工程工作产品进行技术审查的成本。对软件工程工作产品进行技术审查的成本。 数据收集和度量估算的成本。数据收集和度量估算的成本。 测试和调试的成本。测试和调试的成本。 质量成本 失效成本是那些如果在将产品发给客户之前或失效成本是那些如果在将产品发给客户之前或 之后没有错误就不会存在的费用。失效成本可分之后没有错误就不会存在的费
20、用。失效成本可分 为内部失效成本和外部失效成本。为内部失效成本和外部失效成本。 内部失效成本发生在当你在发货之前发现错误内部失效成本发生在当你在发货之前发现错误 时,内部失效成本包括:时,内部失效成本包括: 为纠正错误进行返工所需的成本。为纠正错误进行返工所需的成本。 返工时无意中产生副作用,必须对副作用加以缓解而发生的返工时无意中产生副作用,必须对副作用加以缓解而发生的 成本。成本。 组织为评估失效的模型而收集质量数据,由此发生的相关成组织为评估失效的模型而收集质量数据,由此发生的相关成 本。本。 外部失效成本是在产品已经发运给客户之后发外部失效成本是在产品已经发运给客户之后发 现了缺陷时的
21、相关成本。现了缺陷时的相关成本。 质量成本 图11-2 改正错误和缺陷的相对成本 当我们从预防到检查内部失效和外部失效当我们从预防到检查内部失效和外部失效 成本,找到并修复错误或缺陷的相关成本急成本,找到并修复错误或缺陷的相关成本急 剧增加。剧增加。 风险 人们拿自己的工作、自己的舒适、自己的人们拿自己的工作、自己的舒适、自己的 安全、自己的娱乐、自己的决定以及自己安全、自己的娱乐、自己的决定以及自己 的生命在计算机软件上下赌注。最好这是的生命在计算机软件上下赌注。最好这是 正确的。正确的。 软件质量问题很重要,不管是嵌入在汽车软件质量问题很重要,不管是嵌入在汽车 引擎中的,工厂里的机械手臂中的,还是引擎中的,工厂里的机械手臂中的,还是 嵌入在医院的治疗设备中,这些应用必须嵌
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五版后勤保障与后勤设施租赁合同
- 二零二五年度企业信用担保借款合同
- 2025版河南企业员工加班费支付与调休合同
- 2025年沥青混凝土路面材料销售合同
- 二零二五年度春节复工企业项目进度管理协议
- 二零二五年度IT系统集成与外包服务保密协议
- 2025版水利工程劳务分包合同范本集锦
- 二零二五年度企业法人授权委托合同签订协议书
- 2025版食品质量安全检测服务合同范例
- 二零二五年度国际贸易融资合同附件
- GA/T 1661-2019法医学关节活动度检验规范
- 园林景区绿化养护投入主要机械设备方案及介绍
- 技术合同认定登记课件
- 《建筑装饰设计收费标准》2019
- 无损检测概论课件
- 大同市城市规划管理技术规定
- 水电解制氢操作手册
- 青年干部培训班入学考试试题
- 土方回填试验报告
- 行政事业单位审计底稿模板-内控调查
- 材料封样清单_土建_安装
评论
0/150
提交评论