CMM是由美國軟件工程學會(Software engineering inStitute)制定的一套專門針對軟件產品的質量管理和質量保證標準。該標準最初是為美國軍方選擇軟件產品提供商時評價軟件企業的軟件開發質量保證能力而制定,所以稱為軟件企業能力成熟度模型(Capability Maturity Model,簡稱CMM)。該標準將軟件企業的能力成熟度劃分為5個等級,級別越高表明該企業在提供合格軟件產品方面的能力越強。
CMMCapability Maturity Model 是能力,成熟度模型的縮寫。CMM的工作最早開始于 1986年11月,當時為了滿足美國聯邦政府評估軟件供應商能力的要求,美國卡內基·梅隆大學的軟件工程研究院Sei 牽頭,在Mitre公司的協助下,于1987年9月發布了一份能力成熟度框架Capability Maturity fraMework 以及一套成熟度問卷 Maturity QueStionnaire .很多人認為這套問卷就代表了CMM模型,其實它只是用于探索軟件過程成熟度的一個工具,真正的模型出現在四年以后。Sei總結了自1987年以來對成熟度框架和初版成熟度問卷的實戰經驗,并以此為基礎,推出了CMM1.0 版。這個推出于 1991年的 CMM1.0 集中了四年來對軟件公司評估的經驗以及廣泛的用戶反饋,在成熟度框架的基礎上建立了一個可用的模型,這個模型可以更加有效地幫助軟件企業建立和實施過程改進計劃。
CMM1.0 版使用兩年之后,于1992年四月進行了一個研討會,參加研討會的有約兩百名富有經驗的軟件專業人員。在廣泛聽取了他們的反饋意見之后,Sei于 1993 年推出了CMM1.1 版。近幾年來,CMM又推出了2.0 版本,同時進入了iSo 體系,稱為 iSo/ieC15504 或 SpiCe. SpiCe從1995年起進入實地測試階段,可能于2001年發布 。
CMM 致力于軟件開發過程的管理及工程能力的提高與評估。該模型在美國和北美地區已得到廣泛應用同時正在被越來越多的歐洲和亞洲等國家的大型信息技術企業所采納,實際上已成為軟件開發過程改進與評估的事實上的工業標準。
印度是軟件大國,十分重視軟件開發過程的管理及與其相關的理論與標準的發展。據統計,在印度的2000多家軟件公司中有75家軟件公司通過了iSo9000認證,60多家軟件公司通過了CMM認證,其中達到CMM5級一家,4級三家,3級4家。
CMM與iSo9000的區別主要有以下幾點:CMM是專門針對軟件產品開發及服務的,而iSo9000則有寬得多的范圍;CMM強調軟件開發過程的成熟度,即過程的不斷改進和提高,而iSo9000則僅描述可接收的質量體系的最低標準;CMM3級的覆蓋范圍要大于iSo9000的覆蓋范圍。
引進CMM的意義有兩個方面
1.對軟件企業:
提高軟件開發的管理能力:CMM提供了軟件企業自我評估的方法和自我提高的手段;提高軟件生產率;加強軟件生產的國際競爭力。
2.對軟件項目發包單位和軟件用戶:
提供了對軟件開發商開發管理水平的評估手段,有助于軟件開發項目的風險識別。