cmm的級別就是軟體開發管理的「段位」
cmm(
英文wiki ) 是什麼(包括cmmi,因為本文不涉及細節)?有人把它理解成「規範」;有人把它理解成「標準」;
一般人對cmm的理解是:
1、cmm是一堆規範的集合,包括5個等級,共計18個過程域,52個目標,300多個關鍵實踐。
2、如果按照這些規範執行就需要寫很多文件,這很麻煩,但是對於「大組織」來說必不可少,但對於小組織來說沒有必要。
3、如果按照cmm的規範執行,就可以達到cmm的某個級別。
上述認識可以說是「根本性的錯誤」。
cmm是
cmm )。有人會說,這個我早就知道了,其實很有必要為「軟體的能力成熟度模型」這幾個字進行「正名」,名不正則言不順嘛。
我們按照字面意思來推理一下:
「軟體的能力成熟度模型」----「某種」能力「高低」的「模型」:這裡的「某種」在這裡表示「軟體」,這裡的「高低」在這裡表示「成熟水平」或稱「成熟 度」。這裡「模型」又是什麼意思呢?我的理解是「能力」的細化,也就是n多「小能力」合併成的這個「大能力」(這裡的大、小是指範圍,不是指深淺)。這些 「小能力」在cmm裡面就是「關鍵過程域」---kpa。
用乙個模擬可能更加能夠說明問題:
「cmm對於軟體開發水平」正如
「段位對於圍棋水平」
。
(小時候喜歡下棋,當時真的體會到世間的道理都能在「圍棋」中影子。)
1、從範圍上講「段位」是圍棋棋力的「綜合」體現,其中包含了布局能力,中盤搏殺能力,官子能力等。
對比:cmm是「許多」kpa能力綜合體現。
2、從深度上講「段位」體現的是棋力,也就是圍棋的綜合「能力」,一般來說9段水平要比3段高,他們之間的「級別」差就是他們的棋力差別。
對比:cmm體現的是軟體開發水平的綜合能力。「可度量級」肯定比「可重複級」要高明。cmm2可重複級---cmm3已定義級---cmm4可管理級---cmm5優化級就相當於圍棋中的初段、二段、三段等這九個段位。
3、「段位」體現的是相對的,是乙個大概的說法,並不表示8段的棋手一定會敗在9段棋手之下,但一般來說,8段的水平要差些。
對比:針對同乙個專案,完全有可能cmm4級的小組能夠做的比cmm5級的小組成功。這取決於許多因素,但一般來說cmm5級的開發管理水平要高一點。
4、「棋譜/棋書」是學習圍棋的好幫手,多讀棋譜也是提高棋力的好辦法。從棋譜中你能夠了解「布局」,「中盤」,「官子」不同階段到底要關注什麼?巧。
5、會背《吳清源全集》,就能夠具備吳清源的棋力嗎?熟讀兵書,不能夠靈活運用這叫紙上談兵。但是如果你會背《吳清源全集》,並且通過實戰把你肚子中的《吳清源全集》發酵出來。你的進步就會比不背棋譜的人快很多。
對比:了解和理解cmm並不能直接改善軟體開發的管理水平,但了解cmm就了解了軟體開發到底有哪些關注的焦點,「按圖索驥」的你會進步的比別人快。
上述對比不一定「精確」但一定有助於大家理解cmm的基本思想。
當我們理解了上述的對比,對於cmm的許多誤解也就不攻自破。
1、如果按照cmm4的規範執行,就可以達到cmm4級水平了嗎?
答:不可能!用九段的標準來要求乙個初段水平的人下棋,這個初段水平的人就是九段了嗎?肯定不是。能力是一步一步漲上來的,不可能一步登天。
2、國內某個學者把cmm的初始級分解成cmm 0級和1級,這有意義嗎?
答:沒有什麼意義!cmm的能力是一種相對概念。正如搞乙個「3.5段」一樣沒什麼意義。
3、通過cmm評估機構的級別認證和能力水平是一回事嗎?
答:只要評估機構收費就有貓膩存在。聽說過榮譽段位嗎?**元帥就是「榮譽八段」,這絕不說明**元帥的棋力達到八段水平。評估機構的鉅額評估費用本身就說明了評估失去了公正性。
4、cmm是重量級的過程管理方法,對於大組織才有用處,對於小組織沒什麼用。
答:不是!cmm主要體現的是一種「潛移默化」的能力,不是一堆文件。因此哪怕是自己獨自乙個人開發軟體,一樣可以達到cmm5級的水平。
5、cmm的實施就是按照《cmm實施手冊/指南》來做?
答:錯,大錯特錯!正如你不可能按照《吳清源全集》來要求你自己下棋,生搬硬套只能讓你變得「不會下棋」。《cmm實施手冊/指南》只是一種參考,你可以去了解軟體開發管理涉及哪些要素,如何才能做得更好需要你自己去體會。生搬硬套也只能適得其反。
總的來說,
cmm應該體現了一種「能力」,一種「管理能力」,一種「軟體開發的管理能力」,正如段位代表了下棋的能力。
《cmm實施手冊/指南》僅僅是一本「棋譜」。
原文出處:
cmm的級別就是軟體開發管理的「段位」
軟體開發管理CMM等級劃分
cmm軟體開發流程試圖將幾十年來風險比較不可控的軟體開發用乙個規範的流程控制起來,變成乙個類似傳統工業化生產流程的工業。cmm理念 cmm主要理念之一就是加強過程控制,認為只要開發的過程按照規定動作執行,就可以很大程度上降低軟體開發的質量 進度風險。而過程質量控制的主要手段就是檢視。cmm的理念之二...
軟體開發管理本質與CMM的一些雜亂思緒
注 本文純屬個人思想發展路上的一些日記,不正確的部分請在海涵的基礎上進行大無畏的批評指正,謝謝!1 對軟體開發的認識軟體開發?全世界絕大多數軟體公司把軟體開發分為設計 製造 測試三個階段。認為從編碼階段以前的部分是軟體設計階段,編碼屬於軟體製造階段。從而產生的瀑布式開發模型以及從建築行業照搬過來的管...
軟體開發管理
scrum感言 軟體流程的名稱太多,rup,v model,iso9000,cmm等等不一而足。最近接觸了scrum,收穫良多,與諸位同仁分享。自從有人類社會活動以來,就形成了各種各樣的組織和制度,上到社會體制下到家庭環境,西方到東方,社會風尚 工廠流程 等等,這些東西都具有一種共同的特點 都是為了...