软件质量管理_第1页
软件质量管理_第2页
软件质量管理_第3页
软件质量管理_第4页
软件质量管理_第5页
已阅读5页,还剩161页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第六章软件质量管理首都师范大学教育技术系方海光2006年11月1回忆:项项目管理理知识体体系的构构成PMI将将项目管管理知识识体系分分为9大知识识领域:1.项目目集成管管理2.项目目范围管管理3.项目目时间管管理4.项目目成本管管理5.项目目质量管管理6.项目目人力资资源管理理7.项目目沟通管管理8.项目目风险管管理9.项目目采购管管理2项目管理知识领域与项目管理过程和过程组图解(PMBOK2000)风险管理规划项目计划实施综合变更控制项目计划开发启动范围计划范围定义活动定义范围核实范围变更控制活动排序活动工期估计进度开发进度控制资源规划成本估算成本预算成本控制质量规划组织规划质量保证质量控制人员招募团队开发沟通规划采购规划信息发布绩效报告管理收尾风险识别定性风险分析定量风险分析风险应对计划风险监测和控制询价规划询价供方选择合同管理合同收尾集成范围时间成本质量人力资源沟通风险采购3软件质量量管理软件开发发过程……………………………5项目质量量管理的的概念…………………19软件质量量的概念念…………………………48软件质量量管理……………………………87软件质量量的综合合评价…………………1444软件开发发过程软件的含含义软件==程序序+文文档++服服务为解决软软件危机机,人们们提出用用工程化化的原则则及方法法来组织织软件开开发工作作,这就就是软件件工程的的由来。。在软件工工程中可可将软件件的生存存周期分分为6个个阶段((传统生生命周期期,即瀑瀑布模型型)(1)计计划(Planning)(2)需需求分析析(RequirementAnalysis)(3)设设计(Design))(4)编编码(Coding))(5)测测试(Testing)(6)运运行与维维护(RunandMaintenance)5软件开发发瀑布模模型6软件开发发过程1.需求分析析需求分析析是根据据客户的的要求,,清楚地地了解客客户需求求中的产产品功能能、特性性、性能能、界面面和具体体规格等等,然后后进行分分析,确确定软件件产品所所能达到到的目标标。软件件产品需需求分析析是软件件开发过过程的第第一个环环节,也也是最重重要的一一个环节节。如果果需求分分析做不不好,下下面的设设计、编编程做得得再好,,客户((用户))也不可可能对开开发出来来的软件件产品感感到满意意。软件件产品需需求分析析的结果果要文档档化,而而且这类类文档的的描述尽尽量不要要用专业业术语,,从而使使用户能能够完全全理解需需求分析析的结果果,参与与对其复复审的过过程。7软件开发发过程2.设计软件设计计是根据据需求分分析的结结果,考考虑如何何在逻辑辑、程序序上去实实现所定定义的产产品功能能、特性性等。可可以分为为概要设设计和详详细设计计,也可可以分为为数据结结构设计计、软件件体系结结构设计计、应用用接口设设计、模模块设计计、算法法设计、、界面设设计等。。设计过过程将需需求转换换成软件件表示,,设计的的结果将将作为编编码的框框架和依依据,以以提高编编码的效效率和质质量。设设计的文文档化体体现在产产品规格格说明书书(functionalspecification))、技术术设计文文档(developmentdesigndocument))和软件件配置文文档(softwareconfigurationdocument)。8软件开发发过程3.编编程经过需求求分析、、设计之之后,接接下来就就是用一一种或多多种具体体的编程程工具((如VS.Net,JBuild、、Eclipse、Delphi、、PB等等)进行行编码,,即将设设计转换换成计算算机可读读的形式式。如果果设计做做得好、、做得仔仔细,编编程就容容易了。。4.测测试任何编程程,免不不了存在在这样或或那样的的错误,,所以有有必要进进行软件件测试。。测试过过程集中中于软件件的内部部逻辑———保证证所有语语句都测测试到,,以及外外部功能能——即即引导测测试去发发现错误误,并保保证定义义好的输输入能够够产生与与预期结结果相同同的输出出。测试试按不同同的过程程阶段分分为单元元测试、、集成测测试、功功能测试试、系统统测试、、验证测测试等。。9软件开发发过程5.维维护从理论上上,软件件测试的的覆盖率率不可能能做到百百分之百百,所以以软件在在交付给给用户之之后有可可能存在在某些问问题,而而且用户户的需求求会发生生变化,,特别是是开始使使用产品品之后,,对计算算机系统统有了真真正的认认识和了了解,会会提出适适用性更更好的、、功能增增强的要要求。所所以,软软件交付付之后不不可避免免地要进进行修改改、升级级等。软件维护护复杂、、周期长长,其成成本必然然很高。。通过提提高软件件的需求求分析、、设计和和编程的的质量,,强化软软件测试试,可以以大幅度度降低软软件的维维护成本本。10软件开发发过程软件开发发模式软件开发发模式是是指从最最初构想想到公开开交付发发行软件件的过程程。大棒模式式或边写写边改模模式瀑布模式式原型模式式快速应用用(RAD)模模式螺旋模式式增量模式式和跌代代模式11大棒模式式或边写写边改模模式大棒模式式优点是简简单。几几乎无计计划。项项目成员员精力都都花在开开发软件件和编写写代码上上。最终终的软件件产品是是什么样样不可知知。边写边改改模式在大棒模模式的基基础上考考虑了产产品的要要求。项项目成员员通常只只有粗略略的想法法就进行行简单的的设计,,然后开开始漫长长的编码码、测试试、修复复。12大棒模式式或边写写边改模模式探索测试试如果采用用大棒模模式或者者边写边边改模式式,就不不会有作作为测试试依据的的各类文文档。尽尽管这对对于软件件测试员员不是理理想的状状况,但但是此时时可以采采用称为为探索测测试的解解决方案案。这需要把把软件当当产品说说明书来来对待。。分步骤骤地逐项项探索软软件特性性。记录录软件执执行情况况,详细细描述功功能。在在这种情情况下,,无法像像有产品品说明书书那样完完整测试试软件---比如如无法判判定是否否遗漏功功能,但但是可以以进行系系统测试试。找到到软件缺缺陷。另外,与同类型型软件进进行比较较也是一一个有效效的方法法。13软件开发发模式--原原型模型型在进行了了基本需需求分析析之后,,快速开开发出产产品的原原型,然然后基于于这个原原型,同同客户沟沟通、交交流,更更好地了了解客户户需求,,不断修修改这个个原型,,到了双双方认可可的程度度,再做做详细地地分析、、设计和和编程,,最终开开发出令令客户满满意的产产品。一般步骤骤如下::(1)先定义软软件的总总体目标标,根据据已知的的需求来来规划出出可实现现的区域域。(2)然然后是是“快速速设计””,集中中于系统统的总体体框架、、基本功功能和直直观的输输入方式式和输出出格式等等。(3)有了原型型,使客客户对系系统实现现哪些具具体功能能、功能能实现到到什么程程度有更更好的理理解。开开发者可可以边开开发边评评估,不不断细化化软件的的需求,,逐步调调整原型型使其满满足客户户的要求求。这形形成一个个迭代的的过程。。14原型模型型即使开始始建立的的原型过过于简单单或性能能很差,,难以使使用,但但为下一一次建立立适用的的模型积积累了经经验,而而浪费的的成本、、时间有有限。原型模型型的优点点是使用用户能够够感受到到实际的的系统,,使开发发者能够够快速地地构造出出系统的的框架。。原型模型型的缺点点是产品品的先天天性不足足,因为为开发者者常常需需要做实实现上的的折中,,可能采采用不合合适的操操作系统统或程序序设计语语言,以以使原型型能够尽尽快工作作。15RAD模模型RAD模模型RAD((rapapplicationdevelopment)模型型,即快快速应用用开发模模型。由由于其模模型构图图形似字字母“V”,故故也称V模型,,是属于于线性顺顺序一类类的软件件开发模模型。它它通过使使用基于于构件的的开发方方法来缩缩短产品品开发的的周期,,提高开开发的速速度。RAD模模型实现现的前提提是能做做好需求求分析,,并且项项目范围围明确,,这一点点正好和和原型模模型相反反。16螺旋模型型螺旋模型型,最早早是由Boehm提出出来的,,是一个个演化软软件过程程模型,,它将原原型的迭迭代特征征与线性性顺序模模型中控控制和系系统化方方面结合合起来,,使得软软件增量量版本的的快速开开发成为为可能。。在螺旋旋模型中中,软件件开发是是一系列列的增量量发布。。在早期期的迭代代中,发发布的增增量可能能是一个个纸上的的模型或或原型;;在以后后的迭代代中,更更加完善善的被开开发系统统版本逐逐步产生生。17增量模式式和跌代代模式软件开发发分阶段段可以通通过两种种模型来来描述,,即增量量模型和和迭代模模型。增量模型型 描述述软件产产品的不不同阶段段是按产产品所具具有的功功能进行行划分,,先开发发主要功功能或用用户最需需要的功功能,然然后,随随着时间间推进,,不断增增加新的的辅助功功能或次次要功能能,最终终开发出出一个强强大的、、功能完完善的、、高质量量的、稳稳定的产产品。迭代模型型 描述述软件产产品的不不同阶段段是按产产品深度度或细化化的程度度来划分分。先将将产品的的整个框框架都建建立起来来,在系系统的初初期,已已经具有有用户所所需求的的全部功功能。然然后,随随着时间间推进,,不断细细化已有有的功能能或完善善已有功功能,这这个过程程好像是是一个迭迭代的过过程。最最终的目目标是一一致的,,也是为为了实现现一个强强大的、、功能完完善的、、高质量量的、稳稳定的产产品。18项目质量量管理的的概念产品:过程的结结果四类:硬件:有形产品品,有计数的的特性;服务:无形的,并且是在在供方和和顾客接接触面上上至少需需要完成成一项活活动的结结果软件:由信息组组成,通常是无无形产品品并可以以方法\论文或程程序的形形式存在在.流程性材材料:有形产品品,有一定的的连续性性.19质量的定定义ISO8402-1994《质量管理理和质量量保证术术语》中对质量量所下的的定义是是:质量是反反映实体(产品、过过程或活活动等)满足明确确和隐含含需要的的能力的的特性总总和。20实体(entity,,item)):“可单独描描述和研研究的事事物”,,实体体可以是是活动或或过程,,可以是是产品,,可以是是组织、、体系或或人,也也可以是是上述各各项的任任何组合合。需求(requirements)):包括“明明确需要要”和““隐含需需要”。。21为使“需求”可以实实际运用用,一般般应将其其转化为为质量要要求。所所谓质量量要求,,是指““对需要要的表述述或将需需要转化化为一组组对实体体特性的的定量或或定性的的规定要要求,以以使其实实现并进进行考核核”。22质量不仅仅包括活活动或过过程的结结果,还还包括它它们形成成和实现现的活动动及过程程本身;;质量不仅仅包括产产品质量量,还包包括它们们形成和和实现过过程中的的工作质质量;质量不仅仅要满足足顾客的的需要,,还要满满足社会会的需要要,并使使顾客、、从业人人员、业业主、供供方和社社会都收收益;(stakeholder,受益者)质量问题题不仅存存在于工工业,还还存在于于服务业业及其他他各行各各业。产品质量服务质量过程质量工作质量质量23产品质量量产品质量量是指产产品能够够满足使使用要求求所具备备的特性性。一般般包括性能、寿命、可靠性、安全性、经济性以及外观质量量等。产品质量量的概念念,在不不同历史史时期有有不同的的要求。。随着生生产力发发展水平平不同和和由于各各种因素素的制约约,人们们对产品品质量会会提出不不同的要要求。产品质量服务质量过程质量工作质量质量24服务质量量服务质量量是指服务务满足明明确和隐隐含需要要的能力力的特性性总和。。定义中的的服务,主要指指服务性性行业提提供的服服务,如如交通运运输、邮邮电、商商业、金金融保险险、饮食食、宾馆馆、医疗疗卫生、、文化娱娱乐、仓仓储、咨咨询、法法律等组组织提供供的服务务。由于于服务含含义的延延伸,有有时也包包括工业业产品的的售前、、售中和和售后服服务,以以及企业业内部上上道工序序对下道道工序的的服务。。反映服务务质量要要求的质质量特性性主要有有功能性性、经济济性、安安全性、、时间性性、舒适适性和文文明性。。产品质量服务质量过程质量工作质量质量25过程质量量过程是指“将将输入转转化为输输出的一一组彼此此相关的的资源和和活动””。其中中资源可可包括人人员、资资金、设设施、设设备、技技术和方方法。过程质量量,是指过过程满足足明确和和隐含需需要的能能力的特特性之总总和。过程质量量,可分为为开发设计计过程质质量、制造过程程质量、使用过程程质量与服务过程程质量四个子过过程的质质量。产品质量服务质量过程质量工作质量质量26工作质量量工作质量量,是指与与质量有有关的各各项工作作对产品品质量、、服务质质量、过过程质量量的保证证程度。。产品质量服务质量过程质量工作质量质量27质量特性性的概念念:质量特性性:产品品或服务务满足人人们明确确或隐含含需求的的能力、、属性和和特征的的总和。。28质量内涵涵:内在质量量特性::在产品品或服务务的持续续使用中中体现出出来的特特性(产产品的特特性、性性能、强强度、精精度等))外在质量量特性::在产品品或服务务外在表表现方面面的属性性和特性性(产品品外形、、包装、、色泽、、味道等等)经济质量量特性::与产品品或服务务的购买买和使用用成本有有关的特特性(产产品的寿寿命、成成本、价价格、运运营费等等)商业质量量特性::与产品品或服务务提供企企业承诺诺的各种种商业责责任有关关的特性性(产品品的保质质期、保保修期、、售后服服务水平平等)环保质量量特性::与产品品或服务务对环境境的影响响有关的的特性29质量的决决定因素素:一件产品品或一项项服务能能否成功功地完成成它预定定的使命命取决于于四个主主要因素素,它们是:(1)设计质量量:设计人员员对产品品或服务务的一些些性能所所做出的的接受或或拒绝的的选择。(2)质量符合合设计的的程度::产品或服服务符合合(即实现)设计人员员意图的的程度。(3)便于使用用。(4)售后服务务。30戴明:W.E..Deming戴明总结结出14条质量管管理原则则,他认认为一个个公司要要想使其其产品达达到规定定的质量量水平必必须遵循循这些原原则。主要观点点是引起效效率低下下和不良良质量的的原因在在公司的的管理系系统而不不在职员员。部门门经理的的责任就就是要不不断调整整管理系系统以取取得预期期的结果果。戴明还强强调了减减少质量量波动(与一定标标准之间间的偏差差)的必要性性。要减减少质量量波动,,就需要要辨别引引起波动动的特殊殊原因(即可纠正正的原因因)和共同原原因(即随机原原因)。质量管理理专家—戴明31戴明14条原则的的核心::目标不变变、持续续改善和和知识渊渊博;知识渊博博包括(1)以所在在公司为为荣;((2)掌握质质量波动动的原理理;(3)知识体体系;((4)心理学学原理;;戴明知识识渊博的的概念使使得日本本成为世世界经济济强国的的好学信信条和价价值观具具体化了了戴明14条原则的的核心32朱兰:Juran朱兰视质质量为适适用性((Fitnessforuse))。认为通过过管理可可以控制制大约80%的质量缺缺陷的发发生。包含质量量计划、、质量控控制和质质量改进进的质量量三元论论的思想想来描述述质量管管理。根据朱兰兰的观点点,为建立有有能力满满足质量量标准的的工作程程序,质质量计划划是必要要的。为为了掌握握何时采采取必要要措施纠纠正质量量问题就就必须实实施质量量控制。。质量改改进有助助于发现现更好的的管理工工作方式式。管理就是是不断改改进工作作是朱兰兰理论的的一个核核心。朱兰被被确认为为第一个个提出计计算质量量成本的的质量管管理专家家。他解解释了如如果不良良质量的的成本可可以降低低的话,,那么就就有可能能增加公公司利润润。质量管理理专家—朱兰33费根鲍姆姆:ArmandFeigenbaum前通用电电器生产产和质量量控制经经理,他因提出出把质量责责任推广广到生产产领域以以外而在质量量运动中中闻名。。在推行“缺陷成成本”方法方面面起重要要作用。。根据这这一方法法,管理理应服从从于质量量。质量管理理专家—费根鲍姆姆341.全面质量量控制是是一个在在公司内内部使质质量标准准制定、、维持和和改进集集成于一一体的系系统。公公司应该该能够使使工程部部、生产产部和服服务部门门共同发发挥作用用,在达到用用户满意意的同时时实现最最佳经济济目标;;2.质量控制制的“控控制”方方面应该该包括制制定质量量标准、、评价与与这些标标准有关关的行为为、当没没有达到到预定标标准时采采取纠正正措施以以及制定定改进质质量标准准计划;;3.影响质量量的因素素可分为为两大类类:技术性的的和人为为的。人人为的因因素更为为重要;;4.质量成本本可被分分为四类类:预防成本本、鉴定定成本、、外部损损失成本本和内部部损失成成本;5.重要的是是要控制制源头质质量费根鲍姆姆质量控控制基本本原理要要点35质量管理理的基本本概念::古津进的的定义::向消费者者或顾客客提供高高质量产产品与服服务的一一项活动动。这种产产品和服服务必须须保证满满足需求求、价格格便宜和和供应及及时。定义说明明:质量管理理目的::向消费费者或顾顾客提供供高质量量产品与与服务目标和作作用:使使产品和和服务达达到三项项要求,,即满足足需求、、价格便便宜和供供应及时时36质量管理理定义::ISO8402一1994(质量管管理和质质量保证证术语))对质量量管理的的定义是是:质量管理理是确定定质量方方针、目目标和职职责,并并在质量量体系中中通过诸诸如质量量策划、、质量控控制、质质量保证证和质量量改进使使其实施施的全部部管理职职能的所所有活动动。37质量管理理定义::①质量管理理是各级级管理者者的职责责,但必须由由最高管管理者领领导。质质量管理理的实施施涉及到到组织中中的所有有成员。。②在质量管管理中要要考虑到到经济性性因素。。质量管管理是企企业管理理的重要要组成部部分,是企业管管理职能能中的重重要职能能。企业业一般包包括经营营决策、、计划、、生产、、技术、、质量、、劳资、、供应、、销售、、销后服服务、成成本财务务等管理理部门。。质量管管理处于于重要的的地位,我国有关关领导人人提出:“企业管理理应以质质量管理理为纲",质量管理理带动、、推动和和联系其其它部门门完成企企业生产产经营活活动的任任务。38质量方针针:指由由组织的的最高管管理者正正式发布布的该组组织总的的质量宗宗旨和方方向。质量目标标:在质质量方面面所追求求的目的的,是对对质量方方针的展展开。质量管理理的术语语和内涵涵:39质量策划划:是质质量管理理的一部部分,致致力于制制定质量量目标并并规定必必要的运运行过程程和相关关资源以以实现质质量目标标。包括:质质量管理理体系策策划、产产品实现现策划以以及过程程运行策策划。质质量计划划是策划划的结果果之一。。最终的的目的是是满足顾顾客要求求。质量控制制:致力力于满足足质量要要求。包包括设定定标准、、测量结结果、判判定、采采取措施施。40质量保证证:致力力于提供供质量要要求会得得到满足足的信任任。质量改进进:致力力于增强强满足质质量要求求的能力力。I‘mtrying!41质量管理理的任务务:正确制订订和贯彻彻执行质质量方针针和政策策;保证和提提高产品品质量和和服务质质量,生产出物物美价廉廉的产品品,以满足用用户需要要;不断降低低物质消消耗,降低质量量成本和和提高经经济效益益;提高领导导和职工工的质量量意识和和素质,促进企业业素质和和管理水水平的提提高;研究和发发展质量量理论和和质量科科学。42项目质量量的概念念项目的质质量(双重性::产品质质量,服服务质量量)从项目作作为一次次性的活活动来看看,项目目质量体体现在由由WBS反映出的的项目范范围内所所有的阶阶段、子子项目、、项目工工作单元元的质量量所构成成,也即即项目的工工作质量量;从项目作作为一项项最终产产品来看看,项目目质量体体现在其其性能或或者使用用价值上上,也即即项目的产产品质量量。项目是应应业主/客户的要要求进行行的,不同的业业主/客户有着着不同的的质量要要求,其其意图已已反映在在项目合合同中。。因此,,项目合同同是进行行项目质质量管理理的主要要依据。43项目质量量管理的的概念::为保障项项目产出出物能够够满足项项目业主主、客户户以及项项目其他他相关利利益者的的需要,,所开展展的对于于项目产产出物质质量和项项目工作作质量的的全面管理理工作。包括:项目质量量方针的的确定项目质量量目标和和质量责责任的制制定项目质量量体系的的建设为实现项项目质量量目标所所开展的的项目质质量计划划、项目目质量控控制和项项目质量量保障等等一系列列质量管管理工作作44项目质量量管理的的思想::全面质量量管理的的思想-质量管理理的全员员性、全全过程性性、全要要素性。。项目质量量管理的的几个重重要理念念:使顾客满满意是项项目质量量管理的的目的项目质量量是干出出来的,,不是检检验出来来的项目质量量管理的的责任是是全体团团队成员员的项目质量量管理的的关键是是不断监监控和改改进项目质量量确定与与项目质质量实施施项目质量量等级与与项目质质量好坏坏45ISO10006国际项目目质量管管理标准准:

国际标准准ISO10006是由ISO//TCl76//SC2国际标准准化组织织质量管理理和质量量保证技技术委员员会质量量体系分分委员会会制定的的,这一文件是是1997年12月发布的的,文件件的全称称是:《质量管理理—项目质量管管理指南南》。该文件件分为两两个部分分,一个个是主文件部分,另有三三个附件件。其中中主文件件部分的的核心内内容包括括三个部部分,其一是该该标准所所涉及的的范围和和所引用用的标准准及其相相关定义义,其二是有关关项目特特征的说说明,其其三是项项目管理理过程中中的质量量规范。。第二部分分是主要内容容,它包括括了项目目策划、、集成管管理、范范围管理、时间间管理、、成本管管理、资资源管理理、组织织与人力力资源管管理、沟通管理理、风险险管理、、采购管管理等各各方面质质量保障障与质量量控制方面的规规定。46ISO10006标准的内内容:本标准的的适用范范围本标准引引用的标标准条款款相关的定定义项目的特特性项目过程程中的质质量管理理总结项目目经验

47软件质量量的概念念软件质量量的定义义软件质量量模型48软件质量量的定义义1.软件件质量的的定义1)ANSI/IEEEStd729-1983定义软软件质量量为:““与软件产产品满足足规定的的和隐含含的需求求的能力力有关的的特征或或特性的的全体”。2)M..J.Fisher将将软件质质量定义义为:““所有描描述计算算机软件件优秀程程度的特特性的组组合。””3)GB/T6583–ISO8402((1994)定定义软件件质量为为:“反映实体体满足明明确和隐隐含需要要的能力力和特性性总和”也就是说说,为满满足软件件的各项项精确定定义的功功能、性性能需求求,符合合文档化化的开发发标准,,需要相相应地给给出或设设计一些些质量特特性及其其组合,,作为在在软件开开发与维维护中的的重要考考虑因素素。如果果这些质质量特性性及其组组合都能能在产品品中得到到满足,,则这个个软件产产品质量量就是高高的。49软件质量量的定义义软件质量量反映了了以下三三方面的的问题::软件需求求是度量量软件质质量的基基础。。不符合合需求的的软件就就不具备备质量。。规范化的的标准定定义了一一组开发发准则,,用来指指导软件件人员用用工程化化的方法法来开发发软件。。如果不不遵守这这些开发发准则,,软件质质量就得得不到保保证。往往会有有一些隐隐含的需需求没有有显式地地提出来来。如软软件应具具备良好好的可维维护性。。如果软软件只满满足那些些精确定定义了的的需求而而没有满满足这些些隐含的的需求,,软件质质量也不不能保证证。50软件质量量的定义义2.软件件质量特特性软件质量量特性,,反映了了软件的的本质。。讨论一一个软件件的质量量,问题题最终要要归结到到定义软软件的质质量特性性。而定定义一个个软件的的质量,,就等价价于为该该软件定定义一系系列质量量特性。。51软件质量量的定义义通常,软软件质量量可由以以下主要要特性来来定义::(1)功能性::软件所所实现的的功能达达到它的的设计规规范和满满足用户户需求的的程度;;(2)效效率:在在规定条条件下,,用软件件实现某某种功能能所需的的计算机机资源((包括时时间)的的有效程程度;(3)可可靠性::在满足足一定条条件的应应用环境境中,软软件能够够正常维维持其工工作的能能力;(4)安安全性::为了防防止意外外或人为为的破坏坏,软件件应具备备的自身身保护能能力能力力;52软件质量量的定义义(6)可可维护性性:当环环境改变变或软件件运行发发生故障障时,为为了使其其恢复正正常运行行所做努努力的程程度;(7)可可扩充性性:在功功能改变变和扩充充情况下下,软件件能够正正常运行行的能力力;(8)可可移植性性:为使使一个软软件从现现有运行行平台向向另一个个运行平平台过度度所做努努力的程程度(9)重重用性::整个软软件或其其中一部部分能作作为软件件包而被被再利用用的程度度。53软件质量量的定义义3.软件件生存期期与质量量特性从用户的的角度看看,软件件的生存存期可分分为如下下三个阶阶段:1)初期期运用::运行新新开发的的软件产产品。2)维护护与扩充充:在运运行过程程中修改改缺欠的的内容;;而且,,为了进进一步的的使用,,需根据据运行环环境(主主要指应应用环境境和技术术环境))的变化化做功能能上和性性能上的的扩充。。3)移植植和连接接:把在在原有平平台上运运行的软软件向其其它新的的运行环环境转移移、或者者组成软软件包以以便重用用、或与与其它软软件进行行连接。。54软件质量量的定义义对于软件件所需求求的质量量特性,,在软件件生存期期的不同同阶段中中情况各各有不同同,要求求也不一一样,这这可由下下图说明明。Back55软件质量量模型所谓质量量模型是是指提供供声明质质量需求求和评价价质量基基础的特特性以及及特性之之间关系系的集合合。换句句话说质质量模型型是用来来描述质质量需求求以及对对质量进进行评价价的理论论基础。。早在1976年年,由Boehm等提提出软件件质量模模型的分分层方案案。1979年年McCall等人改改进Boehm质量量模型又又提出了了一种软软件质量量模型。。模型包括质量量要素(factor)、准则(criteria))和度量(metric)三层次。。如图所所示。特性是软软件质量量的反映映,软件件属性可可用做评评价准则则,定量量化地度度量软件件属性可可知软件件质量的的优劣。。56软件质量量模型McCall质量度量量模型框框要素(特性)评价准则评价准则评价准则度量度量度量面向管理理观点的的产品质质量决定产品品质量的的软件属属性定量化地地度量软软件属性性57软件质量量模型软件质量量要素直直接影响响软件开开发过程程各个阶阶段的产产品质量量。由于对软软件质量量理解的的不断深深化,软软件质量量要素不不是一成成不变的的。McCall等人给出出的软件件质量要要素共11个,分为为三类,,分别面向向软件产产品的运运行、修修正、转转移。它它们与特特性的关关系如图图所示。。58软件质量量模型产品修正产品转移产品运行可维护性测试性灵活性互联性可移植性复用性正确性可靠性可使用性效率完整性McCall软件质量量模型59软件质量量模型正确性::在预定环环境下,,软件满满足设计计规格说说明及用用户预期期目标的的程度。。它要求求软件没没有错误误。可靠性::软件按照照设计要要求,在在规定时时间和条条件下不不出故障障,持续续运行的的程度。。效率:为了完成成预定功功能,软软件系统统所需的的计算机机资源的的多少。。完整性::为了某一一目的而而保护数数据,避避免它受受到偶然然的,或或有意的的破坏、、改动或或遗失的的能力力。可使用性性:对于一个个软件系系统,用用户学习习、使用用软件及及为程序序准备输输入和解解释输出出所需工工作量的的大小。。60软件质量量模型可维护性性:为满足用用户新的的要求,,或当环环境发生生了变化化,或运运行中发发现了新新的错误误时,对对一个已已投入运运行的软软件进行行相应诊诊断和修修改所需需工作量量的大小小。可测试性性:测试软件件以确保保其能够够执行预预定功能能所需工工作量的的大小。。灵活性::修改或改改进一个个已投入入运行的的软件所所需工作作量的大大小。61软件质量量模型可移植性性:将一个软软件系统统从一个个计算机机系统或或环境移移植到另另一个计计算机系系统或环环境中中运行时时所需工工作量的的大小。。复用性::一个软件件(或软软件的部部件)能能再次用用于其它它应用((该应用用的功能能与此软软件或软软件部件件的所完完成的功功能有联联系)的的程度。。互连性::连接一个个软件和和其他系系统所需需工作量量的大小小。如果果这个软软件要联联网,或或与其他他系统统通信,,或要把把其他系系统纳入入到自己己的控制制之下,,必须有有系统间间的接口口,使之之可以联联结。互互连性很很重要。。它又称称相互操操作性。。62软件质量量模型通常,对对以上各各个质量量特性直直接进行行度量是是很困难难的,在在有些情情况下甚甚至是不不可能的的。因此此,McCall定义义了一组比较容容易度量量的软件件质量要要素评价价准则,使用它它们对反反映质量量特性的的软件属属性分级级,以此此来估计计软件质质量特性性的值。。定义评价价准则的的关键是是确定影影响软件件质量要要素的属属性。这这些属性性必须满满足①比较完完整、准准确的描描述软件件质量要要素;②比较容容易量化化和测量量,能够够反映软软件质量量的优劣劣。McCall定定义的软软件质量量要素评评价准则则共21种,它它们是::63McCall软件质量量要素评评价准则则1.可审查性性(Auditability):检查软件件需求、、规格说说明、标标准、过过程、指指令、代代码及合合同是否否一致的的难易程程度。2.准确性(Accuracy)):计算和控控制的精精度,最最好表示示成相对对误差的的函数,值越大表表示精度度越高。。3.通信通用用性(CommunicationCommonality):使用标准准接口、、协议和和频带的的程度。。4.完全性(Completeness):所需功能能完全实实现的程程度。5.简明性(Conciseness)):程序源代代码的紧紧凑性。。6.一致性(Consistency):设计文档档与系统统实现的的一致性性。7.数据通用用性(DataCommonality):在程序中中使用标标准的数数据结构构和类型型。8.容错性(Errortolerance)):系统在各各种异常常条件下下提供继继续操作作的能力力64McCall软件质量量要素评评价准则则9.执行效率率(ExecutionEfficiency)):程序运行行效率。。10.可扩充性性(Expandability):能够对结结构设计计、数据据设计和和过程设设计进行行扩充的的程度11.通用性(Generality):程序部件件潜在的的应用范范围的广广泛性12.硬件独立立性(HardwareIndependence):软件同支支持它运运行的硬硬件系统统不相关关的程度度。13.检测性(Instrumentation):监视程序序的运行行,一旦旦发生错错误时,,标识错错误的程程度。14.模块化(Modularity):程序部件件的功能能独立性性。65McCall软件质量量要素评评价准则则15.可操作性性(Operability)):操作一个个软件的的难易程程度。16.安全性(Security)):控制或保保护程序序和数据据不受破破坏的机机制,以以防止程程序和数数据受到到意外的的或蓄意意的存取取、使用用、修改改、毁坏坏或泄密密。17.自文档化化(Self-documentation):源代码提提供有意意义文档档的程度度。18.简单性(Simplicity):理解程序序的难易易程度。。19.软件系统统独立性性(SoftwareSystemIndependence):程序与非非标准的的程序设设计语言言特征、、操作系系统特征征、以及及其他环环境约束束无关的的程度。。20.可追踪性性(Tracebility):对软件进进行正向向和反向向追踪的的能力。。21.易培训性性(Training)):软件支持持新用户户使用该该系统的的能力。。66计算软件件质量要要素软件质量量要素Fj的值可用用下式计计算LFj=∑CjkMkj=1,,2,...,,11..k=1其中Mk是软件质质量要素素Fj对第k种评价准准则的测测量值Cjk是相应的的加权系系数McCall定义的评评价准则则多数都都没有客客观的测测量方法法,只能能凭主观观印象为为评价准准则定值值。McCall将评价准准则分为为0--10级。0级最低,10级最高。。Mk的取值是是0,0.1,,0..2,,…,1..067质量要素素与评价价准则((1//2)要素关系准则正确性可靠性有效性完整性可维护可测试可移植可重用互操作可用性灵活性可审查性VV准确性V通信通用性V完全性V简明性VVV一致性VVVV数据通用性V容错性V执行效率V可扩充性V通用性VVVV68质量要素素与评价价准则((2//2)要素关系准则正确性可靠性有效性完整性可维护可测试可移植可重用互操作可用性灵活性硬件独立性VVVV检测性VVV模块化VVVVVVV可操作性VV安全性V自文挡化VVVVV简单性VVVV软件独立性VV可追踪性V易培训性V69McCall软件质量量要素评评价准则则McCall软件质量量度量模模型为软软件质量量管理奠奠定了基基础模型由软软件质量量要素和和评价准准则组成成加权系数数Cjk满足∑Cjk=1其中Cjk≥0当质量要要素Fj与k项评价准准则无关关时,Cjk=0McCall评价准则则项数L=2170软件质量量模型ISO软件质量量度量模模型1985年国际标标准化组组织(ISO)建议,软软件质量量度量模模型由三三层组成成。高层称软软件质量量需求评评价准则则(SQRC);;中层称软软件质量量设计评评价准则则(SQDC);;低层称软软件质量量度量评评价准则则(SQMC)。分别对应应McCall等人的要要素、评评价准则则和度量量。ISO认为应对对高层和和中层建建立国际际标准,,以便在在国际范范围内推推广软件件质量管管理,而而低层可可由各单单位自行行制定。。ISO高层由8个要素组组成、中中层由23个评价准准则组成成。它们们之间的的关系如如表所示示。71ISO的的质量要要素与评评价准则则(1/2)要素关系准则正确性可容性有效性安全性可用性可维护灵活性互操作可追踪性V完全性V一致性VVV准确性V容错性V简单性VV模块化VV通用性V可扩充性V检测性V自描述性VV72ISO的的质量要要素与评评价准则则(2/2)要素关系准则正确性可容性有效性安全性可用性可维护灵活性互操作执行效率V存储效率V存取控制V存取审查V可操作性V易培训性V通信性V软件独立性V硬件独立性V通信通用性V数据通用性V简明性V73软件质量量模型1991年,ISO发发布了ISO//IEC9126质量量特性的的国际标标准,将将质量特特性降为为6个,,即功能能性、可可靠性、、可维护护性、效效率、可可使用性性、可移移植性,,并定义义了21个子特特性。1991年发布布的ISO/IEC9126标准现现在被分分为了两两部,ISO//IEC9126(软软件产品品质量))和ISO/IEC14598(软软件产品品评价))。74软件质量量模型75软件质量量特性之之间的竞竞争在软件的的质量特特性与质质量特性性之间、、质量特特性与质质量子特特性之间间存在着着有利的的影响和和不利的的影响。。例如,,由于效效率的要要求,应应尽可能能采用汇汇编语言言。但是是用汇编编语言编编制出的的程序,,可靠性性、可移移植性以以及可维维护性都都很差。。因此在系系统设计计过程中中应根据据具体情情况对各各种要素素的要求求进行折折衷,以以便得到到在总体体上用户户和系统统开发人人员都满满意的质质量标准准。质量要素素之间的的关系表表76软件质量量特性之之间的竞竞争77软件质量量的度量量和评价价软件质量量的度量量是软件属属性的量量化,是是经验关关系系统统到数值值关系系系统的一一种映射射。软件件质量特特性度量量有两类类:预测测型和验验收型。。预测度量量是利用用定量的的或定性性的方法法,对软软件质量量的评价价值进行行估计,,以得到到软件质质量的比比较精确确的估算算值。它它是用在在软件开开发过程程中的。。尺度度量量:这是是一种定定量度量量。它适适用于一一些能够够直接度度量的特特性,一一般它作作为相对对量进行行度量。。如可靠靠性度量量、复杂杂度度量量、缺陷陷度量和和规模度度量等。。二元度量量:这是是一种定定性度量量。它适适用于一一些只能能间接度度量的特特性。验收度量量是在软软件开发发各阶段段的检查查点,对对软件的的要求质质量进行行确认性性检查的的具体评评价值,,它可以以看成是是对预测测度量的的一种确确认,是是对开发发过程中中的预测测进行评评价。78软件质量量的度量量和评价价软件质量量度量的的实施在确定要要对一个个软件((系统))进行度度量之后后,一般般,采取取以下几几个步骤骤,来实实施对该该软件的的度量::(1)确确定软件件质量需需求;在用户需需求中,,除功能能需求外外,还有有非功能能需求,,包括::质量需需求、环环境需求求、设计计约束、、开发策策略等。。质量需需求是用用户比较较关心的的内容。。但是,我我们已经经知道,,软件的的功能需需求的确确定,存存在一定定的难度度。而非非功能需需求的确确定,则则难度更更大。这这些困难难包括::需求如如何获取取,需求求冲突如如何协调调、需求求的确认认和变更更的授权权等。过程:需求获取取:首先先,你要要理解用用户的需需求,区区分哪些些是质量量需求,,把这些些需求记记录下来来,获得得用户的的确认。。需求分析析:拿到到用户确确认的需需求后,,你可以以开始把把用户的的质量需需求与我我们设定定的质量量特性联联系起来来,一直直区分到到子特性性。这种种联系,,就是把把用户语语言描述述的需求求,转变变为计算算机工程程师语言言的需求求。建立立了这种种关联后后,可以以根据分分类,分分级,确确定直接接度量。。79软件质量量度量的的实施(2)确定定直接度度量直接度量量就是实实际的软软件质量量测量活活动,它它的输入入是软件件或软件件过程,,输出是是一个测测量值。。它通过过执行一一系列的的任务,,获得一一个质量量值。例如:对对一个没没有经过过培训的的用户,,让他使使用软件件系统的的某一功功能,在在界面提提示、联联机帮助助、使用用手册的的帮助下下,他学学会掌握握该功能能所花的的时间。。而用户户需求对对此项指指标的要要求(目目标)和和现实系系统所达达到的实实际值((比如::10个个人次测测量后统统计意义义上的))的比较较,就是是将提交交质量评评审的质质量值。。在进行直直接度量量前,你你应该有有以下准准备:(1)工工具:有有助于计计算度量量值的硬硬件/软软件工具具,如::缺陷跟跟踪工具具;(2)应应用:描描述度量量结果的的希望值值、度量量值的意意义、作作用和对对度量结结果数据据的使用用方法;;(3)数数据:获获得度量量结果所所需的数数据、程程序、过过程等度度量对象象;(4)计计算:度度量程序序、步骤骤和方法法。(5)费费用:测测试是要要花钱((人力、、物力、、时间等等)的。。80软件质量量度量的的实施(3)分分析度量量结果对度量过过程进行行跟踪和和分析,,需要时时,可能能会对度度量程序序、度量量工具、、度量方方法,甚甚至原始始数据,,做出补补充和调调整。(4)确确认质量量度量在度量过过程中,,进行度度量结果果的确认认非常重重要。首首先,要要确认度度量过程程是否与与事实相相符,脱脱离现实实真实的的度量,,与目标标再相符符的结果果也是没没有意义义的。其其次,是是确认方方法的有有效性,,例如::在度量量中,我我们用到到很多统统计学方方法,在在这些方方法中,,我们有有一些概概率分布布假设((例如::某些错错误的发发生,我我们假设设符合随随机概率率分布)),当这这些假设设并不成成立时,,度量的的结果是是不真实实的。81软件质量量的度量量和评价价软件质量量评价定量地评评价软件件的质量量,目前前还不能能精确地地做到。。一般采采取由若若干(6~10)位软软件专家家进行打打分来评评价。这这些软件件专家应应是富有有实际经经验的项项目带头头人。软软件质量量评价分分两步走走。(1)评评分对每一阶阶段要达达到的质质量指标标(质量量特性目目标值或或标准))详细开开列/建建立度量量工作表表,在表表中,以以提问题题方式,,列出在在某一阶阶段为实实现某一一质量指指标,应应达到什什么标准准。所以以它也可可称为检检查表。。特别地地,有些些检查表表是针对对子系统统或模块块的。为了回答答度量工工作表上上的问题题,必须须积累原原始资料料。最重重要的原原始资料料是在软软件定义义与开发发的各个个阶段提提供的文文档。其其次是在在开发过过程中积积累的各各种数据据,特别别是对出出错数据据的记录录。评分主要要是依据据软件实实际成果果进行的的、由于于软件使使用环境境不同,,使用目目的不同同,各人人打分会会有一定定差别。。(2)分分析结果果根据评分分的结果果,对照照评价指指标,检检查某个个质量特特性是否否达到了了要求的的质量标标准。如如果某个个质量特特性不符符合规定定的标准准,就应应当分析析这个质质量特性性,找出出为什么么达不到到标准的的原因。。分析原因因应该自自顶向下下进行。。按系统统级、子子系统级级、模块块级逐步步分析。。82四层模型型四层模型型软件质量量的度量量关键是是要定出出评定质质量的指指标和评评定优劣劣的标准准。有一一种四层层模型,,第一层是是软件产品品质量(质量需求求),第二层是是质量特特性,第第三层是是质量子子特性,,第四层层是度量量指标。。软件产品品质量层层(质量需求求):是产品品必须满满足的质质量需求求。它是是用用户户术语描描述的,,主要有有四点::(1)产品将将在用户户所在组组织当前前使用的的平台和和操作系系统上运运行。(2)产品将是是可靠的的并能防防止数据据丢失的的机制。。(3)产品将提提供完成成某些任任务所必必需的功功能。(4)产品将易易于使用用。83四层模型型质量特性性:表示示与整个个质量需需求有关关的特殊殊质量特特性,它它代表了了用户的的质量需需求。它它采用从从用户角角度考虑虑的立场场,把软软件质量量分解成成四类质质量特性性,这四四个质量量特性是是软件的的基本特特征。IEEE的四个质质量特性性是:可可移植性性、可靠靠性、功功能性、、可使用用性。可靠性::在规定定的时间间和条件件下,软软件所能能维持其其性能水水平的程程度。可可靠性对对某些软软件是重重要的质质量要求求,它除除了反映映软件满满足用户户需求正正常运行行的程度度,且反反映了在在故障发发生时能能继续运运行的程程度。功能性::软件所所实现的的功能满满足用户户需求的的程度..功能性性反映了了所开发发的软件件满足用用户指明明的或隐隐含的需需求的程程度,即即用户要要求的功功能是否否全部实实现了。。可移植性性:从一一个计算算机系统统或环境境转移到到另一个个计算机机系统或或环境的的容易程程度。易使用性性:对于于一个软软件,用用户学习习、操作作、准备备输入和和理解输输出时,,所做努努力的程程度。易易使用性性反映了了与用户户的友善善性,即即用户在在使用本本软件时时是否方方便。84四层模型型质量需求质量特性质量子特性直接度量度量描述(例子)产品将在多平台和当前用户正在使用的操作系统上运行可移植性硬件独立性硬件依赖性计算硬件的依赖性软件独立性软件依赖性计算软件的依赖性易安装性安装时间测量安装时间可重用性能够用于其他应用软件中计算能够或已经应用于其他软件系统的模块数量产品将是可靠的并能提供防止数据丢失的机制可靠性无缺陷性测试覆盖测量测试覆盖度审查覆盖计算已做过的代码审查模块容错性数据完整性统计用户数据被破坏情况数据恢复测量恢复被破坏的数据的能力可用性软件可用的百分比软件可用时间除以总的软件使用时间85产品将提供完成某些任务所必需的功能功能性完备性测试覆盖计算调用或分支测量覆盖正确性缺陷密度计算每一版本发布前的缺陷安全性

数据安全性统计用户数据被破坏的情况用户安全性

没有被阻止的非法用户入侵数兼容性

环境变化

软件安装后必须修改的环境变量数量互操作性混合应用环境下软件的可操作性混合应用环境下可正确运行的数量产品将易于使用可使用性易理解性学习所用时间新用户学习软件特性所花费的时间易学性学习所用时间新用户学会操作软件提供的基本功能所花费的时间易操作性人的因素新用户基于人类工程学对软件消极方面的评价数量沟通性人的因素新用户基于人类工程学对软件消极方面的评价数量质量需求质量特性质量子特性直接度量度量描述(例子)四层模型型Back86软件质量量管理基本概念念软件质量量管理的的主要活活动

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论