引用:http://www.baike.com/wiki/CMM3
CMM3是能力成熟度模型(Capability Maturity Model)的缩写,是由CMU/SEI(美国卡内基梅隆大学软件工程研究所)1987年开发成功的,现在普遍使用的是V1.1版本。CMM模型从1-5分为不同的等级,按照软件过程能力将一个组织定位于不同的成熟度等级。其一个重要思想是帮助一个组织通过基于模型的软件过程改进而达到使其软件过程向更高的能力成熟度等级迈进的目标。在这个过程中一个组织必须建立自己的软件过程,并依据CMM模型要求对此过程进行评估,针对评估结果来进一步改进自己的软件过程,再次评估自己的软件过程以期达到更高的成熟度等级或防止自己的过程能力退化。如此循环最终使一个组织的软件过程能力趋于高度的成熟。这样客户在选择其项目的承包商时可以依据一个组织达到CMM的某个等级来判断该组织的软件过程能力以及其是否有能力达到自己对于此项目的时间进度,资金控制,质量标准等方面对承包商的要求,从而决定是否会放心的将自己的项目交给某一个组织去做。也就是说,通过CMM认证的级别越高,其越容易获得用户的信任,在国内、国际市场上的竞争力也就越强。
应该说是非常需要的。目前我国软件企业经CMM评估达到三级的只有2-3家,达到二级的有5家。而在软件出口居于世界首位的印度,达CMM四级、五级的软件企业已占世界总量的50%~60%。同时,据IDC统计在全球软件市场中,美国占据了2/3。美国和印度软件业为何如此发达?很重要的一个原因就是:无论规模大小,绝大多数企业都按照规范化的方法管理软件研发过程,始终把客户放在首位,把通过某种标准的评估认证放在很重要的位置上。
与国外相比,我国软件企业的规模偏小,开发能力不足,资金缺乏,人才流失严重对企业造成的影响很大。事实上根据CMM模型的思想,软件产品的质量是靠人才、技术、软件研发过程3个方面共同保障的,其中人才和技术对中国的软件企业来讲往往不是什么大问题,致命的恰恰总是出现在软件研发过程上。这些都影响了中国软件企业的国际竞争能力。
入世后的中国软件企业要想走出国门,在世界软件业占有一席之地,就必须积极建立完善而标准的研发过程规范并同国际接轨。CMM3认证对中国软件企业而言,已经不仅仅是获得一种证书,而成为关系到软件企业能否从此上正规化发展道路、提高国际形象和竞争力、走出国门去国外接单的关键。
中国软件企业一个普遍存在的现象是一个技术骨干一走,技术往往就被带走了(尤其是对小企业而言,影响更为明显)。因此研发过程的规范化、文档化管理成了首要问题。
实施了CMM3是否能够规避此类风险呢?回答是肯定的。CMM3的实施将保证一个组织的项目软件研发真正能够做到铁打的营盘流水的兵。同时CMM3的实施还有其他妙处,印度的一家软件企业的老总说,在实施CMM3后其软件的可靠性提高了20%,成本降低了20%。
联想软件在实施完CMM2时的收获可以简单概括为:收益颇丰。首先是产品质量得到了提高,千行代码错误率减少了,返工次数减少了,研发管理流程得到了梳理和优化,项目管理力度得以加强,软件项目的可视性提高了,预算得到了控制,中高层经理获得了对项目进展情况的更好的了解;客户感受最深的是交货期明显缩短,合作日渐愉快。联想软件面对企业的效益至少增加20%~30%的回报,最终有种找到真正适合软件企业的管理模式的欣喜。这次通过CMM3后,联想软件对CMM又有了更加深层的体会:如果说从通过CMM2是软件工程从无序到有序的一次质的飞跃,那么通过CMM3则应该说是从简单的、基本的软件工程向科学的、成熟的软件工程转变的又一次飞跃。为了完成这次飞跃,联想软件大力提升了自身的研发水平和能力,在研发流程、研发管理、文档管理甚至是研发人员的思想观念上继续进行了更彻底的改造。企业管理标准化得到了进一步提高。可以相信,通过这种级别更高的标准化要求,联想软件工作的规范化、标准化必将提高一个层次,企业也将从中得到更多的益处。可以预见的到,通过CMM3将使联想软件的开发工作更为标准化、系统化并进而规模化,真正成为符合国际化标准的软件开发商。
1、软件研发过程文档化,软件工作产品保证了一致性和可追溯性;
2、企业内部过程改进制度化,产品开发周期控制能力,质量、成本控制能力,风险控制能力能力,生产效率等明显提高;
3、市场竞争透明化、简单化,规范了市场竞争;
4、企业国际化能力得到质的提升;
任何过程的实施都离不开人的因素,CMM3的实施、认证也一样。CMM3的引入恰如一阵春风,它对于团队协作精神的强调隐含在模型的字里行间,好的企业文化将使CMM3实施事半功倍,而希望塑造团队协作企业文化的企业,CMM3的实施将会起到强有力的推动作用。
CMM3模型对于做事能力的重视不亚于具体的工程实施,无论项目经理还是项目成员各角色,完成其角色工作的进入准则之一就是ability。在实施基于CMM模型改进过程中,将提供给员工定制的众多的培训课程,有的是针对性很强的专业课,有的是需要了解的基础课,在此过程中员工的软件工程素质得到了极大的提升,软件工程意识的提升作用于其技术上的积累,并将产生更高质的软件精品,这样的企业研发出的产品将给整个团队带来成就感,而个人素质、精神面貌与自信心也将不断改善。