軟件開發的風險之所以大,是由于軟件過程能力低,其中最關鍵的問題在于軟件開發組織不能很好地管理其軟件過程,從而使一些好的開發方法和技術起不到預期的作用。另外,項目的成功也是通過工作組的杰出努力,所以僅僅建立在可得到特定人員上的成功不能為全組織的生產和質量的長期提高打下基礎,必須在建立有效的軟件工程實踐和管理實踐的基礎設施方面,堅持不懈地努力,才能不斷改進,才能持續地成功。
框架
CMM提供了一個階梯式的進化框架,將軟件過程改進的進化步驟組織成5個成熟等級,為過程不斷改進奠定了循序漸進的基礎。5個成熟度等級定義了一個有序的尺度,用來測量一個組織的軟件過程成熟和評價其軟件過程能力,這些等級還能幫助組織自己對其改進工作排出優先次序。成熟度等級是已得到確切定義的,也是在向成熟軟件組織前進途中的平臺。每一個成熟度等級為連續改進提供一個臺基。
如果要用簡單的一句話來表達從一級到高一級所需要的努力的話,我們可以有:
從一級到二級的轉化:規范化過程;
從二級到三級的轉化:標準化、穩定的過程;
從三級到四級的轉化:可預測的過程;
從四級到五級的轉化:持續改進過程。
(1)初始級(Initial)
初始級的軟件過程是未加定義的隨意過程,項目的執行是隨意甚至是混亂的。也許,有些企業制定了一些軟件工程規范,但若這些規范未能覆蓋基本的關鍵過程要求,且執行沒有政策、資源等方面的保證時,那么它仍然被視為初始級。
在初始級,企業一般不具備穩定的軟件開發與維護的環境。常常在遇到問題的時候,就放棄原定的計劃而只專注于編程與測試。處于這一等級的企業,成功與否在很大程度上決定于有杰出的項目經理與經驗豐富的開發團隊。因此,能否雇請到及保有能干的員工成了關鍵問題。項目成功與否非常不確定。雖然產品一般來說是可用的,但是往往有超經費與不能按期完成的問題。
(2)可重復級(Repeatable)
根據多年的經驗和教訓,人們總結出軟件開發的首要問題不是技術問題而是管理問題。因此,第二級的焦點集中在軟件管理過程上。一個可管理的過程則是一個可重復的過程,一個可重復的過程則能逐漸進化和成熟。第二級的管理過程包括了需求管理、項目管理、質量管理、配置管理和子合同管理五個方面。其中項目管理分為計劃過程和跟蹤與監控過程兩個過程,通過實施這些過程,從管理角度可以看到一個按計劃執行的且階段可控的軟件開發過程。
在這一級,建立了管理軟件項目的政策以及為貫徹執行這些政策而定的措施;谶^往的項目的經驗來計劃與管理新的項目。企業實行了基本的管理控制。符合實際的項目承諾是基于以往項目以及新項目的具體要求而作出的。項目經理不斷監視成本、進度和產品功能,及時發現及解決問題以便實現所作的各項承諾。
通過具體地實施這一級的各個關鍵過程領域的要求,企業實現了過程的規范化、穩定化。因而,曾經取得過的成功成為可重復達到的目標。
文章來源于領測軟件測試網 http://www.kjueaiud.com/