1. 什么是CMMI
CMMI的全稱為Capability Maturity Model Integration,即能力成熟度模型集成,是在CMM(Capability Maturity Model For Software,軟件能力成熟度模型)的基礎上發展而來的。CMMI是由美國卡耐基梅隆大學軟件工程研究所(Software Engineering Institute,SEI)組織全世界的軟件過程改進和軟件開發管理方面的專家歷時四年而開發出來的,并在全世界推廣實施的一種軟件能力成熟度評估標準,主要用于指導軟件開發過程的改進和進行軟件開發能力的評估。
CMMI在全世界范圍內得到了廣泛的推廣和使用,經過多個行業和組織的實踐被認定為卓越的過程改進模型。
2. CMMI的表達形式
CMMI模型包括階段式表達方式和連續式表達方式,當前主流使用階段是表達方式。CMMI模型共分為五個等級:
(1)第一級 初始級
達到CMMI的1級即初始級, CMMI模型的各實踐域在組織中應該能夠基本執行,例如在軟件工程方面組織能夠執行需求開發、軟件設計、編碼實現以及系統測試這些工作,其級別特征如下:
- 描述滿足實踐域意圖的初步方法的基本實踐。
- 沒有一套完整的實踐來滿足實踐域的全部意圖。
- 開始專注于能力問題。
(2)第二級 管理級
在管理級水平上,所有第一級的要求都已經達到,另外,軟件組織在項目實施上能夠遵守既定的計劃與流程,有資源準備,權責到人,對項目相關的實施人員進行了相應的培訓,對整個流程進行監測與控制,并聯合上級單位對項目與流程進行審查。二級水平的軟件組織對項目有一系列管理程序,避免了軟件組織完成任務的隨機性,保證了軟件組織實施項目的成功率。每個項目都可以使用自己的方式達到實踐域的目標,其級別特征如下:
- 簡單但完整的一組實踐,能夠滿足實踐域的全部意圖
- 不需要使用組織資產或標準。
- 實踐的意圖可以基于項目以各種方式得到滿足。
- 識別和監督項目性能目標。
(3)第三級 定義級
在定義級水平上,所有第二級的要求都已經達到,另外,軟件組織能夠根據自身的情況及自己的標準流程,將這套管理體系與流程予以制度化。同時,要求組織建立過程資產庫,基于歷史項目的管理資產和技術資產得到有效的復用。這樣,軟件組織不僅能夠在同類項目上成功,也可以在其他項目上成功??茖W管理成為軟件組織的一種文化,成為軟件組織的財富。其級別特征如下:
- 采用組織標準流程開展各項工作,包括依據項目特征對組織的標準流程進行裁剪以解決特定的項目和工作特征。
- 使用和貢獻組織過程資產。
- 管理項目和組織的性能。
(4)第四級 量化管理級
在量化管理級水平上,所有第三級的要求都已經達到。另外,組織的項目管理實現了數字化。通過數字化技術來實現流程的穩定性,實現管理的精度,降低項目實施在質量上的波動。通過歷史數據能夠構建可預測模型,對組織和項目未來的能力實現可預測。其級別特征如下:
- 使用統計和其他量化技術來監控或改建關鍵領域,預測組織或項目的質量與過程性能目標是否能夠實現。
- 從統計和量化的角度了解組織性能的變化,并根據質量和過程性能目標管理進度。
(5)第五級 優化級
在優化級水平上,所有第四級的要求都已經達到,另外,組織能夠充分利用管理數據,對軟件組織在項目實施的過程中可能出現的不符合進行預防。能夠主動地改進流程,運用新技術,實現流程的持續優化。其級別特征如下: 使用統計和其他量化技術來優化性能并改善組織目標的實現,包括業務、度量和性能以及質量與過程性能目標。
3. 如何采用CMMI模型
CMMI模型是針對組織的業務能力和管理能力改進的行業最佳實踐集合。CMMI從模型的角度抽象出整個行業達成共識的最佳實踐,用于指導各個組織建立適用于自己的管理方法,并對組織的商業目標達成產生價值。模型的最佳實踐關注的是需要做什么來提高組織的性能,而不是如何去做。各個行業和組織的情況不同,采用CMMI的方法也會不同。
企業通常需要引入專業的咨詢團隊,協助組織導入CMMI模型,根據CMMI模型對組織當前的研發管理體系進行差距分析,識別組織當前的改進點;根據咨詢顧問的指導和培訓建立過程改進團隊(EPG),由EPG組織完善研發管理流程,并在組織內推廣;在組織內的各個項目中有效執行公司研發管理流程后,進行評估準備,并開展預評估和正式評估,驗證改進效果以及組織的管理成熟度等級。