
3.2.4 能力成熟度模型集成(CMMI)
软件工程研究所(SEI)是1984年成立的。在Watts Humphrey以及之后Bill Curtis博士和其他同事的领导下,SEI为软件开发实践开发出一个评估方法,称为“能力成熟度模型”或简称为CMM。这个模型于1987年首次发布。
在1996年,这个模型被扩展,除了包含开发(development)之外还包含了获取(acquisition)。这个较新的版本被称为能力成熟度模型集成(Capability Maturity Model Integrated)或简称为CMMI。还有用于处理各种人员问题的人力资源成熟度模型。
因为SEI和CMM早期的资金来自美国国防部高等研究项目局(DARPA),所以CMM很快成为了军事软件应用程序的标准。事实上,达到旧的CMM 3级是得到软件合同的军用标准。
本书的一位作者曾在SEI工作过,他领导了几年CMMI的开发实践。另外一位作者曾与美国空军合作度量过CMM从1级到5级的结果。
来自两位作者的数据都表明,旧的CMM和新的CMMI在减少潜在缺陷和提高缺陷清除效率上起到了双重的作用。这种收益随着CMMI等级的提高而增加。
也就是说,如果你对一个有50个CMMI 3级项目的样本进行度量,并将度量的结果与同样规模和类型的50个CMMI 1级项目的样本进行比较,则大部分(但不是全部)CMMI 3级项目的潜在缺陷会比CMMI 1级项目和没有CMMI级别的项目要少。
尽管CMM和CMMI已经被证明是成功的,但是这些方法还是主要应用于军事和国防软件应用程序。在涉及州政府软件组织和各种行业组织的研究中,不仅CMMI很少使用,而且很多CIO(首席信息官)和软件人员甚至从未听说过SEI。
2009年和2010年的研究表明,在美国几个州政府和行业组织中,只有大概5%使用了CMMI。这项研究中,大约200个参与者中多于75%的人不知道"CMMI"是什么意思而且没有听说过SEI。这也是一个信号,SEI需要将其市场扩展到传统的国防领域之外。