资源描述
,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,CMMI,与软件质量管理,李阳,目的,了解公司实施,CMMI,的目的,了解,CMMI,理解,CMMI,质量管理的基本理念,了解,CMMI,所包含的质量管理的实践和要求。,明确以提高产品质量为目的的项目质量管理所涵盖的内容和方法,内容,实施,CMMI,的驱动是什么,CMMI,是什么,CMMI,的五个等级和,22,个过程域,基于,过程的质量管理,项目质量管理的,3,个方面:质量保证、质量控制和质量工程的实践,质量保证,-,概念及,QA,的,角色,质量控制,项目质量工程的实践,实施,CMMI,的驱动,公司研发部的目标,合法地赚取尽可能多的,利润,是企业的利益最大化。,企业所有,的特定目标和,行动都是围绕着上述根本目标开展的。,年度目标,三年规划,企业的根本目标,实施,CMMI,的驱动,研发部目标,开发,正确,的产品,正确,地开发产品,何谓正确?,何谓正确?,怎样才算,正确的,开发产品,从结果来看:交付及时、质量高、投入少,项目的四要素:范围、时间、质量、成本,在范围确定的前提下,保证进度、提高质量、降低成本。(高效率、高质量、低成本),要实现高效率、高质量、低成本地开发软件,必须,改善软件生产过程,,这是当前软件管理工程的,核心,问题。,CMMI,能给我们带来什么,改进软件产品的质量,改进项目满足预定目标的能力,减少开发成本和周期,降低项目风险,更有效地控制供应商,提高组织过程能力,提高竞争力,市场占有率,效益,.,CMMI,是什么,CMMI,是一个集成的、可扩展的架构,用于改进组织内的过程能力和质量。,CMMI,的全称为:,Capability Maturity Model Integration,,即能力成熟度模型集成。,CMMI,体系有三个模型:,CMMI-DEV,(开发),、,CMMI-ACQ,(采购)、,CMMI-SVC,(服务),CMMI,的本质是软件工程管理的一部分,是一种基于模型进行过程改进的思想。,CMMI,的五个等级:,1,初始级,2,可重复级,3,已定义级,4,量化管理级,5,优化管理级,每个等级都被分解为过程域,特殊目标和特殊实践,通用目标、通用实践和共同,特性。,每个等级都有几个过程区域组成,这几个过程域共同形成一种软件过程能力。每个过程域,都有一些特殊目标和通用目标,通过相应的特殊实践和通用实践来实现这些目标。当一个过程域的所有特殊实践和通用实践都按要求得到实施,就能实现该过程域的目标。,过程域,REQM,(,需求管理,)、,PP,(,项目策划,)、,PMC,(,项目监控,)、,SAM,(,供应商协议管理,)、,MA,(,度量分析,)、,PPQA,(,过程和产品质量保证,)、,CM,(,配置管理,),RD,(,需求开发,)、,TS,(,技术解决,)、,PI,(,产品集成,)、,VER,(,验证,)、,VAL,(,确认,)、,OPF,(,组织过程焦点,)、,OPD,(,组织过程定义,)、,OT,(,组织培训,)、,IPM,(,集成项目管理,)、,RSKM,(,风险管理,)、,DAR,(,决策分析与解决方案,),OPP,(,组织过程绩效,)、,QPM,(,定量项目管理,),OID,(,组织革新与推广,)、,CAR,(,原因分析与解决方案,),过程类型,项目管理:,PP,、,PMC,、,SAM,、,IPM,、,RSKM,、,QPM,工程:,REQM,、,RD,、,TS,、,PI,、,VER,、,VAL,支持:,MA,、,PPQA,、,CM,、,DAR,、,CAR,过程,管理:,OPF,、,OPD,、,OT,、,OPP,、,OID,质量对成本和进度的影响,早期阶段工作产品的低质量将最终影响成本和进度,开发过程中较早引入的缺陷,如果未加消除,将在后期花费更多的资源来治理。,单独依靠产品交付前的测试会更多地牺牲进度和成本,成熟的过程在项目早期就开始控制工作产品的质量,缺陷预防的方法能达到成本效益最佳,成本和进度是确定质量等级的主要影响因素之一,CMMI,质量管理的理念,软件质量管理,确定一个软件产品的质量目标、建立实现这些目标的计划以及监督和调整软件计划、软件工作产品、活动和质量目标以满足顾客和最终用户需要和期望的过程。,“,产品的质量在很大程度上取决于用以开发和维护该产品的过程的质量。,”,CMMI,质量管理的理念,基于过程的质量,定义过程,否,是,开发产品,评估产品质量,改进过程,将过程制度化,质量,OK,质量管理的职责,质量管理体系和过程的建立在组织级,实施在项目级;,组织质量管理的职责,质量目标是组织的商业目标之一,建立质量方针和策略,提供资源和支持,项目质量管理的职责,把质量构建到产品中去,实施对产品质量的监控,项目如何实施质量管理?,项目质量管理的主要环节,质量保证,质量控制,质量工程的实践,软件质量保证,什么是软件质量保证?,由(相对)独立的质量管理人员在项目的整个开发周期中对项目所执行的过程和产生的工作产品进行监督和检查,确保其符合预定的要求。,条,件:组织已经制定了较为完备的开发和管理过程体系,质量保证的目的,确保过程得到有效地执行,并推进过程改进,就项目过程的执行情况和所构造的产品向管理者提供适当的可视性,质量保证有效实施的前提,各级管理者相信“过程”,高级管理者提供资源和支持,QA,的主动性,理解,QA,的角色,QA,关注的是,:,正确的贯彻和使用过程,客观地审视项目过程的符合性,与,EPG,组共同分析执行过程所产生的结果,,以支持过程改进,合作协调地开展工作,提供执行过程的反馈意见,为项目人员掌握过程提供指导,理解,QA,的角色,QA,不承担,:,对模型符合性的监督,验证项目工作产品的好坏,产品质量的责任,强迫对过程的遵循,质量控制,为评价和验证已开发的产品而执行的活动和技术,产品是否满足质量要素的要求,?,产品,(,包括生命周期的工作产品,),是否具有可接受的质量,?,工具和技术,同行评审,/,技术评审,测试,质量控制的目的,发现在工作产品中隐藏的缺陷和问题,为产品的质量分析提供数据,评审,评审,软件技术人员(包括管理人员、用户代表)以会议的形式对软件产品进行评论,识别存在的问题,并判断其是否满足预期的要求。,同行评审,在工作产品的开发进程中由同行们对该工作产品进行的评审,目的是识别要消除的缺陷。,方式:审查、走查,评审过程,评审的检查单,评审记录和报告,测试,测试,-,对产品的动态检测和评价,不同层次,单元测试、集成测试,.,不同的类型,黑盒、白盒,目的:,验证产品符合技术文档预期的特性、功能和性能等要求;识别产品的缺陷。,正式测试过程,测试规程、方法和工具,缺陷的记录和跟踪机制,评审和测试关注的重点,过程发现缺陷的能力,对过程活动和产品质量状况的了解,质量工程,确保将质量构建到软件产品而对需求、设计、代码和验证过程和结果所进行的各种分析、研究和调控,以确保产品的可靠性、可维护性和其它质量要素得到满足的活动。,早期的错误发现,缺陷消除有效性分析,质量成本的优化,缺陷预防,尽早消除缺陷的价值,缺陷修改的成本,1,:,10,:,100,0,10,20,30,40,50,60,100,需求,设计,编码,系统测试,维护,成本,1,5,20,50,100+,缺陷数据是质量活动的基础,策划将来的项目和项目的后续阶段,积累的缺陷历史数据在项目策划中可以用来确立项目的质量目标,估计缺陷密度,缺陷消除率,在开发进程中利用项目前期采集的缺陷数据来预测产品潜在的缺陷,采取适当的措施来改进质量,规划产品的维护工作,利用缺陷数据评估,过程,项目,缺陷预防,错误发生的类别,原因分析,分析缺陷数据,对每次评审和测试活动收集的数据进行汇总和分析,缺陷分布的趋势及其对产品质量的影响,识别缺陷引入阶段,缺陷密度,-,缺陷是否被充分地发现,改进质量的途径,-,尽早消除缺陷,需 求,设 计,编 码,单元测试,系统测试,集成测试,交付,/,维护,缺陷数,在总体注入缺陷相同的情况下,尽早地消除缺陷可以使交付产品的质量大大提高。,缺陷预测,缺陷数,需 求,设 计,编 码,单元测试,系统测试,部件测试,交付使用,小结,软件质量管理是一项艰巨的任务,了解质量管理的基础知识、方法和工具,逐步实施质量管理的实践,The,end,Thanks,2011.5.12,
展开阅读全文