软件工程第十一章质量概念技朮分析.ppt

  1. 1、本文档共30页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件工程 第三部分 质量管理 质量管理涉及问题 高质量软件的一般特性是什么? 如何评审质量,如何有效地进行质量评审? 什么是软件质量保证? 软件测试需要应用什么策略? 使用什么方法才能设计出有效的测试用例? 有没有确保软件正确性的可行方法? 如何管理和控制软件开发过程中经常发生的变更? 第十一章 质量概念 质量概念 如果软件团队在所有软件工程活动中强调质量,就可以减少很多必需的返工,结果是降低了成本,更为重要的是缩短了上市时间。 为实现高质量软件,必须做4项活动:已验证的软件过程和实践、扎实的项目管理、全面的质量控制和具有质量保证基础设施。 质量概念 [Ric01]提到:尽管意愿良好,有缺陷的代码仍然是软件工业的幽灵,计算机系统的故障时间高达45%,美国公司去年花费了大约一千亿美元,用在了丧失的生产率和修补上,这还不包括使客户生气而失去了这些客户的代价。 质量概念 怎样差的软件才是劣质软件呢?定义是不同的,专家认为,只要每1000行代码有3或4处缺陷就能使程序执行得很差,大多数程序员每写10行代码大约注入一个错误,许多商业产品有数百万行代码,软件经销商至少将开发预算的一半花费在了测试时修改错误上。 质量概念 如今,软件质量仍然是个问题,但是应该责备谁?客户责备开发人员,认为粗心的实践导致低质量的软件。开发人员责备客户,认为不合理的交工日期以及连续不断的变更使开发人员在还没有完全验证时就交付了软件。 什么是质量 质量是一个复杂多面的概念。可以从5个不同的观点来描述。玄妙观点认为质量是马上就能识别的东西,却不能清楚地定义。用户观点是从最终用户的具体目标来说的。如果产品达到这些目标,就显示出质量。制造商观点是从产品的原始规格说明的角度来定义质量,如果产品符合规格说明,就显示出质量。产品观点认为质量是产品的固有属性。最后,基于价值的观点根据客户愿意为产品支付多少钱来评测质量。 什么是质量 在软件开发中,设计质量包括设计满足需求模型规定的功能和特性的程度。符合质量关注的是实现遵从设计的程度以及所得到的系统满足需求和性能目标的程度。 用户满意度=合格的产品+好的质量+按预算和进度安排交付 软件质量 软件质量可以这样定义:在一定程度上应用有效的软件过程,创造有用的产品,为生产者和使用者提供明显的价值。该定义强调了以下3个重要方面: 有效的软件过程为生产高质量的软件产品奠定了基础。 有用的产品是指交付最终用户要求的内容、功能和特征,但最重要的是,以可靠、无误的方式交付这些东西。 通过为软件产品的生产者和使用者增值,高质量软件为软件组织和最终用户群体带来了收益。 Garvin的质量维度 性能质量。软件是否交付了所有的内容、功能和特性,这些内容、功能和特性在某种程度上是需求模型所规定的一部分,可以为最终用户提供价值。 特性质量。软件是否首次提供了使最终用户惊喜的特性? 可靠性。软件是否无误地提供了所有的特性和能力,当需要(使用该软件)时,它是否是可用的,是否无错地提供了功能? 符合性。软件是否遵从本地的和外部的与应用领域相关的软件标准,是否遵循了事实存在的设计惯例和编码惯例? Garvin的质量维度 耐久性。是否能够对软件进行维护或改正,而不会粗心大意地产生料想不到的副作用?随着时间的推移,变更会使错误率或可靠性变得更糟吗? 适用性。软件能在可接受的短时期内完成维护和改正吗?技术支持人员能得到所需的所有信息以进行变更和修正缺陷吗? 审美。美的东西具有某种优雅、特有的流畅和醒目的外在,这些都是很难量化的,但显然是不可缺少的。美的软件具有这些特征。 感知。在某些情况下,一些偏见将影响人们对质量的感知。 McCall的质量因素 [McC77]提出了影响软件质量因素的一种有用的分类。这些软件质量因素侧重于软件产品的3个重要方面:操作特性、承受变更的能力以及对新环境的适应能力,如图11-1所示。 McCall的质量因素 图11-1McCall的软件质量因素 McCall的质量因素 正确性:程序满足其需求规格说明和完成用户任务目标的程度。 可靠性:期望程序以所要求的精度完成其预期功能的程度。 效率:程序完成其功能所需的计算资源和代码的数量。 完整性:对未授权的人员访问软件或数据的可控程度。 易用性:对程序进行学习、操作、准备输入和解释输出所需要的工作量。 McCall的质量因素 维护性:查出和修复程序中的一个错误所需要的工作量。 灵活性:修改一个运行的程序所需的工作量。 易测试性:测试程序以确保它能完成预期功能所需要的工作量。 可移植性:将程序从一个硬件和(或)软件系统环境移植到另一个环境所需要的工作量。 可复用性:程序(或程序的一部分)可以在另一个应用系统中使用的程度。 互操作性:将一个系统连接到另一系统所需要的工作量。 ISO 9126质量因素

文档评论(0)

高考学子 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档