[原创]什么是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 |
需求制定 |
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):在能力评鉴中,一组经过培训的专业人员鉴别出软件承包者的能力资格;或者是检查监察正用于(进行)软件制作的软件过程的状况。