CMMI認證介紹
189 2017-07-26
什么是CMMI?
CMMI全稱是Capability Maturity Model Integration, 即軟件能力成熟度模型集成,是由美國國防部與卡內(nèi)基-梅隆大學和美國國防工業(yè)協(xié)會共同開發(fā)和研制的,其目的是幫助軟件企業(yè)對軟件工程過程進行管理和改進,增強開發(fā)與改進能力,從而能按時地、不超預算地開發(fā)出高質(zhì)量的軟件。其所依據(jù)的想法是:只要集中精力持續(xù)努力去建立有效的軟件工程過程的基礎結構,不斷進行管理的實踐和過程的改進,就可以克服軟件開發(fā)中的困難。CMMI為改進一個組織的各種過程提供了一個單一的集成化框架,新的集成模型框架消除了各個模型的不一致性,減少了模型間的重復,增加透明度和理解,建立了一個自動的、可擴展的框架。因而能夠從總體上改進組織的質(zhì)量和效率。CMMI主要關注點就是成本效益、明確重點、過程集中和靈活性四個方面。
CMMI是一套融合多學科的、可擴充的產(chǎn)品集合,其研制的初步動機是為了利用兩個或多個單一學科的模型實現(xiàn)一個組織的集成化過程改進。 CMMI的本質(zhì)是軟件管理工程的一個部分。軟件過程改善是當前軟件管理工程的核心問題, 50多年來計算機的發(fā)展使人們認識到要高效率、高質(zhì)量和低成本地開發(fā)軟件,必須改善軟件生產(chǎn)過程。基於模型的過程改進是指用采用能力模型來指導組織的過程改進,使之過程能力穩(wěn)定的進行改善,該組織也能變得更加成熟。
CMM的成功促使其他學科也相繼開發(fā)類似的過程改進模型,例如系統(tǒng)工程、需求工程、人力資源、集成產(chǎn)品開發(fā)、軟件采購等等,從CMM衍生出了一些改善模型,比如:SW-CMM,SE-CMM,IPD-CMM等。不過,在同一個組織中多個過程改進模型的存在可能會引起沖突和混淆。CMMI就是為了解決怎麼保持這些模式之間的協(xié)調(diào)。
CMMI是CMM模型的最新版本。早期的CMMI(CMMI-SE/SW/IPPD)1.02版本是應用于軟件業(yè)項目的管理方法,SEI在部分國家和地區(qū)開始推廣和試用。隨著應用的推廣與模型本身的發(fā)展,演繹成為一種被廣泛應用的綜合性模型。
自從1994 年SEI 正式發(fā)布軟件CMM以來,相繼又開發(fā)出了系統(tǒng)工程、軟件采購、人力資源管理以及集成產(chǎn)品和過程開發(fā)方面的多個能力成熟度模型。雖然這些模型在許多組織都得到了良好的應用,但對于一些大型軟件企業(yè)來說,可能會出現(xiàn)需要同時采用多種模型來改進自己多方面過程能力的情況。這時他們就會發(fā)現(xiàn)存在一些問題,其中主要問題體現(xiàn)在:
n 不能集中其不同過程改進的能力以取得更大成績;
n 要進行一些重復的培訓、評估和改進活動,因而增加了許多成本;
n 遇到不同模型中有一些對相同事物說法不一致,或活動不協(xié)調(diào),甚至相抵觸。 于是,希望整合不同CMM 模型的需求產(chǎn)生了。1997 年,美國聯(lián)邦航空管理局(FAA)開發(fā)了FAA-iCMMSM(聯(lián)邦航空管理局的集成CMM),該模型集成了適用于系統(tǒng)工程的SE-CMM、軟件獲取的SA-CMM 和軟件的SW-CMM 三個模型中的所有原則、概念和實踐。該模型被認為是第一個集成化的模型。 CMM與CMMI最大的不同點和區(qū)別: CMMISM-SE/SW/IPPD/SS 1.1 版本有四個集成成分,即:系統(tǒng)工程(SE)和軟件工程(SW)是基本的科目,對于有些組織還可以應用集成產(chǎn)品和過程開發(fā)方面(IPPD)的內(nèi)容,如果涉及到供應商外包管理可以相應的應用SS(Supplier Sourcing)部分。
CMMI有兩種表示方法,一種是大家很熟悉的,和軟件CMM 一樣的階段式表現(xiàn)方法,另一種是連續(xù)式的表現(xiàn)方法。這兩種表現(xiàn)方法的區(qū)別是:階段式表現(xiàn)方法仍然把CMMI中的若干個過程區(qū)域分成了5 個成熟度級別,幫助實施CMMI的組織建議一條比較容易實現(xiàn)的過程改進發(fā)展道路。而連續(xù)式表現(xiàn)方法則通過將CMMI中過程區(qū)域分為四大類:過程管理、項目管理、工程以及支持。對于每個大類中的過程區(qū)域,又進一步分為基本的和高級的。這樣,在按照連續(xù)式表示方法實施CMMI的時候,一個組織可以把項目管理或者其他某類的實踐一直做到最好,而其他方面的過程區(qū)域可以完全不必考慮。
CMMI各個進程的關鍵元素
CMMI自出道以來,它所達到的目標就沒有變過,第一個是質(zhì)量,第二個是時間表,第三就是要用最低的成本。不過特別強調(diào)的是,CMMI不是傳統(tǒng)的、僅局限于軟件開發(fā)的生命周期,它應該被運用于更廣泛的一個范疇——工程設計的生命周期。TSP的建立,也是為了支持CMMI的這樣一個系統(tǒng)。那么CMMI究竟是什么呢?它并不是一個過程,也不是告訴你怎么去做一件事情。如果用一句話來概括什么是CMMI,它就是各個進程的一個關鍵的元素,在很多領域里面一個集成的點。它是這樣的一個基本架構,能夠用來度量你的有效性和實用性;能夠找出這樣的一些機會,繼續(xù)改進的機會,包括在商業(yè)目標、策略還有降低項目的風險等方面。
CMMI的起源
隨著人們對CMM研究的不斷深入,其他學科也結合本系統(tǒng)的特點,陸續(xù)推出了自己的CMM模型。例如,人力資源能力成熟度模型、系統(tǒng)工程能力成熟度模型等等:
?。?) SW-CMM (Software CMM) 軟件CMM
(2) SE-CMM (System Engineering CMM) 系統(tǒng)工程CMM
?。?) SA-CMM (Software Acquisition CMM) 軟件采購CMM
(4) IPT-CMM (Integrated Product Team CMM) 集成產(chǎn)品群組CMM
?。?) P-CMM (People CMM) 人力資源能力成熟度模型為了以示區(qū)別,國內(nèi)外很多資料把CMM叫做SW-CMM。按照SEI原來的計劃,CMM的改進版本2.0應該在1997年11月完成,然后在取得版本2.0得實踐反饋意見之后,在1999年完成準CMM2.0版本。但是,美國國防部辦公室要求SEI推遲發(fā)布CMM2.0版本,而要先完成一個更為緊迫的項目CMMI。
CMMI分5個級別
CMMILevel 1,完成級。在完成級水平上,企業(yè)對項目的目標與要做的努力很清晰,項目的目標得以實現(xiàn)。但是由于任務的完成帶有很大的偶然性,企業(yè)無法保證在實施同類項目的時候仍然能夠完成任務。企業(yè)在一級上的項目實施對實施人員有很大的依賴性。
CMMILevel 2,管理級。在管理級水平上,企業(yè)在項目實施上能夠遵守既定的計劃與流程,有資源準備,權責到人,對相關的項目實施人員有相應的培訓,對整個流程有監(jiān)測與控制,并與上級單位對項目與流程進行審查。企業(yè)在二級水平上體現(xiàn)了對項目的一系列的管理程序。這一系列的管理手段排除了企業(yè)在一級時完成任務的隨機性,保證了企業(yè)的所有項目實施都會得到成功。
CMMILevel 3,定義級。在定義級水平上,企業(yè)不僅能夠?qū)椖康膶嵤┯幸徽椎墓芾泶胧?,并保障項目的完成;而且,企業(yè)能夠根據(jù)自身的特殊情況以及自己的標準流程,將這套管理體系與流程予以制度化這樣,企業(yè)不僅能夠在同類的項目上升到成功的實施,在不同類的項目上一樣能夠得到成功的實施??茖W的管理成為企業(yè)的一種文化,企業(yè)的組織財富。
CMMILevel 4,量化管理級。在量化管理級水平上,企業(yè)的項目管理不僅形成了一種制度,而且要實現(xiàn)數(shù)字化的管理。對管理流程要做到量化與數(shù)字化。通過量化技術來實現(xiàn)流程的穩(wěn)定性,實現(xiàn)管理的精度,降低項目實施在質(zhì)量上的波動。
CMMILevel 5,優(yōu)化級。在優(yōu)化級水平上,企業(yè)的項目管理達到了最高的境界。企業(yè)不僅能夠通過信息手段與數(shù)字化手段來實現(xiàn)對項目的管理,而且能夠充分利用信息資料,對企業(yè)在項目實施的過程中可能出現(xiàn)的次品予以預防。能夠主動地改善流程,運用新技術,實現(xiàn)流程的優(yōu)化。企業(yè)在實施CMMI的時候,路要一步一步地走。一般地講,應該先從二級入手。在管理上下功夫。爭取最終實現(xiàn)CMMI的第五級。
預備工作
評估實踐證明:在進行CMMI評估之前,制定一個正確的評估計劃并將其文檔化,確保有一個富有經(jīng)驗的、受過培訓且具有適當資格的小組能被用來評估,為執(zhí)行評估過程做準備,是十分必要的。
我們所說的文檔化CMMI評估計劃的結果,包括:要求,協(xié)定,估價,風險,剪裁方法,以及與評估相關的實際考慮(例如:日程安排,后勤,組織的背景信息)。此外,還應當獲取并記錄發(fā)起方對于CMMI評估計劃的正式批準。在制定評估計劃之前,應對CMMI評估輸入中反映出來的協(xié)議文檔化,該協(xié)議將有助于CMMI評估目標和關鍵評估計劃參數(shù)的共同理解。在對驅(qū)動計劃過程的關鍵參數(shù)達成共同理解的基礎上,CMMI評估發(fā)起方和SCAMPI主任評估師應就評估計劃達成一致;發(fā)起者和評估小組領導應就已計劃的評估中技術和非技術細節(jié)達成一致。這個計劃在執(zhí)行其他的計劃和準備階段活動中需要進一步細化。
而通過CMMI評估小組的準備工作,將產(chǎn)生一支富有經(jīng)驗的、受過培訓的且定位準確的小組準備執(zhí)行CMMI評估任務。該小組的成員都應當獲得了完成他們各自的任務所必備的知識,或者他們之前所擁有的知識被證實足以完成相關任務。評估小組領導者已經(jīng)給每一個人提供了為完成他們各自的任務所需的對技能進行實踐的機會,或者證實這些技能在過去已經(jīng)得到了示范。小組成員相互了解,同時開始計劃他們?nèi)绾螀f(xié)調(diào)一致的工作。還應該做到:準備好的小組是為評估目標而服務的,小組的成員已提供培訓且培訓結果被記錄,在必要的時候,對他們所做的因知識或技能不足的補救工作已經(jīng)完成。我們認為,無論CMMI評估小組領導者是從頭培訓一支全新的評估小組,還是通過從富有經(jīng)驗的小組成員中選擇來組建一個小組,確保他們與CMMI評估小組領導者能組成一個成功的集體是其責任。此外,在對CMMI評估進行的預備工作的過程中,我們還應當對模型剪裁的原則有所了解:
1.在某些應用中,計劃模板和例行的程序能夠根據(jù)評估的需要進行調(diào)整,這和當?shù)氐倪^程所有權一樣,有助于交流;
2.一個結構化的計劃工藝組有利于只有有限的評估經(jīng)驗的組織,這樣一個工藝就像緩和策略樣,對于發(fā)現(xiàn)風險是一個很有價值的機會;
3.案例研究材料提供了各種各樣的選擇來擴充小組培訓內(nèi)容以增強那些更需要培訓的重點;
4.富有經(jīng)驗的評估小組領導者在沒有案例分析的情況下,同樣可以管理和模擬評估行為;
5.在小組所有已獲得培訓成員的集合中,對小組的建立工作進行管理以確保其團隊凝聚力是十分重要的,因此,很多的小組建立練習是可以利用的,小組的規(guī)模、技能、組成部分都是本方法的裁剪內(nèi)容;
6.所采用工具可以包括評估計劃模板,樣例,和計劃模板中嵌入式的程序上的幫助,此外,為了估計評估約束的影響,估算工作表和方法也是很有用處的。
總之,CMMI評估是一個十分復雜的過程,更由于其具有的不確定性,在評估的實踐中,一定要做到有備無患。真理來自于實踐,我們相信,隨著越來越多的軟件組織著手CMMI評估,越來越多的成功經(jīng)驗將為我們所利用和借鑒。
評估方法
自1991年起,CMM出現(xiàn)了很多模型,覆蓋了各種各樣的專業(yè)領域。其中著名的模型有系統(tǒng)工程·軟件工程·軟件采購·集成產(chǎn)品和流程開發(fā)等。然而當企業(yè)想要在組織內(nèi)不同專業(yè)領域的流程改進,這些針對不同專業(yè)領域的模型在架構·內(nèi)容和方法上的不同限制了組織成功實施改進的能力。此外,將這樣模型在組織內(nèi)部集成也提高了培訓·認證和改進的費用。一套包括多個專業(yè)領域的模型加上整合的培訓和認證支持將解決這些問題。
CMMI(Capability maturity model integration)是為了合并三個模型到一個框架中
Capability Maturity Model for Software (SW-CMM) v2.0 draft C,
Electronic Industries Alliance Interim Standard (EIA/IS) 731
Integrated Product Development Capability Maturity Model (IPD-CMM) v0.98
正如其他CMM模型,CMMI提供了流程改進的指導,而不是流程或流程的描述。組織使用的實際流程取決于很多因素,包括應用領域·組織框架和規(guī)模。CMMI將許多經(jīng)過驗證的方法加入架構中,來幫組組織評價成熟度·某個軟件流程的能力度,并且建立改進的優(yōu)先順序和實施改進。
從CMMI框架可以產(chǎn)生不同的CMMI模型,因此必須首先確定那種模型最適合企業(yè)流程改進的需要。
階段式描述 or 連續(xù)式描述
系統(tǒng)工程 or 軟件工程 or 兩者皆有
使用連續(xù)式描述可以根據(jù)企業(yè)需要選擇流程改進順序,降低企業(yè)風險,這給通過ISO做流程改進提供了一個方便的比較。使用能力度(Capability)來衡量。
階段式描述提供了已經(jīng)過驗證的流程改進順序,方便從CMM移植過來。使用成熟度(Maturity)來衡量流程改進。
系統(tǒng)工程包括整個系統(tǒng)的開發(fā),可能包括軟件也可能不包括。
軟件工程用于軟件系統(tǒng)的開發(fā),主要集中在使用系統(tǒng)的·科學的·量化的方法來開發(fā)·運行·維護軟件。
cmm是項目管理
由美國卡內(nèi)基梅隆大學的軟件工程研究所(SEI)創(chuàng)立的CMM(Capability Maturity Model 軟件能力成熟度模型)認證評估,在過去的十幾年中,對全球的軟件產(chǎn)業(yè)產(chǎn)生了非常深遠的影響。CMM共有五個等級,分別標志著軟件企業(yè)能力成熟度的五個層次。從低到高,軟件開發(fā)生產(chǎn)計劃精度逐級升高,單位工程生產(chǎn)周期逐級縮短,單位工程成本逐級降低。據(jù)SEI統(tǒng)計,通過評估的軟件公司對項目的估計與控制能力約提升40%到50%;生產(chǎn)率提高10%到20%,軟件產(chǎn)品出錯率下降超過1/3。
對一個軟件企業(yè)來說,達到CMM2就基本上進入了規(guī)模開發(fā),基本具備了一個現(xiàn)代化軟件企業(yè)的基本架構和方法,具備了承接外包項目的能力。CMM3評估則需要對大軟件集成的把握,包括整體架構的整合。一般來說,通過CMM認證的級別越高,其越容易獲得用戶的信任,在國內(nèi)、國際市場上的競爭力也就越強。因此,是否能夠通過CMM認證也成為國際上衡量軟件企業(yè)工程開發(fā)能力的一個重要標志。
CMM是目前世界公認的軟件產(chǎn)品進入國際市場的通行證,它不僅僅是對產(chǎn)品質(zhì)量的認證,更是一種軟件過程改善的途徑。參與CMM評估的博科負責人表示,通過CMM的評估認證不是目標,它只是推動軟件企業(yè)在產(chǎn)品的研發(fā)、生產(chǎn)、服務和管理上不斷成熟和進步的手段,是一種持續(xù)提升和完善企業(yè)自身能力的過程。如果一家公司最終通過CMMI的評估認證,標志著該公司在質(zhì)量管理的能力已經(jīng)上升到一個新的高度。
級別:
1. 初始級
軟件過程是無序的,有時甚至是混亂的,對過程幾乎沒有定義,成功取決于個人努力。管理是反應式的。
2.可重復級
建立了基本的項目管理過程來跟蹤費用、進度和功能特性。制定了必要的過程紀律,能重復早先類似應用項目取得的成功經(jīng)驗。
3. 已定義級
已將軟件管理和工程兩方面的過程文檔化、標準化,并綜合成該組織的標準軟件過程。所有項目均使用經(jīng)批準、剪裁的標準軟件過程來開發(fā)和維護軟件,軟件產(chǎn)品的生產(chǎn)在整個軟件過程是可見的。
4. 量化管理級
分析對軟件過程和產(chǎn)品質(zhì)量的詳細度量數(shù)據(jù),對軟件過程和產(chǎn)品都有定量的理解與控制。管理有一個作出結論的客觀依據(jù),管理能夠在定量的范圍內(nèi)預測性能。
5. 優(yōu)化管理級
過程的量化反饋和先進的新思想、新技術促使過程持續(xù)不斷改進。
每個等級都被分解為過程域,特殊目標和特殊實踐,通用目標、通用實踐和共同特性:
每個等級都有幾個過程區(qū)域組成,這幾個過程域共同形成一種軟件過程能力。每個過程域,都有一些特殊目標和通用目標,通過相應的特殊實踐和通用實踐來實現(xiàn)這些目標。當一個過程域的所有特殊實踐和通用實踐都按要求得到實施,就能實現(xiàn)該過程域的目標。
能力度等級:屬于連續(xù)式表述,共有六個能力度等級(0~5),每個能力度等級對應到一個一般目標,以及一組一般執(zhí)行方法和特定方法。
0 不完整級
1 執(zhí)行級
2 管理級
3 定義級
4 量化管理級
5 最佳化級 掃一掃 獵學網(wǎng)企業(yè)微信 獵學網(wǎng)訂閱號 獵學網(wǎng)服務號
獲取更多福利