作为一个理解和改进软件开发实践的框架,第一个软件能力成熟度模型(CMM-SW)最先由SEI在1987年发布,美国国防部资助了这一计划。CMM框架是基于这样一个假设,改进的过程能力将为软件开发项目带来更好的结果。它的主要目的是要成为供应商评价的一个工具:帮助采购软件的组织识别那些有着可靠过程和充分资质的组织。
此后,很多个相关的成熟度模型被开发出来并得到了一定认可,每个都有着不同的标准和框架。为了相互联结并提供一种描述成熟度的通用方法,这些模型被集成到了1.1版的CMMI 。在现在的1.2版中,CMMI包含了不同的学科:软件(SW)、系统(SE)、集成产品和过程开发(IPPD)以及供应商开发(SS)。通过把这些学科集成起来,该模型在内容中反映了所有4个学科。图7.1 对CMMI框架发展历史上的里程碑做出了概括。图7.1 CMMI的历史CMM都以过程的改进为中心,这些过程改进涉及到组织中的产品(软件和系统)计划、研发、质量控制和实施。这些CMM都包含了一个或者多个学科中有效过程的基本要素,还描绘了从不系统、不成熟的过程发展到很有章法的成熟过程的渐进的改进路径,在成熟的过程下,质量和有效性都会得到改进。虽然已经证实这些模型对不同行业中的很多组织都是行之有效的,但使用多个模型却也碰到了问题。许多组织希望他们的改进努力能延伸到他们组织的不同部门。但是,每个部门使用的专门领域模型间的区别,包括它们的结构、内容和方案上的区别,限制了这些组织成功地推广改进的能力。并且,在一个组织中广泛地使用没有经过整合的多个模型在培训、评价和改进活动方面都代价高昂。|www.aihuau.com|CMMI项目的目标是通过把多个不同的模型集成到一个框架来改进软件工程和其他领域成熟度模型的可用性。CMMI产品小组的第一个任务是合并以下三个源模型:● 软件能力成熟度模型(SW-CMM) v2.0 草案C [SEI 1997b]。● 系统工程能力模型 (SECMM) [EIA 1998]。● 集成产品开发能力成熟度模型(IPD-CMM) v0.98 [SEI 1997a]。将这三个模型合并成一个改进框架是为了供在全企业范围内寻求过程改进的组织使用。最近,人们改进了CMMI模型的结构以支持多个领域以及在多个领域和它们的模型间实现最佳实践共享。在两个新领域的工作已经开始:一个在服务领域(服务CMMI),另一个在采购领域(采购CMMI)。这个任务的创建是为了执行联邦政府同卡耐基梅隆大学为运营软件工程研究所 (SEI)的编号为FA8721-05-C-0003的合同,软件工程研究所是一个由联邦提供资金的研发中心。美国政府有一个无须支付版税的政府专用许可证来使用这项工作的成果(或者它的一部分) 。SEI是一个美国国防部资助的由联邦提供资金的研发中心。