,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,质量管理研究与探讨,郁朝阳,质量管理研究与探讨,1,议题1:质量,1,质量,2,质量管理,3,质量管理,改进,4,质量思想,5,质量格言,议题1:质量12345,2,什么是质量,质量并不是一个单一的特征或属性。质量是多方面的,,包括,产品,质量和过,程质量。产品质量的核心是生产合格的产品,而流程质量的核心是合理地生产产品。,质量是广义的,到处都是质量。,质量是至关重要的。,对软件项目研发来说,管理、研发、测试、文档、部署(实施)、服务都体现质量,质量贯穿于全过程。,质量管理的研究是有意义的事情。,请看下页:简明的定义,什么是质量质量并不是一个单一的特征或属性。质量是多方面的,包,3,最简洁的理解,软件质量就是满足需求,请看下页:,RUP,的定义,最简洁的理解请看下页:RUP的定义,4,Rational Unified Process,的质量定义,质量是,由以下三点所确定的特征:1 满足或超出认定的一组需求2 使用经过认可的评测方法和标准来评估3 使用认定的流程来生产。,质量达标不是简单地“满足需求”或生产出满足用户需要或期望的产品。更确切地说,质量还包含确定证明质量达标所使用的,评测方法,和,标准,,以及如何实施流程,以确保由此流程生产的产品已达到预期的质量水平(而且能够管理该流程并重复使用)。,下页:成本的考虑,Rational Unified Process的质量定义,5,质量的重要性-成本的考虑,在,部署之后又发现软件问题再进行修复,这通常要多花 100 到 1000 倍的,成本,。要,防患于未燃。,在特定时间达到既定目标,在整个项目生命周期内不断对质量进行检验和管理必不可少。,下页:质量管理,质量的重要性-成本的考虑,6,议题2:质量管理,1,质量,2,质量管理,3,质量管理,改进,4,质量思想,5,质量格言,议题2:质量管理12345,7,什么是质量管理,定义:针对软件产品和研发过程质量的管理,目标:保证软件产品的高质量,措施:,实施全面质量控制,制订质量规范,建立质量指标和度量方法,进行质量检测和评估,借鉴,ISO,质量管理体系/,RUP,方法/,CMM,模型/轻方法学,下页:质量管理和风险管理的关系,什么是质量管理定义:针对软件产品和研发过程质量的管理,8,质量管理和风险管理的关系,质量管理会加大质量成本投入,但可以在总体上降低风险,MIS,项目主要的风险包括:,*缓慢的用户需求分析(80%)*过大的时间进度压力(65%)*低质量(60%)*严重超成本(55%)*不充分的配置控制(50%),这些风险直接或者间接和质量管理有关。,下页:实施全面质量控制,质量管理和风险管理的关系质量管理会加大质量成本投入,但可以在,9,软件过程的全面质量控制,对软件过程,需要实行全面质量控制。,在信息系统研发生命周期的各个阶段,对上一阶段的理解以及本阶段的设计与实现上都存在着这样那样的问题。在下图中,各阶段之间的接口至少存在列出来的9个问题,要想顺利解决每一个问题并非易事。,下页:研发过程的全面质量控制图,软件过程的全面质量控制对软件过程,需要实行全面质量控制。,10,全面质量控制图,下页:质量指标和度量方法,全面质量控制图下页:质量指标和度量方法,11,质量指标和度量,信息系统的质量比较难管理,原因之一是信息系统的质量指标难以定义,即使能够定义,也较难度量。由于信息系统的核心是软件,因此如何度量软件的质量成为解决问题的关键。,在,McCall,质量指标模型中,影响软件质量的因素被分成三组,分别反映用户在使用软件产品时的三种不同倾向或观点。这三种倾向是:产品运行、产品修改和产品转移。信息系统作为一个产品,也可以参照这三种倾向来定义。,下页:,McCall,质量指标模型,质量指标和度量信息系统的质量比较难管理,原因之一是信息系统的,12,McCall软件质量特性,下页:更简单的图示,McCall软件质量特性下页:更简单的图示,13,更容易理解的图解,(林锐),下页:请看详细说明,更容易理解的图解(林锐)下页:请看详细说明,14,详细说明,正确性与精确性,正确性与精确性之所以排在质量因素的第一位,是因为如果软件运行不正确或者不精确,就会给用户造成不便甚至造成损失。,相关的容错性:首先承认软件系统存在不正确与不精确的因素,为了防止潜在的不正确与不精确因素引发灾难,系统为此设计了安全措施。,相关的可靠性:是指在一定的环境下,在给定的时间内,系统不发生故障的概率。我们无法对软件进行彻底地测试,无法根除软件中潜在的错误。平时软件运行得好好的,说不准哪一天就不正常了,如“2000年”问题。,性能与效率,用户都希望软件的运行速度高些(高性能),并且占用资源少些(高效率)。,易用性,易用性是指用户感觉使用软件的难易程度。软件的易用性要让用户来评价。,可理解性与简洁性,可理解性表达了人们一种质朴的愿望。简洁是一种美,简洁是人们对工作“精益求精”的结果。,废话大师有句名言:“如果我令你过于轻松地明白了,那你一定是误解了我说的话。”,可复用性与可扩充性,复用的一种方式是原封不动地使用现成的软构件,另一种方式是对现成的软构件进行必要的扩充后再使用。可复用性好的程序一般也具有良好的可扩充性。,下页:质量体系,详细说明正确性与精确性,15,质量体系,质量体系是一套质量管理制度,RUP,ISO9001,是质量保证标准,(包括3个层次20个标准),下页:软件能力成熟度模型,CMM,质量体系质量体系是一套质量管理制度,16,软件能力成熟度模型CMM,CMM,是一个软件过程的框架和准则,由美国,SEI,根据软件流程评估和行业中的反馈于,1991,制定。,提倡持续改进,组织机构根据最新的版本,CMMI,来实现整个企业范围的流程改进。,一个优秀的软件管理标准,有助于软件公司达到更好的性能和软件质量,下页:,CMM,五个级别,软件能力成熟度模型CMMCMM是一个软件过程的框架和准则,17,CMM五个级别,CMM五个级别,18,议题3:质量管理改进,1,质量,2,质量管理,3,质量管理,改进,4,质量思想,5,质量格言,议题3:质量管理改进12345,19,质量管理的Step建议,Step 1,先有具体的标准和规范,Step 2,达到质量管理规范规定的最基本要求,Step 3,持续改进。,下页:质量规范的范围和内容,质量管理的Step建议Step 1 先有具体的标准和规范,20,质量规范的范围和内容,规范可按以下层次展开:,质量体系规范,|-组织规范:部门角色定义、人员岗位职责,|-研发工作流程规范,|-需求管理规范,|-系统分析规范,|-设计规范,|-开发规范,|-测试规范,|-配置规范等,|-文档模板。,下页:制订规范的原则和策略,质量规范的范围和内容规范可按以下层次展开:,21,制订规范的原则和策略,各规范的制订应以有效改进和切实可行为主要目标。,以规范为检查依据,就可以监控研发过程。,质量管理规范是总体性的,相当于质量手册,研发工作流程规范等相当于程序文件,而各具体细则相当于作业文件。,下页:针对产品质量和过程质量的管理,制订规范的原则和策略各规范的制订应以有效改进和切实可行为主要,22,针对产品质量和过程质量的管理,在制订和发布管理规范后,应遵照质量管理规范开展工作。针对质量管理本身所体现的2个方面:,1 产品本身的质量:,通过测试发现尽可能多的问题、配置管理/版本管理,增加测试人员,按测试计划执行,进行测试分析,2 开发过程控制:,先从管理上重视,通过质量经理有计划的进行,不间断的全过程监控,让开发过程以工程化的方式来进行,加强沟通交流,加强文档质量,阶段性评审作为阶段里程碑,。,下页:质量管理措施和建议,针对产品质量和过程质量的管理在制订和发布管理规范后,应遵照质,23,质量管理措施和建议(一),1实行工程化开发,研发项目是一项系统工程,必须建立严格的工程控制方法,要求开发组的每一个人都要遵守工程规范。,2实行阶段性冻结与改动控制,信息系统具有生命周期,这就为我们划分项目阶段提供了参考。一个大项目可分成若干阶段,每个阶段有自已的任务和成果。这样一方面便于管理和控制工程进度,另一方面可以增强开发人员和用户的信心。,在每个阶段末要“冻结”部分成果,作为下一阶段开发的基础。冻结之后不是不能修改,而是其修改要经过一定的审批程序,并且涉及到项目计划的调整。,3实行里程碑式的审查与版本控制,里程碑式审查就是在信息系统生命周期每个阶段结束之前,都正式使用结束标准对该阶段的冻结成果进行严格的技术审查,如果发现问题,就可以及时在阶段内解决。,版本控制是保证项目小组顺利工作的重要技术。版本控制的含义是通过给文档和程序文件编上版本号,记录每次的修改信息,使项目组的所有成员都了解文档和程序的修改过程。广义的版本控制技术称为软件配制管理,并已有功能完善的软件工具支持,如,ClearCase,PVCS,和,Microsoft Visual SourceSafe。,质量管理措施和建议(一)1实行工程化开发,24,质量管理措施和建议(二),4,实行面向用户参与的原型演化,在每个阶段的后期,快速建立反映该阶段成果的原型系统,通过原型系统与用户交互,及时得到反馈信息,验证该阶段的成果并及时纠正错误,这一技术被称为“原型演化”。原型演化技术需要先进的,CASE,工具的支持。,5尽量采用面向对象和基于构件的方法,面向对象和基于构件的开发的方法能提高软件的可重用性,将错误和缺憾局部化,同时还有利于用户的参与,这些对提高信息系统的质量都大有好处。,6全面测试,要采用适当的手段,对系统调查、系统分析、系统设计、实现和文档进行全面测试。,7引入外部监理与审计,要重视信息系统的项目管理,特别是项目人力资源的管理,因为项目成员的素质和能力以及积极性是项目成败的关键。同时还要重视第三方的监理和审计的引入,通过第三方的审查和监督来确保项目质量。,下页:质量检查措施,质量管理措施和建议(二)4实行面向用户参与的原型演化,25,质量检查措施,以下是人们经常采用的软件质量检查措施,Pressman 1999:,(1),事先把检查的主要内容制成一张清单,使检查活动集中在主要问题上。,(2)只评审工作,不评审开发者。评审的气氛应该是融洽的。存在的错误应该被有礼貌地指出来,任何人的意见都不应被阻挠或小看。,(3)建立一个议事日程并遵循它。检查过程不能放任自由,必须排照既定的方向和日程进行。,(4)不要化太多的时间争论和辩驳。,(5)说清楚问题所在,但不要企图当场解决所有问题。,(6)对检查人员进行适当的培训。,质量检查措施以下是人们经常采用的软件质量检查措施Press,26,议题4:质量思想,质量,质量管理,质量管理,改进,质量思想,质量格言,议题4:质量思想质量质量管理质量管理质量思想质量格言,27,质量管理的思想,这里要介绍和探讨一些质量管理的思想。并不全面,只求有所涉及。,质量管理的思想这里要介绍和探讨一些质量管理的思想。并不全面,,28,零缺陷,零缺陷质量管理的观念来源于一些国际上著名的硬件生产厂商。尽管软件的开发与硬件生产有极大的差别,但我们仍可以从“零缺陷”质量管理中得到启迪。,人在做一件事情也有类似情况。由于存在很多不确定的因素,一般不可能100%地达到目标。假设平常人做事能完成目标的80%。如果某个人的目标是100分,那么他最终成绩可达80分。如果某个人的目标只是60分,那么他最终成绩可能只有48分。,零缺陷零缺陷质量管理的观念来源于一些国际上著名的硬件生产厂商,29,戴明,“质量是以最经济的手段,制造出市场上最有用的产品。”,戴明,戴明(,WEdwardsDeming),博士是世界著名的质量管理专家,戴明学说对国际质量管理理论和方法始终产生着异常重要的影响。戴明学说简洁易明,其主要观点“十四要点”成为本世纪全面质量管理(,TQM),的重要理论基础。,戴明“质量是以最经济的手段,制造出市场上最有用的产品。”,