摘要:
这年头IT界流行“用数据管理过程”、“用数字说话”,软件度量成为热点话题!一方面一堆专家在“哗众取宠”,而另外一方面企业在推行软件度量的实践中遇到了各式各样的问题,软件度量在软件企业中的实施效果不甚理想。一个软件企业应该从何做起度量工作呢?希望本文能给大家带来有益的启发!
大纲:
1.形形式式的度量陷阱(1)
2.什么是度量?(1)
3.首先应该度量的指标——公司的效益指标(2)
4.每个软件公司都可以并且应该做好的度量——缺陷度量(2)
5.成功的基础——软件规模度量(3)
6.项目跟踪的利器——进度度量、成本度量(4)
7.被吹得最多的六西格玛管理(5)
8.量体裁衣、身体力行(5)
我将分5篇为你分享,大纲后面的数字表示将在第几篇分享该部分内容。
被吹得最多的六西格玛管理
六西格玛被网络炒作得太厉害了,我一直没有能找到一篇能通俗说明六西格玛基本原理的文章。我们公司通过了CMMI5级了,但我还不时会遇到推销六西格玛培训的事情,这些推销者可能不知道要过CMMI4级,不精通六西格玛是不行的。
什么是六西格玛?
我第一次听说的时候,我以为六西格玛会包含六个方面,现在看来真是贻笑大方了。西格玛是统计学里面的一个概念,六西格玛,就表示六个西格玛。我们暂时不去研究这些深奥的统计学的东西,简单地说六西格玛管理就是一个稳定地输出高质量的产品(或者是服务)的管理办法,在这个过程中利用统计学的原理对数据进行分析,找出改进点,并通过再次度量数据,来验证改进的效果。
什么是稳定的过程?什么是不稳定的过程?
大家都试过野炊吧?小时候一般同学去郊外野炊,大家煮出来的饭是不是有的糊有的焦,没有几个煮得出好饭的?这个野炊煮饭的过程,我们可以认为是一个不稳定的过程,因为输出的结果都是难以预测,差异很大的。不知道大家做项目的情况是不是跟野炊的情况类似?有些项目做得好,有些项目做得差?
为什么用野炊的方式煮饭,结果会这样呢?如果仔细分析,我们会发现影响煮饭结果的因素很多都不受控制,如米的质量、放水的多少、火候的控制等等。这样结果自然就难以控制了。同样道理,我们做项目影响项目结果的因素也很多,如果这些因素不控制好,项目的结果也是很难估计了。
如果我们用电饭煲来煮饭呢?用电饭煲煮饭的时候,我们只需要保证米的质量,并且放好水,剩下的事情就是按一下开关就可以了,而且现在的饭煲都有放水的刻度,想放错水还比较难呢!我想没有谁曾经用电饭煲来煮饭出现过失手的情况吧?
为什么用电饭煲煮饭,能保证持续稳定地煮出高质量的饭呢?因为电饭煲已经把很多不可控制的因素,用电饭煲控制好了,我们只需要控制的东西很少,而且也很容易控制。同样道理,我们看看我们做项目的情况,如果项目没有过程,很多东西是很难控制的,如果项目不用一定的技术来改进,很多东西也是很难控制的。一个成熟度高的公司,他们的项目一定是通过一些过程及相关的技术进行控制的,这样即使是不同的人来做项目,最终出来的结果都是可接受的,偏差不大的。
所谓六西格玛管理来改进项目,核心思想是要找出影响项目的关键因素,想办法加以改进,当然做项目的过程比煮饭要复杂很多,要做好这个改进工作一点都不容易。
如果一个公司没有什么软件过程,是不能马上进行六西格玛管理的。就好像如果要过CMMI4级,如果没有做好CMMI2、3级是根本不可能的。如果你们的公司刚好是这样的情况,千万不要上六西格玛管理,你们可能会把一般六西格玛的理论家的数字游戏所蒙蔽,这个时候做的很多度量工作很可能是徒劳的,只会增加大家的负担并没有什么效果。如果想改进生产力的话,参考CMMI2、3级的要求,选择部分合适的PA来持续改进,这才是正路。
如果公司达到了CMMI3级水平,是不是就可以考虑进行六西格玛管理呢?
不尽然!六西格玛管理有一大弊病,就是要基于数字来说话,而且要有一定的经验数据为基础。软件开发行业,经常面对新的挑战,很难想象一个软件公司会几年如一日都在用类似的办法生产类似的软件。也就是说,我们辛辛苦苦分析了几个月的数据,找出了一些问题的根源,很有可能因为公司的业务变化,而让这些分析结果价值不大,也更加不要指望利用之前的历史数据分析出来的指标来管理今后的项目。
六西格玛管理从开始是从制造业开始应用的,而软件企业的特点是智力的竞争,知识更新非常快!如果公司不是长期稳定做某类业务的,是不适合上全套的六西格玛管理,当然六西格玛的核心思想是可以利用的。
量体裁衣、身体力行
软件度量可以是很复杂的事情,也可以是很简单的事情,大家不必被一些复杂的度量办法、高价的度量工具、还有深奥的六西格玛给吓怕了。度量工作本身并不会有任何好处,产生好处的是对度量结果的分析及相应的改进工作。
做度量之前,要先思考当前公司存在一些什么大问题,有什么简单的度量办法,能让你更加清楚地了解问题,并更容易分析出原因。如果你要进行一系列的改进工作,你也需要思考,有什么简单的度量办法,能让你很容易地跟踪改进的情况,并能很容易地分析出原因及采取纠正措施。
目标驱动度量,而不是为了度量而度量,简单就是最好的!
全文完