[原创]什么是CMM?
1 什么是CMM?
软件能力成熟度模型(Capability Maturity Model For Software ,简称SW-CMM/CMMI),是由美国卡内基梅隆大学软件工程研究所(CMU SEI)研究出的一种用于评价软件承包商能力并帮助改善软件质量的方法,其目的是帮助软件企业对软件工程过程进行管理和改进,增强开发与改进能力,从而能按时地、不超预算地开发出高质量的软件。
2 CMM基本概念
5个成熟度等级:Initial, Repeatable, Defined, Managed, Optimizing ; 18个关键过程域.
其中5个成熟度等级:
初始级(Initial)
组织:组织通常没有提供开发和维护软件的稳定的环境。
项目:当发生危机时,项目通常放弃计划的过程,回复到编码和测试。
过程能力:不可预测。(unpredictable)
可重复级(Repeatable)
组织:将软件项目的有效管理过程制度化,这使得组织能够重复以前项目中的成功实践。
项目:配备了基本的软件管理控制。
过程能力:严格的。(disciplined)
已定义级(Defined)
组织:在组织范围内开发和维护软件的标准过程被文档化,其中包括软件工程过程和管理过程,它们集成为一个一致的整体。
项目:对组织的标准软件过程进行裁剪,来开发它们自己的定义软件过程。
过程能力:标准的和一致的。(standard and consistent)
已管理级(Managed )
组织:为软件产品和过程都设定了量化的质量目标。
项目:项目减小过程性能的变化性,使其进入可接收的量化边界,从而达到对产品和过程的控制。
过程能力:可预言的。(predictable)
持续优化级(Optimizing)
组织:关注于持续的过程改进。
项目:软件过程被评价,以防止过失重复发生,从中获得的教训散布给其它项目。
过程能力:持续的改善。(continuously improving)
2 CMM能力成熟度模型的基本思想
帮助软件开发机构建立一个有规律的、成熟的软件过程。改进后的软件过程将开发出质量更好的软件,使更多的软件项目免受时间和费用超支之苦。
3 CMM成熟度过程等级


4 成熟度级别的内部结构

5 18个关键过程域KPA

6 CMM与CMM过程域区别
|
等级
|
CMM
|
CMMI
|
类别
|
|
过程域
|
缩写
|
过程域
|
缩写
|
|
5
|
技术更新管理
|
TCM
|
组织革新与部署
|
OID
|
过程管理
|
|
过程更改管理
|
PCM
|
CAR
|
|
缺陷预防
|
DP
|
原因分析与决策
|
|
支持
|
|
4
|
软件质量管理
|
SQM
|
组织过程性能
|
OPP
|
过程管理
|
|
定量过程管理
|
QPM
|
定量项目管理
|
QPM
|
项目管理
|
|
3
|
软件产品工程 同行评审
|
SPE PR
|
需求制定
|
RD
|
工程
|
|
技术方案
|
TS
|
工程
|
|
产品集成
|
PI
|
工程
|
|
验证
|
VER
|
工程
|
|
确认
|
VAL
|
工程
|
|
组织过程聚焦
|
OPF
|
组织过程聚焦
|
OPF
|
过程管理
|
|
组织过程定义
|
OPD
|
组织过程定义
|
OPD
|
过程管理
|
|
培训大纲
|
TP
|
组织培训
|
OT
|
过程管理
|
|
集成软件管理
|
ISM
|
集成项目管理
|
IPM
|
项目管理
|
|
组间协调
|
|
|
|
风险管理
|
RSKM
|
项目管理
|
|
|
|
决策分析与决定
|
DAR
|
支持
|
|
|
|
集成供应商管理
|
ISM
|
项目管理
|
|
|
|
组织集成环境
|
OEI
|
支持
|
|
|
IC
|
集成组队
|
IT
|
项目管理
|
|
2
|
需求管理
|
RM
|
需求管理
|
RM
|
|
|
软件项目策划
|
SPP
|
项目策划
|
PP
|
项目管理
|
|
软件项目监督与控制
|
SPTO
|
项目监督与控制
|
PMC
|
项目管理
|
|
软件分包管理
|
SAM
|
供应协议管理
|
SAM
|
项目管理
|
|
软件质量保证
|
SQA
|
过程与产品质量保证
|
PPQA
|
支持
|
|
软件配置管理
|
SCM
|
配置管理
|
CM
|
支持
|
|
|
|
度量与分析
|
MA
|
支持
|
|
1
|
|
|
|
|
|
7 CMM的用途?
1 用于软件过程的改进(SPI Software Process Improvement):帮助软件企业对其软件(制作)过程的改变(进)进行计划、(措施)制定以及实施。
2 用于软件过程评估(SPA Software Process Assessment): 在评估中,一组经过培训的软件专业人员确定出一个企业软件过程的状况,找出该企业所面对(存在)的与软件过程有关的、最迫切的所有问题;以及取得企业领导层对软件过程改进的支持。
3 软件能力评鉴(SCE Software Capability Evaluation):在能力评鉴中,一组经过培训的专业人员鉴别出软件承包者的能力资格;或者是检查监察正用于(进行)软件制作的软件过程的状况。