1. 程式人生 > >CMM:軟件成熟度模型

CMM:軟件成熟度模型

管理工具 混亂 發的 統計 def cmm 應對 定義 公司

周末在家閑來無事,泡咖啡看書,正好看到了關於CMM的相關資料,分享出來,也當做學習筆記。。。

一、CMM簡介

CMM,英文全稱為Capability Maturity Model for Software,即:軟件成熟度模型。

CMM的核心是把軟件開發視為一個過程。它是對於軟件在定義、實施、度量、控制和改善其軟件過程的實踐中各個發展階段的描述。

根據這一原則對軟件開發和維護進行過程監控和研究,以使其更加科學化、標準化,使企業能夠更好地實現商業目標。

分級:一級為初始級,二級為可重復級,三級為已定義級,四級為已管理級,五級為優化級

優點:

1、提高軟件開發的管理能力,因為CMM可提供軟件公司自我評估的方法和自我提高的手段;

2、提高軟件開發效率;

3、提高軟件質量;

4、提高軟件競爭力;

二、初始級(Initial)

特點:軟件工程管理制度缺乏,過程缺乏定義、混亂無序。經常由於缺乏管理和計劃導致時間、費用超支,管理方式屬於反應式,主要用來應付危機,過程不可預測,難以重復。

即使制定了一些軟件工程規範,但如果規範未能覆蓋基本的關鍵過程要求,且執行時沒有相關資源的支持保證,仍將其視為初始級。

關鍵詞:技術負債

提高:建立項目過程管理,建立各種計劃,開展QA活動。

三、可重復級(Repeatable)

特點:基於類似項目的經驗,建立了基本的項目管理制度,采取了一定的資源控制手段。管理人員可及時發現問題,采取應對措施。

軟件開發的首要問題不是技術問題而是管理過程,一個可管理的過程則是一個可重復的過程。

提高:引入需求管理、項目管理(包括項目跟蹤和監控)、子合同管理、軟件配置管理和質量管理(包括質量量化和監控)。

四、已定義級(Defied)

特點:軟件過程文檔化、標準化,可按照需求改進開發過程,采用評審方法保證軟件質量,引入case管理工具提高質量和效率。

將執行標準集成到企業軟件開發標準過程中,根據標準過程執行,可根據具體情況進行調整,調整需要相關人員確認通過。

提高:組織過程定義、焦點,培訓大綱,軟件集成管理,組織協調,專家評審等。

五、已管理級(Managed)

特點:所有過程建立相應的度量方式和明確的度量指標,度量是詳盡且可用於理解和控制軟件過程的。量化控制將使軟件開發真正成為一種工業生產活動。

針對制定質量、效率目標,並收集、度量相應指標,利用統計工具分析並采取改進措施。

提高:定量的軟件過程管理和產品質量管理,防止和規避缺陷的能力,技術革新能力,過程不斷改進。

六、優化級(Optimizing)

特點:可根據執行過程的反饋來改善下一步的執行過程,優化執行步驟(基於統計質量和過程管理的工具,持續改進軟件過程),質量和效率穩步提升和改進。

提高:缺陷預防管理(包括預防和應對容災措施)、過程變更管理(工作流)和技術變更管理。

軟件成熟度模型反映了軟件開發過程的不斷優化和技術的變更,管理效率的不斷提升,也從另一方面印證了生產力發展的規律:標準化、管理化、自動化。。。

CMM:軟件成熟度模型