CMMI 2.0新瓶装旧酒,贩卖假酒更难了

2021-03-02 09:00:00
晏瑞宇
  • 访问次数: 1221
  • 注册日期: 2020-05-27
  • 最后登录: 2024-04-16
  • 我的积分: 2525
  • 门派等级: 无门派
看到这个标题,新瓶装旧酒?可能有很多人不同意,尤其是那些依靠CMMI吃饭的人。但其实没必要畏惧,实事求是,客观认真的对待比什么都强。如同“茅台”,即便换了n多次新包装,酒依然是好酒,CMMI亦是。

在展开这个话题前,首先阐明下我心目中何谓“新瓶”?何谓“旧酒”?何谓“假酒”?

“新瓶”指新的包装、新的名称、新的表现形式、新的内容组合方式、新的载体等外在的那些东西,“旧酒”指实际内容(如需求开发与管理、同行评审、质量保证等),“假酒”指通过造假、虚构证据、假冒组织已达到某个成熟度等级,骗取证书的勾当。

先说明下:由于CMMI研究院对CMMI V2.0设置了版权限制,不再像V1.3那样免费提供,所以尽管CMMI V2.0已经正式发布1年多了,但网上能找到的2.0资料仍然非常有限。目前除了CMMI研究院网站(cmmiinstitute.com)上商业气息浓郁而内容非常有限的官文介绍外,在网络上较为有价值的就只有麦哲思公司总经理任甲林的“我说CMMI2.0”系列、CMMI高级主任评估师EdmondSung的“用实例学CMMI V2.0”系列,以及我的老校友丛斌博士在微信公众号“老丛讲桌”上发布的CMMI2.0相关文章,等不多的资料。本人2004年开始接触CMM V1.1,那时所在公司正在做CMM的评估和认证,本人是参与者之一,并负责其中一个事业部的CMM规范的落地执行检查。CMM模型虽然后来于2005年被CMMI替代,但CMM的主要内容被CMMI继承了,事实上CMMI1.0的主要内容就是来自CMM 2.0的草稿版。从CMM V1.1,到CMMI V1.3,再到现在的CMMI V2.0,弹指一挥间,至今已过15年,期间本人参与的CMMI相关业务虽有中断,但知识却未有断层。CMMI 2.0发布之后,能找到的2.0资料非常有限,故此本文是基于对CMMI的了解,谈谈笔者对CMMI 2.0的认识和感触。

一、“酒”还是“好酒”

无论是20多年前SEI研发的CMM,还是现今ISACA新推出的CMMI2.0,都必须要承认,历经20余年,“酒”还是“好酒”。至于网络上有人抱怨说“CMMI绝对是软件公司的特大毒瘤!”,那绝对是对CMMI的误解,是“喝”了“假酒”的人对“好酒”的误解。

丛斌博士在2018年曾写过一篇“CMMI三十年”,回忆了卡内基梅隆大学软件工程研究院(CMU-SEI)和CMM/CMMI的诞生及其发展历程。文中提及,美国军方(美国国防部,departmentof defense,简称DoD)花数亿美元在卡内基梅隆大学(CarnegieMellon University,缩写CMU)成立软件工程研究院(Software Engineering Institute,缩写SEI)的主要目的是建立一个包括高校研究人员和业界专家的技术团队,加快对新技术和新方法的研究使用,以改进执行关键任务的软件的质量,并建立一个软件工程优秀实践的标准。即美国军方需要借助社会的力量解决如何保证软件供应商能够在预算内,按进度计划,开发出高质量软件的问题。而CMM和CMMI正是SEI前期最重要的研究成果之一。文中也提及CMMI之父Watts Humphrey当初创建CMM的基本依据就是“软件产品质量在很大程度上是由其开发和维护过程决定的”这一简单理念。丛斌博士还提到CMM模型的另一个重要来源是Ron Radice及其团队在IBM的一些有效实践,Radice是Humphrey在IBM时的下属,后来追随Humphrey来到SEI,他整理了覆盖软件开发生命周期的12个过程以及11个包含过程、方法、实践、工具、变更控制、数据收集及使用、质量控制等的属性。这些都被用来定义CMM模型。后来,随着军方需求范围的扩大,CMMI替代了CMM模型,将CMM从软件扩大到系统,覆盖各类产品开发。

自2001年敏捷宣言诞生以来,以敏捷、精益、DevOps等为代表的软件新开发模式对CMMI产生了巨大的冲击,CMMI V1.3版本也有不少需改进的东西。经过几年的努力,CMMI 2.0版本才于2018年3月发布,但CMMI 2.0的基本理念从未变过。“改进的价值是通过商业价值体现的,基于CMMI的改进必须是价值驱动的!”丛斌博士如是说。

一个投资巨甚,聚合了业界精英智慧和最佳实践,致力于改进软件开发和维护过程、提高研发效率和交付质量的模型,怎么可能是“软件公司的特大毒瘤”呢?那些抱怨CMMI的人,请先了解CMMI的初衷,请先验证自己执行的工作内容是不是在致力于帮助组织改进软件过程。如果不是,那你“喝”到的就是“假酒”。

二、“新瓶装旧酒”是事实

我知道,CMMI V2.0官方发布2.0的时候特意阐述了“CMMI V2.0的关键改进”(CMMI V2.0 Key Improvements)。任甲林老总在“随需而变,拥抱CMMI V2.0新时代”一文中也总结了CMMI模型从1.3版本到2.0版本的五大变化,包括:思想的变化、关键术语的变化、结构与描述方式的变化、过程域的变化、评估方法的变化。丛斌博士的“揭开CMMI2.0的面纱”亦描述了CMMI从1.3到2.0的五个重要变化及改进:模型架构的变化、使用更加通俗易懂、培训的变化、评估的变化、高成熟度的变化。

但是,依我目前看到的资料,细细分析,并未发现2.0的内容上有大的变化(譬如新增、删除、或者本质上的修改)。如同本文开篇所言,此处所提及的“酒”指CMMI的实际内容(如需求开发与管理、同行评审、质量保证等),也就是CMMI的过程域(V1.3的叫法)或者实践域(V2.0的叫法)。

为了对比,笔者以DEV为例,将CMMI V1.3开发模型的22个过程域与CMMI V2.0开发基准视图的20个实践域放到一起,画了一个映射图,如下。


从图上可以看出,CMMI DEV V1.3中的22个过程域(Process Areas)到CMMI DEV V2.0中的20个实践域(Practice Areas),其中有超过一半的过程域(12个Process Areas)保留了原来的名字(如CAR、CM、DAR、OT、PI、SAM、TS等)或者对名字做了微调(如PMC,PP,RSKM,PPQA等),另外不足一半的过程域(10个Process Areas),则是做了合并(如MA、OPM、OPP、QPM,REQM、RD、VAL、VER)或者剥离成为新的实践域(如从PP中剥离出EST、从VER中剥离出PR,将所有过程域中共性的目标和实践剥离出来独立为GOV和II)。上图中标识的新增,仅仅只是2.0在实践域名称上的新增,内容方面并未有新增。在2.0的实践域中不断出现的“意图(Intent)“、”价值(Value)”的表述,我认为也并非是内容上的新增,或者本质上的变化,只是突出显示了2.0更加关注过程改进中的价值体现。而1.3同样关注价值,只是没有突出表述而已。

我想,也正因为是2.0内容上没有质的变化,“酒”才能还是“好酒”,这也是保证2.0“初衷不变”的基础吧。CMMI V2.0真的只是一个“新瓶”,“酒”(V2.0的内容)还是“旧酒”(V1.3的内容)。

三、"新瓶装旧酒"并不可耻

既然内容上没有本质的变化,为什么CMMI还需要2.0?

CMMI 研究院首席执行官 Kirk Botula 说:“在当今的商业环境中,所有组织必须了解自己的能力,对如何提升符合业务需求的能力以及待提升的方面进行判断,并集中资源优势进行持续的改进。CMMI V2.0 模型为这项工作提供了重要基础,帮助领导者实现性能优化,通过采用最佳实践和基准,切实高效地达成目标。”

我想,那是官话,冠冕堂皇且有些难懂。还是老校友丛博总结的大白话比较实在,他说:1.3升级到2.0的原因无非四点,1是老版本的问题已经无法忽视,2是新技术、新方法带来了完善的机会,3是新的用户需求的压力,4是升级带来的经济好处。具体出自那篇文章不记得了,但大概意思是这样的。的确,SEI自从2011年发布了1.3版本以来,已经长达7年时间没有发布更新的版本。即便SEI于2016年被ISACA(Information Systems Audit and Control Association,国际信息系统审计协会)收购了也没有发布新版本。在这漫长的岁月里,IT新技术、新方法不断涌现,波澜壮阔,敏捷、精益、DevOps运动如火如荼,CMMI再不发展,都快凉凉了。

2.0的推出,我觉得,最大也是最有价值的变化在于模型结构的变化,增加了视图(View)和场景实践(Context Specific)。海纳百川,有容乃大。2.0的这一变化,使得CMMI具有更好的灵活性和可扩展性,不仅敏捷可以装进去,将来还可以装精益、装DevOps、装金融行业、装……任何可以有场景实践(Context Specific)的新东西,哈哈,貌似无所不能了。

无论如何,发展并不可耻,即便只是发展了“新包装”,可耻的是不发展。

四、贩卖"假酒"更难了

何谓“假酒”?前面提过,指通过造假、虚构证据、假冒组织已达到某个成熟度等级,骗取证书的勾当。

CMMI V1.3的评估方式(不是评估方法),让很多违背CMMI初心而别有用心的组织、个人和机构,找到了贩卖“假酒”从中牟利的商机。国内的一些“歪嘴和尚念歪经”让一些企业老总误解了CMMI的本质,认为CMMI的价值就是一张证书、一个竞标的资质,因此认为用最小的代价获取它也并无不可。丛博说“这导致了企业老总对CMMI没有正确的期望,不愿意用公司强人介入到CMMI改进中“。

CMMI V 2.0的评估方式较1.3有很大的改变。通过随机抽样的方式选取评估项目,强调了过程改进在企业或组织中的应用实效而非只抓“典型”项目;通过提交过程改进的绩效报告(Performance Report),体现出过程改进的价值驱动原则!CMMI 2.0通过效能管理(Performance Management),直接明确要求CMMI的改进必须是痛点驱动的改进,必须识别、改进痛点问题并度量效果。2.0评估得到的最重要产出物应该是对产品开发过程全面、准确的诊断及后续具体、可操作的改进建议,和改进后的绩效报告(Performance Report)。获得CMMI V2.0的等级认证,必须要在企业或组织中全面进行CMMI的实践和应用,这让那些“念歪经的歪嘴和尚”与“买布不带尺--存心不良(量)“的企业主企图通过提早选择项目进行文档造假、虚构证据、假冒组织已达到某个成熟度等级,从而骗取证书的行为更难了。