什么是CMM?

CMM是一种用于评价软件承包能力并帮助其改善软件质量的方法,侧重于软件开发过程的管理及工程能力的提高与评估。CMM分为五个等级:一级为初始级,二级为可重复级,三级为已定义级,四级为已管理级,五级为优化级。

CMM是由美国卡内基梅隆大学软件工程研究所1987年研制成功的,是国际上最流行最实用的软件生产过程标准和软件企业成熟度等级认证标准。我国已有软件企业通过了CMM标准认证 。

什么是CMMI?

CMMI(Capability Maturity Model Integration 能力成熟度模型集成),是美国国防部的一个设想。他们希望把所有现存的与将被发展出来的各种能力成熟度模型,集成到一个框架中去。

这个框架用于解决两个问题:第一,软件获取办法的改革;第二,从集成产品与过程发展的角度出发,建立一种包含健全的系统开发原则的过程改进。

CMM与CMMI的关系

为了保证软件产品的质量,80年代中期,美国联邦政府提出对软件承包商的软件开发能力进行评估的要求。因此,美国卡内基-梅隆大学软件工程研究所 (CMU/SEI) 于1987年研究发布了软件过程成熟度框架,并提供了软件过程评估和软件能力评价两种评估方法和软件成熟度提问单。4年之后,SEI将软件过程成熟度框架进化为软件能力成熟度模型(Capability Maturity Model For Software,简称SW-CMM),并发布了最早的SW-CMM 1.0版。经过两年的试用,1993年SEI正式发布了SW-CMM1.1版,这是目前使用最为广泛的版本。

自1991年SW-CMM首次发布后,SEI又开发了其他成熟度模型,包括:系统工程、采购、人力资源管理和集成产品开发等。虽然各个模型针对的专业领域不同,但彼此之间也有一定的重叠,毕竟它们同出一辙;另外,这些模型在表现形式上又有不统一之处:系统工程模型是连续式的,而其他模型采用了分级式。当SEI开始开发新一代成熟度模型的时候,其发起人提出了新的要求:整合不同模型中的最佳实践,建立统一模型,覆盖不同领域,供企业进行整个组织的全面过程改进。所以,SEI于2001年12月正式发布了能力成熟度集成模型(CMMI)1.1版本,这次发布标志着CMMI的正式使用。SEI也正式宣布,将不再维护SW-CMM的CBA-IPI评估方法:在CMMI1.1发布后的两年内,SEI还提供有关SW-CMM和CBA-IPI主任评估员的培训,并接收评估数据,但这一切已于2003年12月底正式停止。

SEI并没有废除CMM模型,而是以CMMI的SCAMPI评估方法取代CMM的CBA-IPI评估方法。当然很多业内人士认为,随着软件行业的发展,CMMI模型将最终取代CMM模型。