期许伟大-基于CMMI的过程改进之道探索

原文作者:上海科维安信息技术顾问有限公司QAI China 何丹博士

CMMI主任评估师

一、引子    

近年来,由美国SEI  (软件工程研究所)开发的SW-CMM  (软件过程能力成熟度模型) 模型以及改进后的CMMI (能力成熟度模型集成)模型得到了国际上的广泛认可。因此有越来越多的软件和IT公司已经或开始采用这些模型来开展相应的过程改进工作,来提高过程能力的 成熟度,以期使公司的软件或系统开发工作更加高效,更具有国际竞争力,这似乎已经成为一种潮流。很多公司都怀着这种美好的愿望开始了过程改进的旅途。

作为过程改进的咨询顾问,我看到了一些非常成功的案例,但同时也看到了很多失败、或至少是并不十分成功的结果。不少公司在过程改进之路上蹒跚而行,一路走 来,一路泄气,一路放弃,一路逃避,那海市蜃楼般的愿望逐渐随着改进阻力和挫折感的增加而逐渐褪去。过程改进在一片人云亦云的潮流中浑浑噩噩起步,又在一 些责备声中浑浑噩噩地销声匿迹。

真正的原因在哪里?我不禁问自己,能够总结一些经验和教训让这些公司少走一些弯路?虽然这些经验教训可能并不完整、可能并不完全正确,但希望能够抛砖引玉,激起更多的人来进行讨论和反思。

二、清晰的过程改进目标

走访过很多实施过或正在实施CMM 或CMMI 模型的公司,当我问到采用CMM/CMMI 进行过程改进期望达到的目标是什么,很多公司的高层都会告诉我,目标是多少个月后达到 CMM 或CMMI X  (2-5 )级。这不是过程改进的目标,更准确地说这应该是里程碑。真正的期许伟大目标应该是和公司业务目标紧密联系的:如客户满意度提升、员工满意度提升、缩短开 发周期、降低开发成本等,根据各个公司的现状和业务特点各不相同。只有明确这样的目标,再根据公司的强项和弱项分析,才能对改进优先级进行设定,否则员工 看不到切实的改进成果很容易造成士气低迷,高级管理层看不到公司获得切实的收益很容易放弃,公司这艘航船很容易在CMMI过程改进中迷失方向。(真正的目标只有一个,就是为企业带来实实在在的价值,价值的直接体现就是利润的增加或成本的降低)

CMM模型业界著名公司的优秀实践大全,共316条,而CMMI模型更是扩充到460 条。对于如此庞大的过程改进模型,如果不根据公司特点进行优先级排序,很容易在过程改进中失去重点,从而只见树木、不见森林。

即使公司有些地方和CMM和CMMI的要求可能有不小差距,但如果这些方面的改进对公司目前的业务目标支撑不强,也许并不需要马上进行改进。所有的改进要 符合压强原则,先集中力量在某些对业务目标支持比较强的方面进行突破。但某一方面的缺点和不足,可能当前并不一定要花大力气提高,否则有可能使你失去自 我。

过程改进中很多人都采用木桶原理,也就是改进最短的木板,因为木桶盛水的高度是由最短的木板决定的,所以自然考虑到改进弱点。但木桶原理是有其适用背景 的,关键要看目标是什么?如果木桶不是用来装水,而是用来烧火,那么长短就无所谓了。有些情况反而要首先改进自己的强项,这样才能扬长避短,更好地支撑业 务的发展。

基于CMM 或CMMI 进行过程改进最成功的几个公司在过程的改进中有很多创意,如:某著名公司过程改进中并不是按部就班地根据2 级-3 级-4 级-5 级这个顺序逐步进行改进的, 而是先改进了5级的一个过程域 – CAR(Cause Analysis and Resolution),因为80%问题的是20%根源造成的,CAR 正是用来分析和解决这20%根源的方法,因此对公司的投入产出比最大,应该先行改进。

因此过程改进前没有明确目标和业务方向,则很难按照公司业务特点来诠释CMM/CMMI 模型,就很可能造成削足适履,给改进带来挫折乃至失败。

三、过程成熟度就是承担责任和使命的能力

在工作中,我们经常可以听到过以下的借口和声音:

“我们不执行开发流程,是因为我们项目比较特殊……”

“我们没有执行这些规范,是怕这些规范束缚了我们软件人员的创造力……”

“CMMI 和ISO 都是些没用的东西,所以我没有执行……”

虽然不少公司耗费了财力物力制定了很多流程和规定,但却没有有效的执行。在生活中实际上我们也能听到类似的声音:

“我虽然计划每天早上跑步,但是……”

“我计划每天都要读书,可没有时间……”

任何流程、规范等在初次制定时,都不可能很完美,需要在执行中不断发现问题,解决问题,逐步优化流程,才能使流程具有新陈代谢的生命力。但我们每个人都或 多或少地习惯了过去的开发习惯和生活习惯,不太愿意被改变,也在惯性和惰性的驱使下不太愿意去尝试改变,因为这样有可能会暴露自己的弱点和不足,不够安 全。

著名的心理学家马斯洛说:如果你有意避重就轻,去做比你能力所能做到的更小的事情,那么我警告你,在你今后的日子里,你将是很不幸的。因为你总是逃避哪些和你的能力相联系的各种机会和可能性。因为逃避,你在不知不觉中失去了激发你真正潜力的各种机会。

表面看来,我们降低了风险,处于安全区,但却把自己最宝贵的能量束缚了起来,不停地说服自己降低对自己的标准,以为这样是对自己负责,殊不知不把生命的能 量发挥到极致才是对自己最大的不负责任。国内一位杰出的培训师说过:“生命是一支铅笔,而不是钢笔,铅笔虽然可以涂改,但只有一次生命。而钢笔可以重新注 入笔墨。但铅笔的生命只有一次,不要允许自己多次地涂改。”我们多少次给了自己理由允许自己滑坡,我们有多少生命的资本供我们挥霍。

过程能力成熟度实际上是承担责任和使命的能力,成熟度和年龄没有太多的关系,一个在苦难中长大的孩子在弱冠时就可以顶天立地,一个在蜜罐中长大的人,可能在满头白发时还在颓废中不断地放弃。

让我们成为烛光而不是法官,成为流程执行和改进的楷模去领导和影响他人,而不是成为一个指手画脚的批评者。

四、流程的创新和裁减    

有一次一个软件开发成熟度较高的国外公司质量经理很自豪地告诉我:“我们公司过程体系已经非常成熟,以至于近两年来都没有人能提出改进建议。”我怔怔地看着他,说不出话来。

公司制定流程的目的是希望把已有的知识和经验固化下来,形成知识和经验的重用,以更好地支撑公司的业务。但一个公司的业务在不断发展变化,一成不变的流程 如何能够适应不断变化的业务呢?如果一个流程体系不再变化,也许是没有人再有兴趣去使用它,也许是使用流程人已经形成了思维的定式,陷入一个次最优状 态。

在国外一个著名的CMM5 级公司,一位项目经理在项目启动时制定了项目计划,送交高层审批,受到了高层的严厉批评:“根据你的计划,表明你基本上是要完全按照公司的流程去开发项 目,世界上没有两片完全相同的树叶,每个项目都有不同的特点,如果你没有对公司流程进行裁减和创新,说明你没有找到项目的特点,也不能把项目的特点真正发 挥出来给公司创造最大的价值。”

和国内外一些著名公司或研究机构的一些人交流过之后,发现有些人非常的平庸,没有太多思想和创造力。不禁问自己:为什么在这么伟大的旗帜下,居然会滋生出如此的平庸?是否过程体系过于完善,使庸人不再思考,只会完全按照流程照猫画虎。

爱因斯坦在16岁时很贪玩,有好几门功课都不及格。一天他正要和朋友们去钓鱼,父亲拦住了他,问他为什么不用功补习功课?他告诉父亲其他一起去钓鱼的同学也不及格。父亲提醒他:你是独一无二的,不要复制别人的平庸。爱因斯坦的智慧在那一刻被猛然点醒,我不需要按照别人平庸的生活方式(流程)来生活,我需要创新。从此一个全新的爱因斯坦出现了,给世界带来了巨大的精神财富。

过程体系是知识和经验的积累,对它80%的重用,另外有20%的创新和裁减,既能保证过程体系的稳定,从而给公司带来巨大价值,同时又能使得它有着强大的生命力,从而拒绝平庸。

五、流程的心  

在一个培训中,我把培训学员分成几个小组,分别使用同样的流程来做一个练习,结果一个带着激情的小组和一个带着敷衍态度的小组使用流程的效率和结果有天壤之别。这时我想起一位国外著名管理大师的话:过程改进失败只能有两个原因,其中最重要的原因就是缺乏激情。

流程如同是一个躯壳,它的灵魂是流程使用者的心。一个优秀的流程远没有一颗热情的使用流程的心重要,因为只要有这颗激情洋溢的心,这个流程就会持续改进,这个流程就会焕发出强大的生命力。

工作和生活都是心灵的艺术,只有心灵高尚的人,才能把它们的美发挥到极致。梵高作画时,由于激情,普通的法则和规律被完全忽略了,从而达到艺术的最高境 界。贝多芬在世时,一位男爵对贝多芬的音乐评价:他的钢琴技术并不准确,但人家完全沉浸在他的思想里,至于表现思想的手法,没有人加以注意。

中国足球,有再好的流程和理念都可能无法使其改进,也无法使它真正昂首走向世界,因为不少中国球员都只有一颗在大染缸中浸泡过的粗糙的心。海伦.凯勒(Helen Keller),一个幽闭在盲聋世界里的人,竟然毕业于哈佛大学,并用生命的全部力量处处奔走,为残疾人建起了诸多慈善机构。海伦说:“忘我就是快乐。因而我要把别人眼睛所看见的光明当作我的太阳,别人耳朵听见的音乐当作我的乐曲,别人嘴角的微笑当作我的微笑。”海伦给我们一个启示:用心去感悟世界,世界便是光明的。

因此心在哪里,成就就在哪里。心在流程,就会持续改进出最适用的流程,是心赋予了流程以灵性。

六、谦虚 -  流程改进之魂 

有些公司在开始基于CMM 或CMMI来改进流程体系时,认为以前基于ISO标准制定的流程完全没有指导意义,因此彻底放弃了以前的流程。后来,发现6SIGMA 又非常流行,又开始觉得CMM 和CMMI 过于迂腐,因此再次放弃CMMI 流程而转向定义6SIGMA 流程。还有些公司因为人事的变动,每次负责人的更换都要推翻以前的流程体系。经过几年的过程改进,发现自己还是在原地踏步,因为每一次改进都是几乎全面的放弃,而不是扬弃,这样永远在较低水平振荡,无法超越。

还有很多公司的不少软件项目实际上失败了,或部分失败了,大大延期、超支、质量低下、客户不满意等,项目开发过程中充满了焦虑、争吵、无休止的加班?? 一个知识型的公司最大的资产就是知识和经验,而最容易采得知识金矿的时候就是项目结束点和重要里程碑点,但我们却很少花精力在这些点去反思和总结,因为我们有一个美妙的理由:失败是成功之母,实际上如果没有对失败的反思和总结,失败永远无法成为成功之母。台湾著名人士陈安之先生说:如果每月我们都能反思一次,一年就增加了12次成功的机会。若每天反思,就给自己增加了365次成功的机会。

但要反思、要扬弃而不是完全放弃,就需要借助于一位伟大的老师:谦虚。以谦卑的心向自己和同仁成功的经验以及失败的教训学习,以开放的心态向业界的经验教 训、过程改进模型和标准学习。基于一颗谦虚的心,我们像吃饭一样汲取着养分,只吸收有用和有价值的东西,不再苛求那些现有流程中不正确和不完美的地方,不 再苛责书本上的一些错误,让工作和流程在扬弃中一次次不断地趋于完美。

七、让改进成为一种习惯

我在给一个著名的跨国公司做CMM 5 级评估时,几乎每个开发人员都告诉我缺陷预防工作的开展给他们的工作带来的帮助和改进,他们脸上那种欣慰的神情告诉这里改进已经形成了一种文化和习惯。

美国著名的质量大师戴明博士在二战结束后把他的质量理念带到日本,对日本的经济腾飞起到了非常关键的作用。50年代初期他在给日本很多公司总裁(参加培训的人员包括松下幸之助、盛田昭夫等)做培训时提出希望:每一个员工、每一个部门、每一个企业每天进步1%。80 年代他把质量理念再次带回美国,福特汽车经过两年的改进,最后获得了60亿的净利润。

每天进步1%,其实是要求让改进成为一种习惯。而习惯的形成需要对流程的有效执行,流程就像戒律,对流程的执行会养成人们的习惯,最后融入文化和品格。

现代铁轨宽度4 英尺8 英寸,实际上是由有轨电车设计师设计的。电车标准是来自于马车。而马车有来自于几千年前的古罗马人战车,而战车的宽度是牵引战车两匹马臀的宽度。也就是 说,几千年前两匹马臀的宽度决定了今天我们使用的科技。所以不管是做什么事情,如果我们当初选定的路径是正确的,就会进入良性循环轨道。而如果原来是错误 的,则很可能会逐渐下滑,一旦人们做了某种选择,就好比走上了一条不归之路,惯性的力量会使这一选择不断自我强化,并让你轻易走不出去。这就是著名的路径 原理。

美国科学家发现,一个习惯的养成需要21天的时间,果真如此,从效率角度分析,习惯应该是投入产出最高的了,因为一旦养成,终身受益。对一个公司也是如此,如果让过程改进形成一种习惯,那么将是投入产出最大的决策了。

著名高僧、音乐家、教育家弘一法师(李叔同)对好人的定义是:好人就是一天比一天更好的人。那么按照这种逻辑,好的团队就是一天比一天好的团队,好的公司就是一天比一天好的公司,也就是把改进变成习惯的公司。

我们每个个体、团队、公司都需要长大,需要在螺旋式上升中实现一次次实现回归,一次次在改进中实现凤凰涅槃,让我们在一骑绝尘的改进中给我们的后来者展示一个优美的马臀……共同期许一个个伟大员工、团队和公司的诞生。

时间: 2024-10-12 12:31:53

期许伟大-基于CMMI的过程改进之道探索的相关文章

CMMI过程改进反例

?? 最近一直在看CMMI的资料,越看觉得越有意思,今天看到过程改进的时候,突然想起来之前所在的公司发生的过程改进相关的事儿来. 公司通过CMMI3级认证之后,PMO部门经理(公司还有质量管理部门经理.也有EPG)说要在下次复审之前把18个过程域的改进工作做好,平均一年6个,上半年3个,下半3个. 于是,某一天,该部门经理把一个刚毕业半年的小姑娘喊到跟前说:"去写一个关于MA的过程改进提案."可怜小姑年连MA是什么都还不知道就硬着头皮接下这个活儿了,先找到MA,然后把MA的资料打印了厚

软件工程过程 第7章 软件工程过程改进

1.软件工程过程评估模型描述了作为有效过程特征的元素的结构化集合.这些评估模型提供了:P201 过程改进的出发点 业界过去经营的结晶 共同的语言和共享的构想 活动优先次序的框架 2.基于软件工程过程评估模型进行过程改进可以帮助组织或个人建立过程改进的目标和优先次序,协助改进过程,并为确保建立一个稳定.有能力的以及成熟的过程提供指南.P202 ISO 9001 CMM/CMMI ISO/IEC 15504 (SPICE) 3.软件质量管理体系由三部分要素构成:软件质量管理体系的框架.生存期基本活动

轻量级过程改进之需求管理

需求管理在于管理产品研发过程中的客户需求,建立项目相关干系人对需求的共同理解,维护需求与所开发产品之间的一致性,并控制需求的变更.需求管理的重要性不言而喻,在前面讲到的项目启动.项目计划以及接下去要讲的项目监控这几个改进域中,客户需求都是我们开发工作的输入和基础,研发团队存在的意义也是围绕着客户的需求,以满足客户需求.提高客户满意度为工作的目标,项目管理团队更是如此.本文主要阐述在项目需求管理过程中涉及的主要规程.可能存在的问题.分析这些问题并提出相应的改进措施. 一. 需求管理的规程 关于需求

测试计划及过程改进

目录 软件测试计划的概念 制定软件测试计划的好处 谁来负责制定软件测试计划 编写软件测试计划的时间 软件测试计划的要素 软件测试计划模板 软件测试计划维护与评审 什么是CMMI CMMI的级别 CMM五级模型 什么是ISO 什么是ISO9000 CMMI和ISO9000的比较 软件测试计划的概念 一个叙述了预定的测试活动的范围.途径.资源及进度安排的文档.它确认了测试项.被测特征.测试任务.人员安排,以及任何偶发事件的风险. 制定软件测试计划的好处 项目经理.高层经理等相关领导能够根据测试计划做

轻量级过程改进之综述

轻量级过程改进(Light-weight process improvement,LPI)是一种针对中小型团队软件研发过程中普遍存在的重技术轻管理.研发管理缺乏规范.过程改进理念淡薄等现状和问题而整理的一种"软件过程改进方法和规范".有众多轻量级过程改进域组成,主要对中小型团队持续地改进其软件过程能力提供一些參考,内容组织上尽量保持其通用性,但个人水平和经验有限,非常多改进域可能仅仅局限于特定团队和场景,须要大家依据各自团队的现状做裁剪和扩充. 一.轻量级过程改进 轻量级过程改进參考了

轻量级过程改进之绩效管理

绩效管理是对团队成员进行工作评估和激励的过程,虽然很多时候会由人事部门进行员工的绩效管理,但对研发团队而言,技术人员的绩效管理很难把控,所以很多团队往往对绩效管理避而远之,采用管理层主观判断的方法进行绩效把控:有些团队虽然会做一些绩效管理,但只是关注于绩效考核,而忽略绩效背后的工作计划.评估.激励以及过程改进.个人认为研发团队的绩效管理是一项很有挑战性的工作,但难度再大首先还是要理一下思路,尤其作为轻量级过程改进的一环,绩效管理的目的并不是说能够达到很完善的程度,而是先做到60分,然后通过团队整

轻量级过程改进之项目计划

项目计划的目的包含两个主要方面,对内是为项目的研发和管理工作制定合理的行动纲领,以便所有相关人员按照该计划有条不紊地开展工作:对外是为客户提供项目的统一视图,确保所有干系人能够根据计划进行工作配合.进度同步并最终提高客户对项目实施进度的满意度和认可度.本文主要阐述在项目计划过程中涉及的主要规程.可能存在的问题.分析并提出相应的改进措施. 一.项目计划的规程 项目计划过程涉及面很广,按照集成项目管理理念,项目计划除了项目实施计划之外还需要集成各种子计划,如<配置管理计划>.<质量保证计划&

在CMMI推广过程中EPG常犯的错误(转)

本文转自: http://developer.51cto.com/art/200807/86953.htm 仅用于个人收藏,学习.如有转载,请联系原作者. ---------------------------------------------------------------------------------------------------------------------------- 1对模型研究不够深入 模型是多年软件工程经验的总结,里面的每一句话,每个例子都不是随便写上去的

轻量级过程改进之需求开发

需求开发是指通过对用户需求进行分析,开发产品需求的过程.需求开发在于把面向用户的需求转换为面向研发团队的需求的过程,回答研发团队"我们要做什么样的产品"的问题.需求开发直接面向研发团队,是用户需求传递到研发团队中的必要一环.本文主要阐述在项目需求开发过程中涉及的主要规程.可能存在的问题.分析这些问题并提出相应的改进措施. 一.需求开发的规程 在轻量级过程改进系列的上下文中,关于需求管理和需求开发的区别和联系已经在"需求管理"这一改进域中有明确说明,这里不再展开.该上