一、前言
CMMI DEV V2.0在2018年3月底正式发布,这是CMMI从卡内基梅隆大学软件工程研究所剥离出来、归并入国际信息系统审计协会(ISACA)之后的第一次版本更新,自2011年11月SEI发布CMMIV1.3版本之后,已经历时七年没有更新版本了。在这七年的时间中,Scrum、极限编程、精益看板方法、SAFe、 DevOps,LeSS等方法百花齐放,快速流行,极大地丰富了软件组织实施落地CMMI框架的方法。根据CMMI研究所的统计,2017年有82%的CMMI评估组织使用了敏捷方法。CMMI1.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、 要通过性能变化衡量改进效果。
是否围绕商业目标进行改进,要体现在组织级的能力变化上,要通过度量数据体现出来,而不能仅仅是主观的判断。在CMMIV2.0 的评估方法中,要求每次评估都要提交组织的性能报告,要通过定量的数据说明组织级能力的变化。
3、 高层经理对过程改进参与情况的具体化描述。
在CMMI V1.3版本中,高层经理对过程改进、项目管理的参与是通过共性实践来体现的,而在CMMIV2.0中,将高层需要参与的活动提炼为了GOV实践域,进一步强调高层参与过程改进的重要性。
4、 员工的行为要固化为工作习惯。
确保过程发挥作用,需要体现在具体的工作人员按照过程要求在实践中切实执行,即使在面临工期压力的情况下,也不能放弃。从混乱到规范,从有意识到养成习惯。最高的境界就是体系规范的执行深入到每个人的意识中,按照本能反应、按照规范做事情。
图二 员工行为转换状态图
5 、过程灵活映射到模型。
CMMI模型中的实践定义了Whatto do,而Howto do 是由每个组织自己去定义的而且要紧紧围绕着组织的商业目标来定义。在能满足组织级的商业目标后,再来判断是否可以将组织的How todo 映射到CMMI模型的What todo。How todo 可以有很多不同的做法,相当灵活。软件组织执行的一系列过程并不是生搬硬套模型,正相反,模型恰恰是为组织过程来服务的。
6 、随机抽样检查有助于过程固化。
按照CMMI评估方法的要求,所有参与评估的项目应该是随机抽样的,在CMMIV1.3的评估方法中是由主任评估师与Sponsor协商确定,而在CMMIV2.0中,则是由被评估的组织上报所有可能的参评项目,由CMMI研究所的评估系统自动随机抽取参评项目。这种抽样方法的变化,重点在于要求企业真正能够将自己的体系推广到每个项目,而不是仅仅在参评项目中按照规范的方法做事情。
三、关键术语的变化
1、 过程域修改为了实践域,简写仍然是PA。
当提到过程的概念时,过程中的实践之间是有先后顺序关系的,但是其实CMMI模型中的实践是没有顺序关系的,修改为实践域则避免了这个误解。
2 、新增了能力域的概念。
在模型中对能力域有一个正式的定义:
A capability area (CA) is a group of relatedpractice areas that can provide improved performance in the skills andactivities of an organization or project. A capability area view is a subset ofthe CMMI V2.0 model that describes a predefined set of practice areas that makeup a specific capability area. Capability areas are a type of a view.
通俗地讲,能力域就是针对组织要解决的特定问题的一组相关实践域。能力域的名字就是针对要解决问题的一种概括描述。CMMI DEV V2.0的能力域有:确保质量、工程和开发产品、选择和管理供应商、策划并管理工作、管理业务弹性、管理人力、支持实施、建立并维持能力、改进性能等。
图三 能力域类型-能力域-实践域对应关系图
3、过程域类型修改为了能力域类型。
图四能力域类型
在CMMI V1.3的连续式表示方法中,是将过程域分为了四种类型:工程类、支持类、项目管理类、过程管理类。而CMMIV2.0中的能力域归为4类,称为能力域类型,即:doing、managing、enabling,、improving。
可以将两种分类方法做一个近似对等映射,即:
工程类 ——> doing;
项目管理类——> managing;
支持类 ——> enabling;
过程管理类——> improving;
4、 新增了视图(view)的概念。
视图是由最终用户选择的或CMMI研究所预定义的、对模型的最终用户很重要的一组实践域及实践组的集合。
CMMI研究所预定义的视图有:
CMMI DevelopmentV2.0;
CMMI ServiceV2.0;
CMMI SupplierManagement V2.0;
CMMI Planningand Managing Work Capability Area;
最终用户选择的视图如:
CMMI DEV 和CMMISVC 2.0;
其他任意的PA或能力域或实践组的组合;
四、 结构与描述方式的变化
1、采用平实的语言描述。
V2.0模型尽量采用平实的语言进行描述,通俗易懂,还原到最初CMM模型的描述风格,更加易于理解和学习,对模型的英文原文进行词频统计发现仅有3500多个单词。
2、整合了People CMM 等多个模型。
除了CMMI V1.3中的开发、服务、采购三个系列仍然包含在在CMMI模型中,2.0的模型中还集成了PeopleCMM模型。PeopleCMM模型虽然在全球的评估数量不多,但是作为一个优秀的人力资源管理模型,仍然值得推广,在企业的能力提升中同样扮演着重要的角色,所以集成PeopleCMM进来是一个明智的决策!另外,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条。CMMIDEV 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 | ||
PM | 过程管理 | 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 | 11 | 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研究对于模型的展示提供了Modelviewer工具,可以在线查阅模型,也可以下载pdf 格式的模型供个人使用。主任评估师与教员可以全年使用该工具,对于接受Intro培训课程的学员,则提供了7天的时间窗口可以使用该工具阅读模型、下载模型。下载的模型印有中有学员账号信息,不经过CMMI研究所授权的非法传播都是禁止的。
五、过程域的变化
CMMI DEV V1.3中有22个过程域,而目前发布的CMMIDEV V2.0中有20个实践域。其中有些实践域保留了原来的名字,如CAR, CM,DAR,OT,PI,SAM等;有些实践域对名字做了微调,如MC,PLAN,PAD,RSK,PQA等;有些实践域是新增或者剥离出来的,如EST,PR,GOV,II等;有些实践域则是由原来的多个PA合并而来,如MPM,RDM,VV。与1.3版本的映射可以参见表二:
CMMI DEV 2.0的PA与V1.3的映射 |
||
CMMI 2.0的实践域 |
CMMI 1.3的过程域 |
备注 |
CAR |
CAR |
|
CM |
CM |
|
DAR |
DAR |
|
EST |
|
新增PA,从PP中剥离出来 |
GOV |
|
定义了公司高层经理的活动。 来自于V1.3的共性实践。 |
II |
|
来自于V1.3的共性实践。 |
MPM |
MA |
所有定量管理的实践都合并到MPM中。 |
QPM |
||
OPP |
||
OPM |
||
MC |
PMC
|
风险跟踪的实践剥离到RSK中。。 IPM中有关跟踪的实践汇总到本PA,如管理关键依赖、环境等。 里程碑评审不再出现在实践名字中。 |
OT |
OT |
|
PR |
|
新增PA,从VER中剥离出来。 |
PLAN |
PP
|
名称修改。 估算的实践剥离成为一个单独的PA。 数据管理的实践剥离到CM中。 风险管理的实践剥离到RSK中。 IPM中与策划有关的实践汇总到本PA。 增加对移交活动的计划。 |
PAD |
OPD |
名称修改。 删除了建立团队运作规则指南的实践。 |
PCM |
OPF |
有些实践来自于OPM,改了名字。 |
PQA |
PPQA |
名称修改。 |
PI |
PI |
|
RDM |
RD |
所有的需求工程实践都合并到RDM中。 |
REQM |
||
RSK |
RSKM |
RSK 是风险和机会管理,增加了机会管理。 |
SAM |
SAM |
|
TS |
TS |
|
VV |
VER |
合并为VV。同行评审独立成为一个PA。 |
VAL |
||
|
IPM |
IPM拆分到PLAN和MC中。 |
表二:CMMI DEV V2.0的PA 与V 1.3的映射
六、评估方法的变化
1、 抽样规则的变化。
这是评估方法中最显著的变化。通过提前60天由系统自动随机抽样参评的项目,确保了抽样的代表性,更能客观地考察组织是否达到了CMMI的某个等级,同时也降低了企业为了获得证书,而临时编制证据的可能性。
2 、新增了维持性评估。
在1.3版本中,区分了ClassA, B, C三种不同严格程度的评估,而在2.0中,则区分为了标杆对比评估(Benchmarkappraisals), 维持型评估(Sustainmentappraisals),评价评估(Evaluationappraisals),行动计划复评(Actionplan reappraisals)。其中标杆对比评估类似原来的ClassA评估,有效期仍然是3年。评价评估可以映射为原来B、C类评估,而行动计划评估也是原来V1.3的评估方法所有的。变化比较大的是维持型评估,维持型评估的要点如下:
(1) 维持型评估最少2个评估员,包含评估师。
(2) 有效期为2年。
(3) 1/3的实践域要深入分析,其他可以概要分析。如果是高成熟度的评估,则包含高成熟度实践的实践域是一定要深入分析的。
(4) 评估时对上一次评估发现的弱项(实践)要考察。比如某个实践有弱项,则下次维持型评估时,该实践要深入分析。这是除1/3深入分析的PA之外附加的。
(5) 最多可以连续做3次维持型评估。即第1次标杆对比评估,第2、3、4次可以做维持型评估。第5次就必须是标杆对比评估了。
(6) 最新的维持型评估结论将替代上次评估的结论。如果上一次评估的到期日是2022年5月1日,是成熟度等级3级,而该组织在2022年的1月1日完成了一次维持型评估,评级为成熟度等级2级,则该组织的等级就是2级,原来的3级结论作废。
(7) 最新的维持型评估将中止上次评估的有效期。如果上一次评估的到期日是2022年5月1日,该组织在2022年的1月1日完成了一次维持型评估,则该组织的评估有效期就是2024年的1月1日。
(8) 不能比上一次评估的级别更高。即如果上一次评估是3级,维持型评估不能是4、5级。如果要评4、5级,必须是标杆对比评估。
(9) 满足了以下条件才可以做维持型评估:
i) 抽样因子类型和上一次评估相同或是其子集。
ii )抽样因子取值和上一次评估相同或是其子集。
iii) 评估的单位不变或是其子集。
iv) 至少有一个项目是上一次评估延续过来的。
v) 模型范围和上一次评估一样或更小。
如果成熟度等级原来是3级,维持型评估可以是2级或3级;如果原来评估了SAM,维持型评估也要评SAM;如果原来是对10个PA评价能力等级,维持型评估可以减少2个PA或多个PA。
3、 一次评估可以包含多个视图。
每个组织在评估时,可以选择CMMI研究所预定义的视图,也可以自己定义视图。自定义视图时,可以自由组合预定义的视图,也可以自己选择实践域组合视图。评估选择的视图是针对组织的商业目标而来的,是针对组织的业务能力而来的。这种自由组合的视图,更有针对性,同时也降低了组织的评估成本。
4、 每次评估要提交性能报告。
性能报告是一组度量数据,是由被评估组织自定义的、表征组织的过能能力的数据,这组数据并非由CMMI研究所指定,不会被公开、不会用于横向比较各个组织的差别、也不会用来评价被评估组织的能力高低,仅仅是提供给Sponsor的数据。帮助Sponsor客观了解过程改进带来的组织性能的变化,并提醒Sponsor要通过定量数据关注组织的能力变化。
5、 评估组成员要通过认证考试。
在1.3版本的评估方法,只要求ATM成员接受了Introductionto CMMI的培训和评估方法的培训,在2.0版本中要求ATM成员在完成两天的模型基础课程后要通过认证考试,督促ATM成员要真正学习并掌握CMMI模型,理解了CMMI模型的要求,能够和被评估组织的实际做法建立一个有效的映射,从而保证评估的价值。而后再参加一天关于DEV模型的培训课程。
七、结语
随着时间的推移,万物都在变化。作为系统工程界最重要的、适用范围最广泛的CMMI模型也在积极拥抱变化,随需而变,它定义了whatto do 的框架。而实现这个框架的Howto do ,企业具体的实践做法更是百花齐放,不断创新,这也推动了CMMI模型的升级演变。CMMI V2.0模型适用的组织范围更广、覆盖了组织的更多业务领域与关注点、更加通俗易懂、评估成本更低、并且对Howto do的做法包容性也更强。这些新的变化将会大大延长模型的生命周期,在推动组织进行过程改进的同时,也将为被评估的组织带来更大的商业价值。