CMM為企業(yè)的軟件過程能力提供了一個階梯式的進化框架,階梯共有五級。第一級只是一個起點,任何準備按CMM體系進化的企業(yè)都自然處于這個起點上,并通過它向第二級邁進。除第一級外,每一級都設定了一組目標,如果達到了這組目標,則表明達到了這個成熟級別,可以向下一級別邁進。
第一級:初始級:
初始級的軟件過程是未加定義的隨意過程,項目的執(zhí)行是隨意甚至是混亂的。也許有些企業(yè)制定了一些軟件工程規(guī)范,但若這些規(guī)范未能覆蓋基本的關鍵過程要求,且執(zhí)行沒有政策、資源等方面的保證時,那么它仍然被視為初始級。
第二級:重復級:
根據多年的經驗和教訓,人們總結出軟件開發(fā)的首要問題不是技術問題而是管理問題。因此,第二級的焦點集中在軟件管理過程上。一個可管理的過程則是一個可重復的過程,可重復的過程才能逐漸改進和成熟。可重復級的管理過程包括了需求管理、項目管理、質量管理、配置管理和子合同管理五個方面;其中項目管理過程又分為計劃過程和跟蹤與監(jiān)控過程。通過實施這些過程,從管理角度可以看到一個按計劃執(zhí)行的且階段可控的軟件開發(fā)過程。
第三級:定義級:
在可重復級定義了管理的基本過程,而沒有定義執(zhí)行的步驟標準。在第三級則要求制定企業(yè)范圍的工程化標準,并將這些標準集成到企業(yè)軟件開發(fā)標準過程中去。所有開發(fā)的項目需根據這個標準過程,裁剪出與項目適宜的過程,并且按照過程執(zhí)行。過程的裁剪不是隨意的,在使用前必須經過企業(yè)有關人員的批準。
第四級:管理級:
第四級的管理是量化的管理。所有過程需建立相應的度量方式,所有產品的質量(包括工作產品和提交給用戶的最終產品)需要有明確的度量指標。這些度量應是詳盡的,且可用于理解和控制軟件過程和產品。量化控制將使軟件開發(fā)真正成為一種工業(yè)生產活動。
第五級:優(yōu)化級:
優(yōu)化級的目標是達到一個持續(xù)改善的境界。所謂持續(xù)改善是指可以根據過程執(zhí)行的反饋信息來改善下一步的執(zhí)行過程,即優(yōu)化執(zhí)行步驟。如果企業(yè)達到了第五級,就表明該企業(yè)能夠根據實際的項目性質、技術等因素,不斷調整軟件生產過程以求達到最佳。