杂谈:计算生产能力

    记得两三年前被逼无奈利用自己的时间为现在的公司制作过[如何提高生产能力及质量]的小报告。当时主要是罗列并粗浅的比较了一些比较流行的方法论,并没有感觉到很难。可是在企图定量的衡量提高多少的时候,我却找不到答案。和提高比较起来更难的应该是如何计算生产能力,固然不知道如何计算生产能力根本无法准确衡量提高多少,还有就是毕竟是否有提高还可以定性的分析,如何计算的时候就必须要定量了。

    目前我采用计算代码行数的方法统计并衡量。
    这里不得不插一句,用计算代码行数这个方法本身的问题,Martin Fowler在  CannotMeasureProductivity  这篇随笔(?)中围绕无法合理的测量生产能力这一主题展开了相当精辟的分析,首当其冲的恶例就是利用代码行数计算,非常值得一读。至于为什么我顽固不化的依然计算代码行数,也许我要强调一下这个单词 [平均生产能力],同时我也尝试导入了计算纯生产代码行+共通代码的计算方式,自以为在统计的时候可以在很大程度上接近“实际”生产能力...
    在计算生产能力时,自然总会接触到很多个人的信息。因为我是在一个成员相对稳定的公司,工作内容只是普通的应用软件开发(说白了就是高中毕业生也可以做的工作),再加上法律上有关解雇条文的禁止半禁止导致对劳动者的保护造成了企业竞争能力低下、个人能力差很大。
    很久以前看到的一个分析数据就和我们公司的情况很接近。能干的大概占项目人数的20%却做了50%以上的工作。
 
    软件业的人月其实应该是一个非常不好的概念,也有太多人对这个有怀疑,至少从理论上根本无法找到任何根据。至于为什么还广泛的存在于我们的行业的理由,我想应该是如果不用这个概念的话,就不知道如何与客户交涉的人不少的原因吧。放下这些不谈,在目前广泛存在的人月这个概念的基础上,可能就不难理解计算平均生产能力的重要性,如果没有这个数据就不知道如何做预算,如何分配工作了。
 
    其实生产能力不只与每个人的自身能力有关,影响它的实在有太多因素,假设有一位刚刚失恋;假设中有一位对公司现存制度很不满的朋友;假设有一位元老级的人被降职。。。。。。甚至计算机的反应速度也决定了个人的生产能力。应该是IBM做的调查吧,同样的人在不同反应速度的机器上工作,工作能力的差会有1.6倍左右。。。
 
    生产能力是一个不得不计算的参考数值,也是一个永远也算不准确的参考数值。如果能保证上下偏差10%可能就是精度超高了。
 
    生产能力这些数据的利用面很广,假设做我们要做某个项目的预算,如果有一个相对准确的平均生产能力值可能就会让结果准确很多,特别是用cocomo计算的朋友会很爽吧。当然不管是画个WBS然后一点点相加还是用FP或者用类似经验法则做预算,都实在是太需要这样的基础数据。

    自己也许更需要其他的方法来计算......
posted @ 2004-10-01 15:00  OSSSME  阅读(1976)  评论(0编辑  收藏  举报