色综合久久88色综合天天-无码av中文一区二区三区-亚洲va中文字幕无码一二三区-999在线视频精品免费播放观看-精品人妻午夜一区二区三区四区

CMMI是什么,不是什么

趙耀同學這篇CMMI科普文章澄清了一些重要的概念,對初學者會有幫助。雖然本文是基于CMMI 1.3的,但核心內容也適用于2.0.


CMMI是什么,其實已不是什么新鮮的問題,從各種書籍材料中都能找到介紹,本文不詳細介紹CMMI的分級、結構、具體內容,只想探討一下CMMI的定義,是什么,不是什么。
我們先來看看CMMI-DEV,V1.3中的定義。“CMMI(Capability Maturity Model Integration)models are collection of best practices that help organization to improve their processes. Provides a comprehensive integrated set of guidelines for developing produces and services”,這是SEI對CMMI的官方定義,提供了三點主要信息,也提出了三個問題。

  • CMMI models arecollections of best practices——模型與最佳實踐?
  • to improve their processes——為什么要改進過程?
  • a comprehensive integrated set——為什么要集成?

 
1、模型與最佳實踐
首先請思考一個問題,如果你被要求做一個從沒做過的工作,你會怎么辦?也許會不知所措,但也有一個很簡單的辦法,就是請教那些做過的人,看看他們是怎么干的。如果有可能,最好多問幾個不同的人,比較一下,獲得最好的做法。CMMI也是這樣,來源于業界的最佳實踐。通過從業界收集的最佳實踐進行分析,發現其中對項目開發的成功能起到至關重要作用的實踐,再將這些實踐進行整理后命名為過程域(PA),CMMI V1.3中就有22個這樣的過程域,這些實踐按相關性可以分為過程管理,項目管理,工程,支撐四個領域,為組織在不同領域的改進提供指導。
另一方面,通過對不同項目實踐分析,發現實施不同的實踐組合和次序會帶來不同的結果。例如,如果沒有良好的項目管理,項目就不能有效的執行,那么項目管理是項目能夠成功的基礎,所以首先要實施項目管理的相關實踐。通過幾個項目的成功實施后,發現還有除了項目管理,工程技術方面的的實踐也對項目的成功至關重要,于是將這個過程固化下來,這樣就形成了組織標準開發過程,是一個組織成熟的表現。CMMI將過程能力分成了5個成熟度等級,也就是常說的初始級,已管理級,已定義級,定量管理級和優化級,在CMMI中叫階段式表示法,也叫成熟度等級。CMMI模型認為具有不同成熟度的研發組織具有不同的過程能力,擁有不同的研發和管理能力,也就是項目能夠成功的能力。成熟度等級為組織級改進提供了一個預定義的路線圖。還有一種連續型表示法,是支持單個過程域的改進方式,組織可以根據自身的情況,選擇某個特定的過程域進行實施,以提升和改進組織在某一特定領域的能力,這叫能力等級。選擇哪種方式作為改進方式,需要依據組織自身情況來確定。
還要說明一點,CMMI內容分為“Required”(必需的),“Expected”(期望的)、“Informative”(提供信息的)三個級別。最重要的是“必需的”級別,是模型和過程改進的基礎。第二級別“期望的”,在過程改進中起到主要作用,但是某些情況可能不會出現在成功的組織中。“提供信息的”構成了模型的主要部分,為過程改進提供了有用的指導,在許多情況下他們對“必需的”和“期望的”構件做了進一步說明。在一個PA中,一般PA的目標屬于“必需的”,PA中建議的實踐屬于“期望的”,其他對目標和實踐的補充說明屬于“提供信息的”。從這里可以看出CMMI模型只提出了目標是必須達到的,并沒有要求你怎么去達到目標,你可以用業界最佳實踐,也可以用你自己的原始辦法,更加可以創造新的方法。
回到了CMMI是什么的問題上,從這里可以看出, CMMI是一個模型,是實踐,它不是標準,也不是流程,所以它并不會告訴你具體要怎么做。它給我們提供了一個框架,一個可預期的改進線路圖。
 
2、為什么要改進過程?
做任何事情都是有過程,連最平常的吃飯、刷牙也不例外,但不同的過程或順序會帶來不同的效果。例如不要飯前喝太多湯,這樣會稀釋胃液,影響消化;還有刷牙也不簡單,經常能從牙膏廣告中看到要上下刷,左右刷,內外刷,甚至還要刷舌頭。當然產品開發的過程比吃飯刷牙要復雜的多,不同的過程會對產品質量帶來影響,通過不斷的調整和改進過程,可以幫助提高組織的生產率和產品質量。
在談論復雜的產品開發過程改進前,先來看一個簡單的桌球的例子。打桌球的動作看似簡單,其實是一系列復雜且緊密聯系的動作組合。對于初學者,想要一下子打出一桿好球是挺困難的,像握桿的手勢、站姿、擊球的位置都是基礎,必須先掌握好。但是我們一般不容易發現自己不對的動作,這時需要一個高手來指出哪個動作是需要改進。例如擊球時,兩個手臂間是90度,這個可以作為后續擊球動作的基線在擊球時度量。當錯誤的動作改進后,它們就可以合并成一個更加集成的整體動作,就可以使用它達到預期的目標,擊球入洞。最后當擊球動作正確且能持續后,就可以根據球桌上的實際情況來選擇正確的戰術策略,例如在沒有進球機會時選擇防守性擊球、通過擊打母球不同的位置來控制母球走位等。組織的過程改進跟打桌球的改進是類似的,CMMI模型可以幫助我們把過程分解成很多小的活動,然后告訴我們哪些是最基本的,幫助我們確定哪些活動應該先做(例如2,3級的PAs) ,哪些活動我們做的不好需要改進。
另一方面,過程改進也能幫助項目與組織業務目標保持一致。不同的項目有著不同的業務目標,有的為了大規模商用,需要高的質量和可靠性;有的是為了搶占市場,需要快速交付。為了實現這些目標,你必須了解這個產品是如何開發出來的,每個步驟、活動是什么。必須了解這個過程、這些步驟的可變性,這樣就可以根據項目的目標調整它們。例如,當對產品質量有更高要求時,可改進已有的組織標準過程,如改進檢視方法、增加測試活動、增加質量評估點等;當進度更被關注時,可加強對進度的監控,設置偏閾值,加強進度相關風險管理等。當然,我們還可以將這些變化度量和記錄下來,形成組織過程基線,為下次的改進提供輸入。過程改進活動還能提供指導,幫助我們定義和標準化組織過程,提高工作效率、減少返工,度量組織的性能和利用數據來管理業務。所以,想要提高組織的競爭力,必須不斷的改進,這就是過程改進真正起作用的地方。
 
3、為什么要集成?
很多初學者都會問一個問題,CMMI與CMM是什么關系,有什么不同。如果僅從字面上看只差了一個“I”,Integration集成。當然這不是CMMI與CMM的唯一區別,但卻是一個很大的改變,為什么要集成呢?接下來就來具體看看這個“I”。
隨著軟件領域的CMM的推出和在業界的成功應用(美國國防部在1999年10月做出規定國防部的大型程序開發承包商必須有軟件CMM成熟度等級3的認證)。許多其他學科和國際組織開始模仿CMM的方式推出自己的模型,例如系統工程領域的SE-CMM,采購領域的SS-CM,人力管理方面的People CMM等。就像這張關系圖所示,這些模型、標準的關系也是極其復雜的。試想,如果在一個組織中使用這些模型會是一個什么樣的情形:不同領域、不同部門的人說著不一樣的“語言”,工作的方式和標準也不一樣,彼此間難以交流。

就像在在《圣經》巴別塔的故事中,由于上帝改變了人類的語言,使得人際交流困難,最終導致巴別塔的修建失敗。而在過程改進的現代版故事中,為了適用于各種開發學科,人們創建了不同的過程改進模型,開發了多種開發語言,和巴別塔的故事一樣,這種多樣性對溝通會產生不利影響。CMMI就是用來改變這種情況,通過提供一種單一的“語言”,使多學科能夠共享改進活動,并關注一個統一的過程改進目標。

另一方面,隨著科技的發展,應用的多樣,項目變得越來越龐大,越來越復雜,跨學科,跨地域的變得越來越普遍,涉及的人員也越來越多。如果在這樣一個項目中使用不同的模型溝通和協調的成本會非常的高,資源分配也會很混亂,各種模型能否有效銜接也是一個大的問題。因此更需要一種統一的過程改進框架,能有效集成和管理。
CMM模型不僅集成了學科,而且集成了過程本身,以及集成各利益關系人,功能部門人員和管理層間的有效工作。
 我們再來看一下CMMI的定義,是否好理解一些了。綜合一下上文中所提到的三點,我們總結一下CMM是什么:

  • CMMI是模型,是業界最佳實踐,不是標準,不是流程;
  • CMMI提供一個統一的,包容性的過程改進框架,可以容納創新;
  • CMMI是一個集成的框架,致力于解決全系統的問題,不像它的前身CMM那樣只關注軟件;
  • CMMI通過改進組織過程,以開發高質量產品與服務,滿足客戶的需求。


點擊關閉
  • CMMI認證客服

    CMMI3認證客服

    CMMI咨詢

    CMMI4認證