定义:对于软件组织在定义、实现、度量、控制和 改善其软件过程的各个发展阶段的描述。
目的:帮助企业进行对软件工程过程的管理和改进 , 增强开发制造能力 , 从而能按时地、不超预算地制造质量的软件。通俗一点说,CMMI就是一套指南,做事的一般方法,改进质量的参考框架。我们参考它提供的方法,通过控制我们的项目管理过程,来达到提高软件质量的目的。
CMMI分了5个等级22个过程域,分别是CMMI1~CMMI5,但CMMI1和CMMI2对项目管理活动的指导作用是很小的,企业要做CMMI认证都是要通过CMMI3。给一张过程域分布图给大家参考,了解一下即可。很多传统的软件公司,认证CMMI3主要是出于商业目的。很多招标都把通过CMMI3作为门槛。而且通过CMMI3的认证,可以一定程度上提升企业形象,间接的提高企业竞争力,避免一些个别客户的质疑。当然,多数做CMMI认证的单位也希望借助这套体系来改进或者解决项目管理中出现的问题。先来说说软件企业常见的问题:
1.软件项目无法按期交付,费用超出预算 ;2.需求规格说明总是一改再改 ;
3.人员的变动对企业带来的影响 ;
4.维护成本居高不下 ;5.不能在顾客希望的时间内完成维护 , 顾客抱怨不停;
6.软件的可移植性差;7.软件的可复用性差。
大家可以试想一下,平时遇到这些问题时我们都是怎么去解决呢?我想每个人都能说出个一二三来。问题在于,是否有更好的方式来解决呢?一般来说是有的。项目管理中的问题大都是共通的,CMMI通过积累和研究这些问题,给出了一些问题解决指南。拿需求频繁变化这个问题来说,原因是什么呢?可能是因为客户想法一直在变,可能是设计时考虑的不周到,到了编码或者测试阶段才发现问题,也可能是需求写的不够清晰,导致不同的人产生了不同的理解。如果是后者,我们是否可以通过出一个“完美而标准”的《需求规格说明书模板》来改进甚至解决呢?答案是肯定的。再比如说,在资料库整理方面。我见过一些单位的项目资料库,简单来说就是一个字“乱”。每次要耗费大量时间才能找到想要的资料,不同的项目资料整理方式还不一样,有时候甚至有关键资料缺失。更有甚者,资料库都没有,人员一流动,整个团队都可能无法运转。这种情况,我们是不是可以通过制定一些规范来解决这种问题呢?不言而喻。
至于其他的,如果公司或者项目有需要,我们可以参考CMMI里面提供的指南来提高项目的可视性、评估工作量、控制成本......这里就不一一细说了。需要了解CMMI认证相关条件,请咨询在线客服。