什么是CMMI?
軟件能力成熟度模型(Capability Maturity Model For Software ,簡稱SW-CMM/CMMI),是由美國卡內基梅隆大學軟件工程研究所(CMU SEI)研究出的一種用于評價軟件承包商能力并幫助改善軟件質量的方法,其目的是幫助軟件企業對軟件工程過程進行管理和改進,增強開發與改進能力,從而能按時地、不超預算地開發出高質量的軟件。其所依據的想法是:只要集中精力持續努力去建立有效的軟件工程過程的基礎結構,不斷進行管理的實踐和過程的改進,就可以克服軟件開發中的困難。CMM/CMMI是目前國際上最流行、最實用的一種軟件生產過程標準,已經得到了國際軟件產業界的認可,成為當今(企業)從事規模軟件生產不可缺少的一項內容。
|
CMM
|
CMMI
|
CMM與CMMI區別
|
1.
|
需求管理RM
Requirements
Management
|
需求管理 RM
Requirements
Management
|
·
|
要與需求開發Requirement Development 并行工作
|
·
|
明確要求需求的可追溯性
|
|
2.
|
軟件項目策劃SPP
Software Project
Planning
|
項目策劃PP
Project Planning
|
·
|
強調相關人員的參與
|
·
|
要有具體的任務分解表WBS
|
·
|
關注項目技巧的獲得
|
·
|
項目數據的數據管理
|
|
3.
|
軟件項目跟蹤與監控
SPTO
SoftwareProject
Tracking and Oversight
|
項目監督與控制PMC
Project Monitoring
and Control
|
·
|
監控具體實踐級別上的約定
|
·
|
強調對風險和相關人員參與的監督
|
|
4.
|
軟件子合同管理
SSM
Software Subcontract
Management
|
供應商合同管理SAM
Supplier Agreement
Management
|
·
|
引入了原"子商管理"和"組間協調"的意圖
|
·
|
強調合同的概念
|
|
5.
|
軟件質量保證SQA
Software Quality
Assurance
|
過程和產品質量保證
PPQA
Process and Product
Quality Assurance
|
·
|
強調對過程及工作產品的客觀評價
|
·
|
要正式建立評價標準
|
|
6.
|
軟件配置管理SCM
Software Configuration Management
|
配置管理CM
Configuration Management
|
·
|
"Software Library軟件庫" 被"Configuration Management System配置管理系統"代替
|
·
|
配置管理系統包括存儲介質,規程和登陸配置系統的工具
|
|
7.
|
|
度量與分析 MA
Measurement and Analysis
|
·
|
新的過程區域
|
·
|
比原來共同特性中的"度量與分析"部分要求要多
|
·
|
要求組織能夠系統地開發并發展自己的度量
|
|
CMM/CMMI將軟件過程的成熟度分為5個等級,以下是5個等級的基本特征:
(1)初始級(initial)。工作無序,項目進行過程中常放棄當初的計劃。管理無章法,缺乏健全的管理制度。開發項目成效不穩定,項目成功主要依靠項目負責人的經驗和能力,他一但離去,工作秩序面目全非。
(2)可重復級(Repeatable)。管理制度化,建立了基本的管理制度和規程,管理工作有章可循。 初步實現標準化,開發工作比較好地按標準實施。 變更依法進行,做到基線化,穩定可跟蹤,新項目的計劃和管理基于過去的實踐經驗,具有重復以前成功項目的環境和條件。
(3)已定義級(Defined)。開發過程,包括技術工作和管理工作,均已實現標準化、文檔化。建立了完善的培訓制度和專家評審制度,全部技術活動和管理活動均可控制,對項目進行中的過程、崗位和職責均有共同的理解 。
(4)已管理級(Managed)。產品和過程已建立了定量的質量目標。開發活動中的生產率和質量是可量度的。已建立過程數據庫。已實現項目產品和過程的控制。可預測過程和產品質量趨勢,如預測偏差,實現及時糾正。
(5)優化級(Optimizing)。可集中精力改進過程,采用新技術、新方法。擁有防止出現缺陷、識別薄弱環節以及加以改進的手段。可取得過程有效性的統計數據,并可據進行分析,從而得出最佳方法