CMMI DEV V2.0在2018年3月底正式发布,这是CMMI从卡内基梅隆大学软件工程研究所剥离出来、归并入国际信息系统审计协会(ISACA)之后的第一次版本更新,自2011年11月SEI发布CMMI V1.3版本之后,已经历时七年没有更新版本了。在这七年的时间中,Scrum、极限编程、精益看板方法、SAFe、 DevOps,LeSS等方法百花齐放,快速流行,丰富了软件组织实施落地CMMI框架的方法。根据CMMI研究所的统计,2017年有82%的CMMI评估组织使用了敏捷方法。CMMI V1.3版本的评估数目最近几年也在快速增长,2017年在全球的评估数量达到了2650次,中国达到1557次。此次CMMI研究所更新CMMI DEV V2.0版本也是结合了用户、主任评估师、合作伙伴的反馈建议,与时俱进,拥抱变化。
那么CMMI模型从1.3版本到2.0版本究竟有哪些变化呢?
图一 2008年到2017年全球CMMI评估数量的变化趋势
首先是关于思想的变化或强化。
1 进一步强调商业目标对过程改进的驱动作用。
在CMMI V1.3版本中,只是在5级中强调了围绕商业目标进行过程改进,但是在2.0中,无论哪个等级都强调了围绕商业目标进行改进,这是2.0的一个基本思想,也是过程改进的本质。对于每条实践的描述,在2.0中增加了一个构件,即实践的价值,这就是围绕商业目标进行改进的体现。
2 要通过性能变化衡量改进效果。
是否围绕商业目标进行改进,要体现在组织级的能力变化上,要通过度量数据体现出来,而不能仅仅是主观的判断。在CMMI V2.0 的评估方法中,要求每次评估都要提交组织的性能报告,要通过定量的数据说明组织级能力的变化。
3 高层经理对过程改进参与情况的具体化描述。
在CMMI V1.3版本中,高层经理对过程改进、项目管理的参与是通过共性实践来体现的,而在CMMI V2.0中,将高层需要参与的活动提炼为了GOV实践域,进一步强调高层参与过程改进的重要性。
4 员工的行为要固化为工作习惯。
确保过程发挥作用,需要体现在具体的工作人员按照过程要求在实践中切实执行,即使在面临工期压力的情况下,也不能放弃。从混乱到规范,从有意识到养成习惯。高境界就是体系规范的执行深入到每个人的意识中,按照本能反应、按照规范做事情。
图二 员工行为转换状态图
5 过程灵活映射到模型。
CMMI模型中的实践定义了What to do,而How to do 是由每个组织自己去定义的而且要紧紧围绕着组织的商业目标来定义。在能满足组织级的商业目标后,再来判断是否可以将组织的How to do 映射到CMMI模型的What to do。How to do 可以有很多不同的做法,相当灵活。软件组织执行的一系列过程并不是生搬硬套模型,正相反,模型恰恰是为组织过程来服务的。
6 随机抽样检查有助于过程固化。
按照CMMI评估方法的要求,所有参与评估的项目应该是随机抽样的,在CMMI V1.3的评估方法中是由主任评估师与Sponsor协商确定,而在CMMI V2.0中,则是由被评估的组织上报所有可能的参评项目,由CMMI研究所的评估系统自动随机抽取参评项目。这种抽样方法的变化,重点在于要求企业真正能够将自己的体系推广到每个项目,而不是仅仅在参评项目中按照规范的方法做事情
1 过程域修改为了实践域,简写仍然是PA。
当提到过程的概念时,过程中的实践之间是有先后顺序关系的,但是其实CMMI模型中的实践是没有顺序关系的,修改为实践域则避免了这个误解。
2 新增了能力域的概念。
在模型中对能力域有一个正式的定义:
A capability area (CA) is a group of related practice areas that can provide improved performance in the skills and activities of an organization or project. A capability area view is a subset of the CMMI V2.0 model that describes a predefined set of practice areas that make up a specific capability area. Capability areas are a type of a view.
通俗地讲,能力域就是针对组织要解决的特定问题的一组相关实践域。能力域的名字就是针对要解决问题的一种概括描述。CMMI DEV V2.0的能力域有:确保质量、工程和开发产品、选择和管理供应商、策划并管理工作、管理业务弹性、管理人力、支持实施、建立并维持能力、改进性能等。
图三 能力域类型-能力域-实践域对应关系图
3过程域类型修改为了能力域类型。
图四 能力域类型
在CMMI V1.3的连续式表示方法中,是将过程域分为了四种类型:工程类、支持类、项目管理类、过程管理类。而CMMI V2.0中的能力域归为4类,称为能力域类型,即:doing、managing、enabling,、improving。
可以将两种分类方法做一个近似对等映射,即:
工程类 ——> doing;
项目管理类 ——> managing;
支持类 ——> enabling;
过程管理类 ——> improving;
4 新增了视图(view)的概念。
视图是由用户选择的或CMMI研究所预定义的、对模型的用户很重要的一组实践域及实践组的集合。
CMMI研究所预定义的视图有:
CMMI Development V2.0;
CMMI Service V2.0;
CMMI Supplier Management V2.0;
CMMI Planning and Managing Work Capability Area;
用户选择的视图如:
CMMI DEV 和CMMI SVC 2.0;
其他任意的PA或能力域或实践组的组合;
1 采用平实的语言描述。
V2.0模型尽量采用平实的语言进行描述,通俗易懂,还原到最初CMM模型的描述风格,更加易于理解和学习,对模型的英文原文进行词频统计发现仅有3500多个单词。
2 整合了People CMM 等多个模型。
除了CMMI V1.3中的开发、服务、采购三个系列仍然包含在在CMMI模型中,2.0的模型中还集成了People CMM模型。People CMM模型虽然在全球的评估数量不多,但是作为一个优秀的人力资源管理模型,仍然值得推广,在企业的能力提升中同样扮演着重要的角色,所以集成People CMM进来是一个明智的决策!另外,V2.0的模型还计划增加关于安全与保密相关的实践域。
3 不再对实践域划分等级,而是对实践划分等级。
这是一个很显著的变化,这个变化更符合实际、更合理。比如对于CAR而言,2、3级的企业也应该做根因分析,只是与4、5级的企业相比进行根因分析的方法手段有差别而已。在一个PA中的不同等级的实践集合称为一个实践组。
在20个实践域中,只有CM仅包含1、2级的实践,而PLAN,PCM,SAM三个过程域包含了1、2、3、4级的实践,CAR与MPM包含5个等级的实践,其他实践都是包含了1、2、3级的实践。
2级的实践累计有79条,3级的实践累计有73条,4级的实践累计有10条,5级的实践累计有4条。CMMI DEV V2.0的实践统计如表一:
实践域简写 | 实践域名称 | 实践个数小计 | Level 1 | Level 2 | Level 3 | Level 4 | Level 5 |
CAR | 原因分析域解决方案 | 11 | 1 | 2 | 5 | 2 | 1 |
CM | 配置管理 | 7 | 1 | 6 | |||
DAR | 决策分析与解决方案 | 8 | 2 | 5 | 1 | ||
EST | 估算 | 6 | 1 | 3 | 2 | ||
GOV | 治理 | 7 | 1 | 4 | 2 | ||
II | 实施设施 | 7 | 1 | 2 | 3 | 1 | |
MPM | 管理性能与度量元 | 22 | 2 | 6 | 6 | 5 | 3 |
MC | 监督和控制 | 10 | 2 | 4 | 4 | ||
OT | 组织级培训 | 9 | 1 | 2 | 6 | ||
PR | 同行评审 | 6 | 1 | 4 | 1 | ||
PLAN | 策划 | 15 | 2 | 8 | 4 | 1 | |
PAD | 过程资产开发 | 11 | 1 | 3 | 7 | ||
PCM | 过程管理 | 12 | 3 | 2 | 6 | 1 | |
PQA | 过程质量保证 | 6 | 1 | 4 | 1 | ||
PI | 产品集成 | 10 | 1 | 6 | 3 | ||
RDM | 需求开发与管理 | 14 | 1 | 6 | 7 | ||
RSK | 风险和机会管理 | 8 | 1 | 2 | 5 | ||
SAM | 供应商合同管理 | 10 | 3 | 4 | 2 | 1 | |
TS | 技术解决方案 | 10 | 1 | 3 | 6 | ||
VV | 验证与确认 | 7 | 2 | 3 | 2 | ||
合计 | 196 | 29 | 79 | 73 | 10 | 4 |
表一 CMMI DEV V2.0 实践个数统计表
4 PA的目的修改为PA的意图与价值。
PA的意图描述了该实践域期望的输出结果。PA的价值描述了通过实施本PA的实践所实现的业务价值,即收益。这个变化更强调了模型的实施要聚焦于为组织带来商业利益,提升企业的业务能力。
5 为每个实践域、每个能力域设计了图标。
为了便于模型的理解、记忆与推广,每个实践域、每个能力域都有自己的图标,这些图标简单易记,很形象,有助于理解模型的含义。
6 不再区分特定实践与共性实践。
所有的共性实践被整合到2个PA中,即GOV与II。GOV描述了高层管理者在过程改进、过程实施中需要做的活动。II描述了过程改进、过程实施所需要的基础设施。这2个PA都是为了确保过程规范能够在组织中固化为习惯。
7 区分了内核信息与特定场景内容。
每个实践域都分解为一个共通描述章节(内核信息)与可适用的特定场景描述章节,目前提供的针对Scrum的特定场景描述,以后还会灵活增加其他特定场景。
8 模型展示工具的变化。
CMMI研究对于模型的展示提供了Model viewer工具,可以在线查阅模型,也可以下载pdf 格式的模型供个人使用。主任评估师与教员可以全年使用该工具,对于接受Intro培训课程的学员,则提供了7天的时间窗口可以使用该工具阅读模型、下载模型。下载的模型印有中有学员账号信息,不经过CMMI研究所授权的非法传播都是禁止的。