400-800-6621
资深CMMI高成熟度主任评估师任甲林老师在前两周进行了一场主题为“你真的了解CMMI吗”的精彩直播,在直播中也对大家关心的一些常见的CMMI问题进行了答复。本文摘录了部分话题,干货满满,希望对大家深入了解CMMI有所帮助。
Q:申请CMMI评估,流程是怎样的?
A:CMMI的咨询评估流程可分为以下两种:
瀑布的做法:需要先成立一个团队专门做过程改进,一般称为EPG(工程过程组),也有人称之为卓越绩效组。然后梳理公司的实践,和CMMI做映射。看下哪些要求是已经做到的,哪些是没有做到的。映射完之后就要找How to do。识别完How to do后要通过流程、体系和规章制度将它固化下来。接下来就是在公司内部宣贯,要求大家养成习惯。等推广到差不多了,觉得可以满足CMMI要求了,就可以申请做评估了。评估师会先看看,大概了解一下水平到底怎么样,然后准备评估。
迭代的做法:每三个月做一个迭代,每一个迭代来改进一个或几个问题,通过几个迭代,自我感觉可以通过评估了,就直接申请评估。我们公司做CMMI评估,一般改进的总时间如果超过一年了,就建议公司用迭代的方式来做。
Q:CMMI评估对项目大小、数量有要求吗?
A:没有要求。
从项目规模上而言,对项目大小是没有要求的,我在咨询评估的生涯中遇到的最小的项目是项目中只有一个开发人员,以及其他兼职的QA等人员;我也曾遇到过一个项目就投入了160个人的。
从企业的规模上来讲,也没有大小之别,我做到的最小的一个公司只有5个开发人员,大的公司可能动辄上千人。
从项目数量上来讲,小的公司可能只有1个项目,大的公司几百个项目,都是可以的。
Q:商业银行的科技部门申请做CMMI需要做哪些准备工作,和软件公司有什么不同?
A:基本没有什么不同。主要区别在于商业银行会有外包,表现在银行内部的员工主要做需求、项目管理等工作,而开发、测试等工作主要是由外包团队来完成。在这种场景下,我们做评估的时候,需要把供应商管理的PA也纳进来,放进评估范围内。
Q:软硬件结合的公司怎样更好地融入CMMI的流程?
A:在软硬件公司中落地CMMI的时候,有一个较一般软件公司而言不同的地方,在于他们定义整个项目的产品研发生命周期流程的时候,是以硬件的流程为主。
比如一开始我有一个设想,先做设计,其次进行实现,然后出样机,接下来做小批量、大批量生产。所以软硬件结合的项目在落地的过程中,与纯软件的项目来比较,最大的不同就在于,软硬件结合的项目是以硬件为主定的生命周期,并且从总的生命周期上来讲,这是一个大的瀑布,软件的生命周期实际是附属在硬件的生命周期上的。在这种情况下,其中软件的部分也可以采用迭代的方式来做,也就是说在整个大的生命周期中,将某一段采用迭代的方式来实施。
如果我们把硬件纳入进来,其实硬件的规模估算和软件的规模估算不一样,硬件的验证、确认和软件的验证、确认又不一样。这些地方会从技术方面有一些差别。但如果我们把主流程统一,剩下的部分其实会比较好处理。
Q:硬件的规模如何度量?
A:如果我们设计一个板子,那板子上面新器件的个数、管脚的数量、板子的层数、板子面积(台式机的主板和手机的主板)、通风口的位置等等,这些因素都会影响工作量。
我们为什么要度量规模?其实是为了估算工作量。所以从本质上来讲,这需要我们看在整个过程中,有哪些因素影响了我们的工作量。我们有一个客户,他们通过度量数据证明管脚个数和工作量是不是强相关的,如果是强相关,可以用管脚个数来代表规模。
那么硬件有没有一个行业度量的方法?据我了解,还没有一个大家都认可的规模度量,是需要大家在实际中不断摸索的。
Q:CMMI不提供流程指导,它是不是一个对其它流程辅助补充的类似实践库形式的存在?
A:CMMI就是一个实践库,里面的实践没有一个严格的先后顺序。比如说用RUP定义流程、基于Scrum来定义流程都是可以的,只要能覆盖到CMMI的要求就可以。
Q:CMMI2.0Dev中20个核心实践域的关联关系可以详细讲讲吗?
A:20个PA可以分为四大类:
第一类是(Doing)工程类:Doing类实际上映射为工程活动,需求设计、编码测试、同行评审……
第二类是(Managing)管理类:比如做估算、做计划跟踪、做风险管理。管理类需要再细分,管人、管事、管风险、管不确定性……
第三类是(Enabling)支持类:比如决策分析,原因分析……
最后一类是(Improving)改善类:比如EPG,按照PDCA循环持续改进。
所以20个PA可分为这四大类,这四大类基本把开发有关的活动都覆盖到了。
Q:CMMI的成熟度级别如何定义的?各个PA域都有级别的区分吗,还是某个级别必须实现某些PA域?
A:在CMMI2.0中,它定义了每个PA都有1级、2级、3级、4级、5级的实践。有的PA最高能到5级,有的PA最高到4级。CMMI1.3将PA划分了等级。在CMMI2.0中,是把实践划分为了等级。实际上是更灵活了。
在企业当中进行评估的时候,也是分了两类等级。一类是成熟度等级,还有一种是能力等级。能力等级在我们实际当中遇到的评估比较少,能力等级评出来的PA最高是到3级。
能力等级和成熟度等级的差别在哪呢?成熟度等级就像是套餐,按照已有规定来做。能力等级更像你在单点,就想吃这个菜,我觉得这个做不好,就专门评这个PA。能力等级最高到3级。
Q:假如不用任何流程,只有最小集合的实践,这几个实践做得也挺好,能通过CMMI评估吗?
A:是不行的,想要通过CMMI成熟度评估的要求是目前公司的流程覆盖了CMMI的要求。如果说参考了CMMI,我有实效,这个说法是可以的。其次,我们要注意为什么要求有流程?
第一点我们要注意的是,在公司内部,我们只要有一个固定流程来做事情,同时定义了这些活动的先后顺序,那么这个流程就是客观存在的,只不过区别在于这个流程是可重复的流程还是一次性流程。
第二点就是这个流程是只存在于头脑中还是已经文档化了?如果我们的流程不需要文档化,就能够养成习惯,形成一个固定套路。比如说我天天做西红柿炒鸡蛋,这个流程并没有规范的文档,但我已习惯性地按照第一步加盐、第二步加糖的步骤来进行,那这就是约定俗成的流程。但如果我想让不管是谁来做都能做出一个味道的西红柿炒鸡蛋,那这就会有一个问题:每个人的流程不一样,炒出来菜的质量也会不一样。那我们怎样来保证这个味道一样呢?那就需要文档化的流程。文档化流程的价值在于把我们的经验教训汇总起来,形成一个固定套路,让成功可重复。
Q:CMMI从2级做到3级给公司带来的最大价值是什么呢?
A:第一点是更完备了。2级只侧重于项目管理,3级则把工程活动也包含进去了,包括需求、设计、编码、测试等规范。同时,3级也建立了组织级的持续改进流程。
第二点是从项目级的水平提升到了组织级的水平。如果你是项目经理,把2级的这10个方面都做到,就到达2级水平了;3级则是整个公司统一定义的流程,如果把3级的20个方面都做到,就到达了3级的水平。
Q:CMMI4、5级的量化级如何开展?
A:回到最初CMMI2.0的要求上来,就是围绕目标做改进、围绕目标采集数据,分析数据中隐藏的分布规律、因果规律。分布的规律说明了我们当前的水平是什么样的;因果规律,刻画了我们为什么是当前这个水平,影响因子是什么。然后我们通过找到影响因子去做出改变。做CMMI4、5级,是要通过数据让帮助我们来去巧干,帮助我们四两拨千斤。
3级的完备性已经到顶峰了,4、5级是用数据来刻画公司的现状。数据可以让你清楚什么是对的,什么是有价值的,什么是效率高的……这就是巧干。
Q:CMMI是评估公司还是评估项目呢?
A:CMMI评估的是公司下的部门(从部门里抽某些项目来参与评估)。CMMI的结论一般是某某公司某某部门通过了CMMI成熟度3级评估。同时,在评估部门的时候,不管是大部门、小部门,还是单部门、多部门都可以进行评估。
Q:CMMI评估,一个部门通过可以代表整个公司通过了吗?
A:不可以,还是按照部门来评估的。如果公司有10个事业部,只给一个事业部做评估,通过的话只代表该事业部达到某一水平,无法代表其他9个事业部都到这个水平。
资深CMMI高成熟度主任评估师任甲林老师在前两周进行了一场主题为“你真的了解CMMI吗”的精彩直播,在直播中也对大家关心的一些常见的CMMI问题进行了答复。本文摘录了部分话题,干货满满,希望对大家深入了解CMMI有所帮助。
Q:申请CMMI评估,流程是怎样的?
A:CMMI的咨询评估流程可分为以下两种:
瀑布的做法:需要先成立一个团队专门做过程改进,一般称为EPG(工程过程组),也有人称之为卓越绩效组。然后梳理公司的实践,和CMMI做映射。看下哪些要求是已经做到的,哪些是没有做到的。映射完之后就要找How to do。识别完How to do后要通过流程、体系和规章制度将它固化下来。接下来就是在公司内部宣贯,要求大家养成习惯。等推广到差不多了,觉得可以满足CMMI要求了,就可以申请做评估了。评估师会先看看,大概了解一下水平到底怎么样,然后准备评估。
迭代的做法:每三个月做一个迭代,每一个迭代来改进一个或几个问题,通过几个迭代,自我感觉可以通过评估了,就直接申请评估。我们公司做CMMI评估,一般改进的总时间如果超过一年了,就建议公司用迭代的方式来做。
Q:CMMI评估对项目大小、数量有要求吗?
A:没有要求。
从项目规模上而言,对项目大小是没有要求的,我在咨询评估的生涯中遇到的最小的项目是项目中只有一个开发人员,以及其他兼职的QA等人员;我也曾遇到过一个项目就投入了160个人的。
从企业的规模上来讲,也没有大小之别,我做到的最小的一个公司只有5个开发人员,大的公司可能动辄上千人。
从项目数量上来讲,小的公司可能只有1个项目,大的公司几百个项目,都是可以的。
Q:商业银行的科技部门申请做CMMI需要做哪些准备工作,和软件公司有什么不同?
A:基本没有什么不同。主要区别在于商业银行会有外包,表现在银行内部的员工主要做需求、项目管理等工作,而开发、测试等工作主要是由外包团队来完成。在这种场景下,我们做评估的时候,需要把供应商管理的PA也纳进来,放进评估范围内。
Q:软硬件结合的公司怎样更好地融入CMMI的流程?
A:在软硬件公司中落地CMMI的时候,有一个较一般软件公司而言不同的地方,在于他们定义整个项目的产品研发生命周期流程的时候,是以硬件的流程为主。
比如一开始我有一个设想,先做设计,其次进行实现,然后出样机,接下来做小批量、大批量生产。所以软硬件结合的项目在落地的过程中,与纯软件的项目来比较,最大的不同就在于,软硬件结合的项目是以硬件为主定的生命周期,并且从总的生命周期上来讲,这是一个大的瀑布,软件的生命周期实际是附属在硬件的生命周期上的。在这种情况下,其中软件的部分也可以采用迭代的方式来做,也就是说在整个大的生命周期中,将某一段采用迭代的方式来实施。
如果我们把硬件纳入进来,其实硬件的规模估算和软件的规模估算不一样,硬件的验证、确认和软件的验证、确认又不一样。这些地方会从技术方面有一些差别。但如果我们把主流程统一,剩下的部分其实会比较好处理。
Q:硬件的规模如何度量?
A:如果我们设计一个板子,那板子上面新器件的个数、管脚的数量、板子的层数、板子面积(台式机的主板和手机的主板)、通风口的位置等等,这些因素都会影响工作量。
我们为什么要度量规模?其实是为了估算工作量。所以从本质上来讲,这需要我们看在整个过程中,有哪些因素影响了我们的工作量。我们有一个客户,他们通过度量数据证明管脚个数和工作量是不是强相关的,如果是强相关,可以用管脚个数来代表规模。
那么硬件有没有一个行业度量的方法?据我了解,还没有一个大家都认可的规模度量,是需要大家在实际中不断摸索的。
Q:CMMI不提供流程指导,它是不是一个对其它流程辅助补充的类似实践库形式的存在?
A:CMMI就是一个实践库,里面的实践没有一个严格的先后顺序。比如说用RUP定义流程、基于Scrum来定义流程都是可以的,只要能覆盖到CMMI的要求就可以。
Q:CMMI2.0Dev中20个核心实践域的关联关系可以详细讲讲吗?
A:20个PA可以分为四大类:
第一类是(Doing)工程类:Doing类实际上映射为工程活动,需求设计、编码测试、同行评审……
第二类是(Managing)管理类:比如做估算、做计划跟踪、做风险管理。管理类需要再细分,管人、管事、管风险、管不确定性……
第三类是(Enabling)支持类:比如决策分析,原因分析……
最后一类是(Improving)改善类:比如EPG,按照PDCA循环持续改进。
所以20个PA可分为这四大类,这四大类基本把开发有关的活动都覆盖到了。
Q:CMMI的成熟度级别如何定义的?各个PA域都有级别的区分吗,还是某个级别必须实现某些PA域?
A:在CMMI2.0中,它定义了每个PA都有1级、2级、3级、4级、5级的实践。有的PA最高能到5级,有的PA最高到4级。CMMI1.3将PA划分了等级。在CMMI2.0中,是把实践划分为了等级。实际上是更灵活了。
在企业当中进行评估的时候,也是分了两类等级。一类是成熟度等级,还有一种是能力等级。能力等级在我们实际当中遇到的评估比较少,能力等级评出来的PA最高是到3级。
能力等级和成熟度等级的差别在哪呢?成熟度等级就像是套餐,按照已有规定来做。能力等级更像你在单点,就想吃这个菜,我觉得这个做不好,就专门评这个PA。能力等级最高到3级。
Q:假如不用任何流程,只有最小集合的实践,这几个实践做得也挺好,能通过CMMI评估吗?
A:是不行的,想要通过CMMI成熟度评估的要求是目前公司的流程覆盖了CMMI的要求。如果说参考了CMMI,我有实效,这个说法是可以的。其次,我们要注意为什么要求有流程?
第一点我们要注意的是,在公司内部,我们只要有一个固定流程来做事情,同时定义了这些活动的先后顺序,那么这个流程就是客观存在的,只不过区别在于这个流程是可重复的流程还是一次性流程。
第二点就是这个流程是只存在于头脑中还是已经文档化了?如果我们的流程不需要文档化,就能够养成习惯,形成一个固定套路。比如说我天天做西红柿炒鸡蛋,这个流程并没有规范的文档,但我已习惯性地按照第一步加盐、第二步加糖的步骤来进行,那这就是约定俗成的流程。但如果我想让不管是谁来做都能做出一个味道的西红柿炒鸡蛋,那这就会有一个问题:每个人的流程不一样,炒出来菜的质量也会不一样。那我们怎样来保证这个味道一样呢?那就需要文档化的流程。文档化流程的价值在于把我们的经验教训汇总起来,形成一个固定套路,让成功可重复。
Q:CMMI从2级做到3级给公司带来的最大价值是什么呢?
A:第一点是更完备了。2级只侧重于项目管理,3级则把工程活动也包含进去了,包括需求、设计、编码、测试等规范。同时,3级也建立了组织级的持续改进流程。
第二点是从项目级的水平提升到了组织级的水平。如果你是项目经理,把2级的这10个方面都做到,就到达2级水平了;3级则是整个公司统一定义的流程,如果把3级的20个方面都做到,就到达了3级的水平。
Q:CMMI4、5级的量化级如何开展?
A:回到最初CMMI2.0的要求上来,就是围绕目标做改进、围绕目标采集数据,分析数据中隐藏的分布规律、因果规律。分布的规律说明了我们当前的水平是什么样的;因果规律,刻画了我们为什么是当前这个水平,影响因子是什么。然后我们通过找到影响因子去做出改变。做CMMI4、5级,是要通过数据让帮助我们来去巧干,帮助我们四两拨千斤。
3级的完备性已经到顶峰了,4、5级是用数据来刻画公司的现状。数据可以让你清楚什么是对的,什么是有价值的,什么是效率高的……这就是巧干。
Q:CMMI是评估公司还是评估项目呢?
A:CMMI评估的是公司下的部门(从部门里抽某些项目来参与评估)。CMMI的结论一般是某某公司某某部门通过了CMMI成熟度3级评估。同时,在评估部门的时候,不管是大部门、小部门,还是单部门、多部门都可以进行评估。
Q:CMMI评估,一个部门通过可以代表整个公司通过了吗?
A:不可以,还是按照部门来评估的。如果公司有10个事业部,只给一个事业部做评估,通过的话只代表该事业部达到某一水平,无法代表其他9个事业部都到这个水平。