CMMI(Capability Maturity Model Integration)即能力成熟度等級整合模型,主要包括過程管理、專案管理、軟體工程、過程支援等幾個大的過程。
公司進行中CMMI的評估,評估之初我們老總就確立了一個原則:簡單實用,切合實際開發流程。
我也擔當了其中一個評估項目的專案經理,但是在實際使用過程中還是深深感受到了CMMI的繁瑣。那麼我們到底要不要CMMI,在多大程度上使用CMMI呢?
CMMI的好處想必很多人都知道,主要就是規範開發過程,持續改進軟體開發流程,可以有效地控制項目進度,減少項目缺陷。
好處我就不多說了,google一下會出現很多結果 -_-
下面我就談談在使用過程中感受比較深的一些地方(不敢說是問題,可能是我CMMI還沒用好)
首先,芝麻大的一點事情都要體現在計劃當中。有計劃當然好,但是有時候對於一些突然出現的問題,比如使用者要求在首頁上加一個部落格園的連結,很小的一個要求,如果應用CMMI的話就要改計劃、改需求、改設計......,如果光改代碼的話可能10分鐘,改文檔要半天
其次,每次會議都要有會議記錄。重要的會議當然要記,但是有時候臨時性的,10分鐘半小時的會議似乎沒有這個必要
總之我感覺CMMI太死板了,太教條主義了,文檔太多了。大型項目應用CMMI可能會好一點,但是對於中小型項目來說有點得不償失了,8人月的一個項目如果應用CMMI的話,文檔這一塊可能就會多出一個人月的工作量。
最近我也正在看《人件》,正在看第二遍。它和CMMI側重於兩個不同的方面,CMMI側重於制度、管理,而人件則側重於人,認為人是軟體開發的核心,研究如何改進環境、改進文化等來充分發揮人的激情,來形成膠凍型團隊。
兩相比較我覺得人件更適合於一般的軟體企業。吸取CMMI中的管理理念,廢除其中繁瑣的、無用的文檔(必要的文檔當然是需要的),然後再應用人件中提到的一些方式打造幾個膠凍型團隊,這樣應該比較好。
以上只是一家之言,只代表我個人觀點,相信園子裡也有不少專案管理的行家吧,歡迎討論。