一、cmmi的来源
cmmi(capability maturity model integration)即能力成熟度模型集成,其前身为cmm,原本是当年美国军方为了评估自己的软件产品供应商的过程质量水平,而委托美国卡内基梅隆大学软件工程学院(sei)开发的一套过程评估体系,后来又被推广到全世界,成为全球软件企业重要的过程改进方法之一,后因其衍生品的派系林立(如:sw-cmm、se-cmm、ipt-cmm等等),sei决定在sw-cmm、se-cmm的基础上,加入委外采购、ippd等相关内容,并融合iso9000部分理念,形成了今天我们看到的cmmi,这也就是cmmi中的“i”的由来。
目前cmmi最新版本为2011年发布的v1.3版本。
二、什么是cmmi?
cmmi是一个评估模型,它将研发机构的研发能力划分为5个级别。
cmmi也是一个过程改进模型,它指导企业逐步进行过程改进。
cmmi是业界先进的管理方法,它是sei对数千个项目进行调查总结后得出的最佳实践的集合。
cmmi是全面质量管理方法,它通过对过程的控制来确保最终输出高质量的产品。
cmmi产品包由cmmi模型、培训课程和评估方法三部分组成。
三、cmmi的构成
cmmi是由一系列的目标所构成,cmmi有一个总目标,那就是组织的过程的持续改进,这也是cmmi的愿景。在这个总目标之下,cmmi又细分为多个子目标,子目标又分为特定目标(sg)和通用目标(gg)两种;每一个g(子目标)下设有不同的实践(p)对g(子目标)的实现进行支持;sg下的实践被称为特定实践(sp),gg下的实践则被称通用实践(gp)。
cmmi除有一整套目标体系外,还根据项目管理、质量管理的关键点,建立了过程域(pa),过程域分为四个类别:过程管理类、项目管理类、工程类、以及支持类等,每一个pa都有若干个不同地sg予以支持,而gg则是支持于所有的pa实现。
四、cmmi的实施与level
cmmi的实施可以有两种方法来完成:一种是连续型,另一种是阶段型,被评估企业结合自身实际选择不同的实施方法。 连续型体现的是企业的能力度等级。
分为六个等级:
0.不完整级
1.执行级
2.管理级
3.定义级
4.量化管理級
5.佳化管理級
实施企业可选择自己比较薄弱的,或是需要加强的一个或几个pa进行实施。
阶段式体现了企业的成熟度等级。
分为五个等级:
1.初始级
5.优化管理級
这也是目前国内软件企业选择最多的实施方式。
这里暂以阶段式为例,将五个等级的关键特征进行一下简单的描述。
1、初始级。处在这一级别企业的项目开发过程始终处于黑盒状态,项目经常失控,对于关键开发人员的依赖性极大,项目组也始终处于一种救火式的状态。
2、管理级。在这一级别时,企业的项目基本保持可控状态,项目组开始建立项目级的管理机制,开发过程由黑盒状态开始转向比较清晰的阶段化和里程碑化。
3、定义级。企业由项目组级管理机制转向组织级管理机制,组织内的每一个项目组都遵循组织级开发过程进行开发工作。
4、量化管理级。从这一级开始为cmmi的高成熟度级别,此时企业已建立了基本稳定地组织级开发过程,并对重要的子过程建立ppb(过程能力基线),再根据ppb间的数据逻辑关系建立ppm(过程能力模型),ppm是用于对项目开发过程进行预测的数学模型。在建立ppb同时,还须通过对过程的量化分析,消除因过程执行异常造成的可归属原因偏差,保持ppb对组织过程能力的代表性。
5、优化管理级。企业通过ppb、ppm的量化分析,找到组织开发过程中的公共原因偏差,并通过组织级的优化、改进、以及变革,逐步加以解决,来达到企业自我改进的目的。
五、cmmi的评估
目前cmmi的评估方法采用的是scampi(standard cmmi appraisal method for process improvement)评估方法,主要检查企业实际项目和日常运作中产生的数据、文档、邮件、会议纪要、项目报告、自动化工具等各方面的记录,并对员工进行抽样访谈,了解企业员工实际开展项目的方式。
cmmi评估由sei授权主任评估师(lead appraiser)组织atm(appraisal team members)成立评估小组执行。评估全程受sei监控,最终在sei官方网站上通报评估结果。
六、通过cmmi的好处
近年来,很多软件企业纷纷实施cmmi管理模式,不少企业如:东软,托普,华为等企业通过了三级或四级评估。这一方面反映了我国企业在进入wto后的危机意识,以及与世界接轨的迫切愿望。另一方面则反映出我国软件企业在改进管理方法上所作的努力。但是cmmi到底能够为我们做什么呢?实际上这个问题对不同的人有不同的答案。对采购部门的人员来说,掌握了cmmi技术可以有目的地考察项目实施人员或公司的实施能力,从而保证所采购的项目能够顺利完成。对于项目经理来说,掌握cmmi技术能够提高自己的项目管理能力,从而能够使项目高质量,低成本,按期限地完成。对于企业老总来说,cmmi技术不仅能够提升企业的管理水平,还能够引入科学的管理理念,提升企业的整体管理水平。
在美国,很多企业通过cmmi评估一方面为了满足承包国防工程或一些大企业的工程的要求,另一方面也是为了提高企业自身的管理能力。美国政府的工程项目,绝大多数都要求承包商具有一定的cmmi级别作为参加投标的资格。越来越多的大型企业业开始要求其工程承包商具有一定的cmmi级别。在国内很多大型项目的投标中,很多都要去企业用于cmmi的资质,而且大企业也希望通过cmmi改善自身的管理水平,帮助软件企业对软件工程过程进行管理和改进,增强开发与改进能力。