軟件能力成熟度模型(Capability Maturity Model For Software ,簡稱SW-CMM/CMMI),是由美國卡內基梅隆大學軟件工程研究所(CMU SEI)研究出的一種用于評價軟件承包商能力并幫助改善軟件質量的方法,其目的是幫助軟件企業對軟件工程過程進行管理和改進,增強開發與改進能力,從而能按時地、不超預算地開發出高質量的軟件。其所依據的想法是:只要集中精力持續努力去建立有效的軟件工程過程的基礎結構,不斷進行管理的實踐和過程的改進,就可以克服軟件開發中的困難。CMM/CMMI是目前國際上最流行、最實用的一種軟件生產過程標準,已經得到了國際軟件產業界的認可,成為當今(企業)從事規模軟件生產不可缺少的一項內容。
|
CMM |
CMMI |
CMM與CMMI區別 |
||||||||
1. |
需求管理RM |
需求管理 RM |
|
||||||||
2. |
軟件項目策劃SPP |
項目策劃PP |
|
||||||||
3. |
軟件項目跟蹤與監控 |
項目監督與控制PMC |
|
||||||||
4. |
軟件子合同管理 |
供應商合同管理SAM |
|
||||||||
5. |
軟件質量保證SQA |
過程和產品質量保證 |
|
||||||||
6. |
軟件配置管理SCM |
配置管理CM |
|
||||||||
7. |
|
度量與分析 MA |
|
CMM/CMMI將軟件過程的成熟度分為5個等級,以下是5個等級的基本特征:
(1)初始級(initial)。工作無序,項目進行過程中常放棄當初的計劃。管理無章法,缺乏健全的管理制度。開發項目成效不穩定,項目成功主要依靠項目負責人的經驗和能力,他一但離去,工作秩序面目全非。
(2)可重復級(Repeatable)。管理制度化,建立了基本的管理制度和規程,管理工作有章可循。 初步實現標準化,開發工作比較好地按標準實施。 變更依法進行,做到基線化,穩定可跟蹤,新項目的計劃和管理基于過去的實踐經驗,具有重復以前成功項目的環境和條件。
(3)已定義級(Defined)。開發過程,包括技術工作和管理工作,均已實現標準化、文檔化。建立了完善的培訓制度和專家評審制度,全部技術活動和管理活動均可控制,對項目進行中的過程、崗位和職責均有共同的理解 。
(4)已管理級(Managed)。產品和過程已建立了定量的質量目標。開發活動中的生產率和質量是可量度的。已建立過程數據庫。已實現項目產品和過程的控制。可預測過程和產品質量趨勢,如預測偏差,實現及時糾正。
(5)優化級(Optimizing)。可集中精力改進過程,采用新技術、新方法。擁有防止出現缺陷、識別薄弱環節以及加以改進的手段。可取得過程有效性的統計數據,并可據進行分析,從而得出最佳方法