CMMI 定義:
Capability Maturity Model Integration,即能力成熟度模型集成。
是在CMM(Capability Maturity Model For Software,軟件能力成熟度模型)的基礎上發(fā)展而來的
軟件能力成熟度評估標準,主要用于指導軟件開發(fā)過程的改進和進行軟件開發(fā)能力的評估
CMMI 解析:

過程域 (Process Area)
CMMI包含過程域。
過程域是一類最佳實踐的集合,這些實踐屬于同一類過程。它們是建立過程能力最主要的元素(模塊)
過程域?qū)ο?/strong> 代表應用中的業(yè)務邏輯或流程。
(ps:過程域與過程概念不同,過程域是實踐的集合,沒有嚴格的先后順序,是一個堆,而過程是活動偏序集,活動存在先后次序)
CMMI 22個PA:
CMMI 22個PA
過程域的部件可以劃分為3類
1.必要的(必需的)
描述組織達到某個過程域 必需滿足 的部份,這種滿足在組織過程中的實現(xiàn)是可視的。
CMMI的必需部件是目標(特性目標和共性目標),這些目標在評估中作為判斷一個過程達到和滿意的基本原則,從而確定過程能力。
2.期望的
說明組織要達到某個目標的一般性做法。指導那些實施過程改進或者執(zhí)行評估的人用于判斷過程域是否達到目標。
CMMI的期望部件是特定實踐和共性實踐。
實踐是期望的,也就是說最好那么做,不那么做也可以,但是你要證明你的替換做法是可以滿足目標要求的,怎么判定是否滿足了目標要求了?同樣也是由評估組成員進行檢驗判斷。與時俱進,最佳實踐在今年是最佳,明年就未必
3.信息的
信息部件是對如何達到必需部件和期望部件的更加詳細的描述,給出模型的細節(jié)
關(guān)鍵組件
特定目標(Specific goal, SG)
適用于單一的過程域,并強調(diào)其唯一的特征,此特征用來說明必需要執(zhí)行什么以滿足該過程域
特定目標是必要的模型組件,在評估時用來確定某過程域是否符合其目標
每個過程域有多個或者一個特定目標

特定實踐(Specific Practice, SP)
是一種活動,這組活動被期望可達成某過程域的特定目標
每個特定目標下有多個特定實踐活動
共性目標(Generic Goal, GG)
相同目標的敘述可適用于多個過程域(同一目標的陳述對應多個過程域)
描述組織制度化實施的特征
達到某個過程域的共性目標,代表該過程域相關(guān)過程的計劃和實施得到控制與改進,也象征這些過程是有效、可重復及可持續(xù)的。

共性實踐(Generic Practice, GP)
同一實踐的陳述對應了多個過程域。共性實踐說明一組活動,這組活動被期望可達成給定的共性目標
共性實踐提供制度化,確保過程域的相關(guān)過程是有效、可重復及可持續(xù)的
共性實踐詳細說明(Generic Practice Elaboration)
是介紹性的模型組件
出現(xiàn)在各過程域,并提供指南以說明共性實踐要如何應用于過程域
例如:
當共性實踐
“按需要培訓人員,以執(zhí)行或支持以策劃過程”集成至配置管理過程域,就是要說明如何進行配置管理相關(guān)活動的特定培訓。
典型工作成果(Typical work products)
當執(zhí)行一個實踐時,通常會以工作成果的形式產(chǎn)生輸出 DEMO
是介紹性的模型組件,提供某特定或者共性實踐的產(chǎn)出范例,這些范例具有代表性,但不是全部的有效工作產(chǎn)品
例如:
項目監(jiān)控過程域的特定實踐
“依據(jù)項目計劃中的參數(shù)監(jiān)督項目實際數(shù)據(jù)”中的一個典型成果是“明顯偏離的記錄”
子實踐(Subpractices)
提供了詳細的說明,用于實施某個特定實踐或者共性實踐
子實踐以規(guī)范式的文字描述,是CMMI模型中介紹性的模型組件,提供可用于過程改進的意見而不具強制性
例如:
在項目監(jiān)控過程域中特定實踐
“對確定的問題采取糾正措施”的一個子實踐是 “為處理所識別的問題而采取措施,并形成文件”
CMMI表示模型
連續(xù)式
應用靈活,所以組織可以決定那些過程域作為重點
將過程域分為4大類型
每類過程中的過程域又進一步分為基礎的和高級的

階段式 (更重要)

5個成熟度等級分別是,每個等級都有若干個過程域:
第1級:初始級
第2級:受管理級
第3級:已定義級
第4級:定量管理級
第5級:持續(xù)優(yōu)化級
成熟度等級:是一組經(jīng)過定義的漸進式改進指標,達到每個成熟度,則代表組織過程的某重要部分有了穩(wěn)固的基礎分為5個等級,處理初始級外,成熟度等級是循序漸進的,前一個等級是后一個等級實現(xiàn)的基礎
第一階段到第五個階段,軟件開發(fā)生產(chǎn)的計劃精度越來越高,每單位工程的生產(chǎn)周期越來越短,每單位工程的成本越來越低。
過程能力按等級劃分
每一等級的實踐為達到高等級要求打下基礎
過程能力:指的是過程穩(wěn)定實現(xiàn)過程目標的能力,可以從穩(wěn)與準兩個維度判斷
1.初始級
不需要評估的,它妹有過程域,你隨便創(chuàng)個公司搞開發(fā)就是了
- 過程通常是混亂的,而且組織通常沒有提供穩(wěn)定的開發(fā)環(huán)境
- 這些組織的成功,往往依賴于組織中個人的能力和拼搏精神,而不是使用一套經(jīng)過驗證的過程
- 具有明顯的不成熟過程的特點,組織的過程能力是不可視和不可預測的,缺乏開發(fā)和維護軟件所需的穩(wěn)定環(huán)境
- 組織也可以開發(fā)出可以工作的產(chǎn)品和服務,但是往往伴隨項目費用的超支和進度的拖延
2.已管理級
焦點開始集中在軟件過程的管理上,一個受管理的過程則是一個可重復的過程。從管理角度可以看到一個按計劃執(zhí)行的并且階段可控的、規(guī)范化的軟件開發(fā)過程
- 組織已完成第2級所有過程域的特定目標和共性目標
- 組織的項目已確保需求是被管理的,而且其過程是經(jīng)過計劃、執(zhí)行、度量及控制的
- 已建立了管理軟件項目的方針和實施這些方針的規(guī)程,使得軟件項目的有效管理過程制度化,有能力去跟蹤成本、進度和質(zhì)量。
- 由于遵循以前項目所制定的確實可行的計劃,項目計劃處在項目管理系統(tǒng)的有效控制之下,使具有類似應用的項目能重復以前的成功實踐,盡管項目所實施的具體過程可能不同
- 一個有效過程是可特征化,已文檔的、已實施的,可培訓的和可測量的軟件過程,在預定的時間節(jié)點,管理層都可以了解工作成果的情況
- 項目管理過程被文檔化和遵循
- 以往項目的成功實踐可以重復
- 處于已管理級組織中的項目已設置基本的軟件管理控制,需求、過程、工作成果以及服務是受管理的
3.已定義級
通過裁剪組織的標準軟件過程來建立自定義的軟件過程
- 組織已經(jīng)完成第2級和第3級的所有過程的特定目標和共性目標,工程過程都已經(jīng)詳盡地說明,并應用標準、規(guī)程、工具及方法來表現(xiàn)
- 包含一組協(xié)調(diào)的、集成的、適度定義的軟件過程過程和管理過程,具有良好的文檔化、標準化,使整個軟件過程具有可視性、一致性、穩(wěn)定性和可重復性,軟件過程被集成為一個有機的整體
- 組織標準過程是成熟度第3級的基礎,項目可對組織的標準過程進行裁減,以建立項目過程。
- 員工理解過程中的角色和職責
- 整個過程中,產(chǎn)品的生產(chǎn)是可視的
4.已管理
對軟件產(chǎn)品的質(zhì)量、開發(fā)進度和其它開發(fā)目標進行有效的評估和預測
- 組織已經(jīng)達到成熟度第二級、第三級和第四級的所有過程域的特定目標和共性目標,選定對整體過程績效有重大影響的子過程,并使用統(tǒng)計和其他的量化技術(shù)來控制這些子過程。
- 建立質(zhì)量與過程績效的量化目標,并以該目標為管理過程的準則。量化目標是根據(jù)客戶、最終用戶、組織以及過程執(zhí)行者的需求而設定的。以統(tǒng)計的術(shù)語表示質(zhì)量和過程績效,并使他們在整個過程中受到管理
- 可以建立有關(guān)軟件過程和產(chǎn)品質(zhì)量的、一致的度量體系,采集詳細的數(shù)據(jù)進行分析,從而對軟件過程進行有效的定量控制和管理。
- 由于有完整的度量體系,過程是已測量的并在可測的范圍內(nèi)運行,組織的軟件過程能力可概括為過程效率和產(chǎn)品質(zhì)量方面的可預測的高質(zhì)量。
- 具有良好的風險管理,可以識別出開發(fā)新應用領域的軟件所帶來的風險,并得到有效的回避、控制等
已管理級已定義級的區(qū)別
標準、過程和規(guī)程的范圍不同
在第2級中,某過程在不同案例間的標準、過程說明以及規(guī)程可能有相當?shù)牟町?br>
在第3級中,項目的標準、過程說明以及規(guī)程都是從組織的標準過程裁減而來的,已適用于某些特殊項目或單位。組織的標準過程包括了成熟度第2級和第3級的過程,因此除了裁減指南所允許的差異之外,整個組織所執(zhí)行的過程都是一致的
第3級的過程說明比第2級更加詳細與嚴謹,基于對過程活動的了解,以及對過程、產(chǎn)品與服務的詳細度量,可更主動地管理過程
5.優(yōu)化級
其焦點是軟件過程的持續(xù)改進,所謂持續(xù)改善是指可根據(jù)過程執(zhí)行的反饋信息來改善下一步的執(zhí)行過程,即優(yōu)化執(zhí)行步驟。如果一個企業(yè)達到了這一級,那么表明該企業(yè)能夠根據(jù)實際的項目性質(zhì)、技術(shù)等因素,不斷調(diào)整軟件生產(chǎn)過程以求達到最佳。
- 組織已經(jīng)達到成熟度第二級、第三級、第四級和第五級所有過程域的特定目標和共性目標,根據(jù)對過程變化共性原因的量化了解,持續(xù)進行過程改進
- 第五級專注于持續(xù)改進過程績效,已經(jīng)建立組織的量化過程改進目標,并持續(xù)修訂以反映持續(xù)變化的經(jīng)營目標。
- 量化的過程改進目標也當作管理過程改進的準則,用于度量、評估以進行的過程改進效果。
- 優(yōu)化級不斷改善組織的軟件過程能力和項目的過程性能,利用來自過程和來自新思想、新技術(shù)的先導性試驗的定量反饋信息,使持續(xù)過程改進成為可能
- 為了預防缺陷的出現(xiàn),組織有辦法識別出弱點,并預先針對性地加強過程。
- 在對新技術(shù)和軟件過程改進的時候,利用有關(guān)軟件過程有效性的數(shù)據(jù)能進行成本效益分析,識別出最具有價值的技術(shù)創(chuàng)新或者過程創(chuàng)新并推廣到整個組織。
- 追求新技術(shù)、利用新技術(shù),實現(xiàn)軟件開發(fā)中的方法和新技術(shù)的革命


