CMM是指“能力成熟度模型”,其英文全称为Capability Maturity Model for Software,英文缩写为SW-CMM,简称CMM。它是对于软件组织在定义、实施、度量、控制和改善其软件过程的实践中各个发展阶段的描述。CMM的核心是把软件开发视为一个过程,并根据这一原则对软件开发和维护进行过程监控和研究,以使其更加科学化、标准化、使企业能够更好地实现商业目标。
CMMI认证是由美国软件工程学会(software engineering institue,简称SEI)制定的一套专门针对软件产品的质量管理和质量保证标准. CMMI 的全称为:Capability Maturity Model Integration,即能力成熟度模型集成。
CMMI的五个台阶(五个等级): 台阶一:CMMI一级,完成级。 在完成级水平上,企业对项目的目标与要做的努力很清晰,项目的目标得以实现。但是由于任务的完成带有很大的偶然性,企业无法保证在实施同类项目的时候仍然能够完成任务。企业在一级上的项目实施对实施人员有很大的依赖性。 台阶二:CMMI二级,管理级。 在管理级水平上,企业在项目实施上能够遵守既定的计划与流程,有资源准备,权责到人,对相关的项目实施人员有相应的培训,对整个流程有监测与控制,并与上级单位对项目与流程进行审查。企业在二级水平上体现了对项目的一系列的管理程序。这一系列的管理手段排除了企业在一级时完成任务的随机性,保证了企业的所有项目实施都会得到成功。 台阶三:CMMI三级,定义级。 在定义级水平上,企业不仅能够对项目的实施有一整套的管理措施,并保障项目的完成;而且,企业能够根据自身辩肆的特殊情况以及自己的标准流程,将这套管理体系与流程予以制度化这样,企业不仅能够在同类的项目上生到成功喊搭的实施,在不同类的项目上一样能够得到成功的实施。科学的管理成为企业的一种文化,企业的组织财富。 台阶四:CMMI四级,量化管理级。 在量化管理级水平上,企业的项目管理不仅形成了一种制度,而且要实现数字化的管理。对管理流程要做到量化与数字化。通过量化技术来实现流程的稳定性,实现管理的精度,降低项目实施在质量上的波动。 台阶五:CMMI五级,优化级。 在优化级水平上,企业的项目管理达到了最高的境界。企业不仅能够通过信息手段与数字化手段来实现对项目的管理,而且能够充分利用信息资料,对企业在项目实施的过程中可能出现的次品予以预防。能够主动地改善流程,运用新技术,实携渗轿现流程的优化。 由上述的五个台阶我们可以看出,每一个台阶都是上面一阶台阶的基石。要上高层台阶必须首先踏上较低一层台阶。企业在实施CMMI的时候,路要一步一步地走。一般地讲,应该先从二级入手。在管理上下功夫。争取最终实现CMMI的第五级。
Q:SEI 最新推出的CMMI是什么?我们是应该选择CMMI还是CMM?
A:CMMI 的全称为:Capability Maturity Model Integration,即能力成熟度游判模型集成。自从1994 年SEI 正式发布软件CMM 以来,相继又开发出了系统工程、软件采购、人力资源管理以及集成产品和过程开发方面的多个能力成熟度模型。虽然这些模型在许多组织都得到了良好的应用,但对于一些大型软件企业来说,可能会出现需要同时采用多种模型来改进自己多方面过程能力的情况。这时他们就会发现存在一些问题,其中主要问题体现在:
★ 不能集中其不同过程改进的能力以取得更大成绩;
★ 要进行一些重复的培训、评估和改进活动,因而增加了许多成本;
★ 遇到不同模型中有一些对相同事物说法不一致,或活动不协调,甚至相抵触。
于是,希望整合不同CMM 模型的需求产生了。1997 年,美国联邦航空管理局(FAA)开发了FAA-iCMMSM(联邦航空管理局的集成CMM),该模型集成了适用于系统工程的SE-CMM、软件获取的 SA-CMM 和软件的SW-CMM 三个模型中的所有原则、概念和实践。该模型被认为是第一个集成化的模型。
CMMI 与CMM 最大的不同点在于:
★ CMMISM-SE/SW/IPPD/SS 1.1 版本有四个集成成分,即:系统工程(SE)和软件工程(SW)是基本的科目,对于有些组织还可以应用集成产品和过程开发方面(IPPD)的内容,如果涉及到供应商外包管理可以相应的应用SS(Supplier Sourcing)部分。
★ CMMI 有两种表示方法,一种是大家很熟悉的,和软件CMM 一样的阶段式表现方法,另一种是连续式的表现方法。这两种表现方法的区别是:阶段式表现方法仍然把CMMI 中的若干个过程区域分成了5 个成熟度级别,帮助实施CMMI 的组织建议一条比较容易实现的过程改进发展道路。而连续式表现方法则通过将CMMI 中过程区域分为四大类:过程管理、项目管理、工程以及支持。对于每个大类中的过程区域,又进一步分为基本的和高级的。这样,在按照连续式表示方法实施 CMMI的时候,一个组织可以把项目管理或者其他某类的实践一直做到最好,而其他方面的过程区域可以完全不必考虑。
★ 软件CMM 2 级共有6 个关键过程区域,在CMMI 增加了1 个:度量和分析。原来的6 个关键过程区域的名称和内容在CMMI 中作了部分改进,但是主体内容没有大幅调整。软件CMM 4 级共有2 个关键过程区域,在CMMI 中仍是2 个,只是名称和内容有所改进。软件CMM 5 级共有3 个KPA,在CMMI 中进行了合并,改为2 个,但主要内容未变。变化最显著的在CMMI 3 级上,原有的7 个KPA 变成了14 个,其中原来对工程活动进行要求的KPA--软件产品工程进行了详细的拆分,并结合常见的软件生命周期模型进行了映射。CMMI 中新增的过程区域中还涉及到过去未曾提到的内容,比如决策分析和解决方案、集成团队等。
到底是选择CMM 还是CMMI 主要基于以下几个方面进行考虑:
★ 实施企业的业务特点:如果企业的规模不是很大,业务又以软件开发为主,那么还是软件CMM 比较适用。如果企业的规模比较大(开发人员100 人以上),并且业务不仅仅集中在软件开发,还包括硬件开发哪怕是硬件代理(采购)都可以考虑实施CMMI。
★ 实施企业对过程改进的熟悉程度:如果企业已经实施过ISO 9000,并且取得了较好的效果,那么可以考虑实施CMMI。如果企业虽然没有实施过CMM,但是对于过程改进一直比较关注,接受过不少相关培训,甚至能够自发的进行一些过程改进,那么也可以考虑实施CMMI。如果过去没有接触过类似的工作,那么最好先从软件CMM 2级开始,首先建立持续过程改进的思路。另外,软件CMM的要求也比CMMI要稍低一些。衡漏可以适当降低实施的难度。
★ 实施企业对过程改进项目的预算:不论怎样,几乎可以肯定地说,实施CMMI 的费用肯定要比实施CMM 高出一些。而就模型神拦改本身来看,CMMI 的2 级7 个过程区域在内容上并不比软件CMM 的2 级6 个关键过程区域多多少。这样的话,我们完全可以“少花钱、多办事”,也就是说可以采用CMM 的实施和评估方法,但可以在过程改进的时候参考CMMI 的要求,这样就经济很多。
★ 实施企业是否可以使用阶段式的演进路线:如果企业只希望单方面的提高自己在项目管理、工程活动、支持活动或者过程管理四个方面中的某些方面的能力,那么就只能应用CMMI 的连续表示方法。如果实施企业可以接受成熟度级别的思路(目前看国内大多数企业还是比较习惯于成熟度级别的),那么就不一定必须选择CMMI 了。
★ 实施CMM与CMMI可以平滑的转换。一来,CMMI 并不要求一家企业必须先做CMMI的2级然后再向更高的成熟级别演进,评估的时候也没有这样的要求。另外,CMMI的评估都会根据被评估的成熟度级别,检查所有不高于该级别的过程区域。换句话说,一个企业在CMM正式评估中达到了2 级的成熟度,将来改为基于CMMI进行过程改进。在CMMI3级的正式评估时,CMMI2级的内容同样要进行检查。如果我们能够在做CMM2级的时候就按照CMMI的要求实施,效果没有任何的折扣,但对于实施企业来说,会节省很多在培训和评估方面的“额外”费用。(此处的“额外”费用是指CMMI 收费比CMM 高出的部分)
Q:听说SEI 到2003 年底将不再继续支持SW-CMM 1.1 版,那我们是不是到时候必须要改为使用CMMI?
A:到目前为止了解到消息确实如此,不过软件CMM 并不像大家想象的那样到2003年底就不复存在了。SEI 为了让CMMI 有更多的用户,已经宣布到2003 年底,不再继续对软件CMM 提供支持。这种现象就像是微软公司在推出新版本的Windows 后,一段时间后就不再对过去版本的产品提供技术支持是一样的道理。但为什么可以说CMM 并不会到了2003 年底就不复存在了呢?这要从SEI 对于CMM 的支持都包括哪些内容说起,其中主要包括提供CMM 相关知识的培训,公开世界上一些软件组织实施CMM 后发表的论文,解答来自全球软件组织关于CMM 的问题,为主任评估师提供授权证书,管理CMM 正式评估相关的信息数据库等等。除此以外,大家还要知道每位主任评估师的资格证书是有2 年的有效期的。这样我们就可以作出下面的结论了:如果主任评估师在2003 年拿到了资格证书,他们可以在2004 年和2005 年继续为软件企业提供培训和CMM 正式评估的服务,而此时SEI 对这样的结果是认可的,只不过SEI 不会在进入2004 年以后在颁发新的CMM 主任评估师的资格证书了。按照这样的思路,我们可以说CMM 可以一直使用的2005 年12 月。在那之后,恐怕大家只能使用CMMI 了。可是,现在在主任评估师当中,仍然存在着大量的争论,很多人仍然坚信CMMI 不能完全替代CMM。客观地讲,CMMI 确实比CMM 要先进,质量也高出不少。但CMM 已经被应用了10 年多了,有些人对它的感情还是很深的,所有有的主任评估师猜想SEI 可能会延长对CMM 的支持时间。但目前我们还没有受到任何这方面的消息。
cmm:Capability Maturity Model 能兆稿兄力成熟度模型
cmmi:Capability Maturity Model Integration 集成的能力成熟度模型
是由美国软件工程族袭学会SEI开发的一个敬碧最佳实践的集合。
具体内容请参考:http://www.sei.cmu.edu/
"CMM是指“信塌能力成熟度模型”,其英文全称为桥坦烂Capability Maturity Model for Software,英文缩写为SW-CMM,简称CMM。它是对于软件组织在定义、实施、度量、控制和改善其软件过程的实践中各个发展阶段的描述。
CMM的核心是把软件开发视为一个过程,并根据这一原则对软件开发和维护进行过程监控和研究,以使其更加科学化、标准化、使企业能够更好地实现商业目标。
CMMI认证是由美国软件工程学会(software engineering institue,简称SEI)制定的一套专门针对软件产品的质敏漏量管理和质量保证标准. CMMI 的全称为:Capability Maturity Model Integration,即能力成熟度模型集成。"