继 InfoQ 中文站报道过“数字是有效沟通的要素之一但不是全部”一文后,敏捷中国社区中的讨论又热火朝天的持续了一段时间,本文对其中的讨论进行后续报道。
针对“用数字沟通”一文中的这句话:
“当然,Rick,当然”,Sam 说"你们开发人员总是这样,什么时候你们才会说’没问题’?听着,如果你愿意周末加班,应该是有奖金的。"
Jeff Xiong 说道: > 所谓有意义的估计值,是指(1)偏差范围小;(2)朝正向或负向偏差的概率相当。比如我说"我在 2050 年前后偏差 50 年会死",这不是什么有意义的估计值;我说"我在 2008 年之后 100 年内会死",这也不是什么有意义的估计值。给出越有意义的估计值,提供越多的信息量,就意味着出现偏差的风险越大。 那么在一个事实与估计出现负向偏差(或者正向偏差,取决于你说的对象)则估计者会因此受到惩罚(加班)的环境下,估计者会采用什么样的策略来提供估计值,这种环境会对量化管理 / 沟通产生怎样的影响。我本来不觉得这是一个很有研究价值的主题。
王鹏飞则反驳说: > 未必如此.
…… 估计值的偏差程度和风险水平是由估计对象的信息的准确性和估算方法决定的, 与你的所说的"给出越有意义的估计值,提供越多的信息量"并没有内在的因果关系。Anderson 在软件工程的敏捷管理书中提供了一组实际项目的参考数据: 信息量足够的项目, 估算偏差为 +10%. 信息量极度缺乏的项目, 估算偏差在 200% 甚至更多. 在那个故事中,Rick 团队里的 Fred 对 Whatsis 是很了解的并且有在多个项目中应用 Whatsis 的经验. 这就为 Rick 有可能为 Sam 提供较为准确的估计数据奠定了基础。
另一个是估计方法的问题. 这直接影响到估计结果的精确程度。我本人用 FDD 多年,我总结过一套"风险 - 人日"的参考值以及确定风险系数的方法, 我用的效果很好。XP 中怎么估算,也应该有相应的方法. 为了让估算值尽量保险, 一般会为估算结果加上一个缓冲值, 也就是所谓的偏差。 至于公司环境和商业上的因素, 本身并不影响估算结果的准确性, 但会影响人们如何对待估算结果。
Jeff Xiong 继续回应: > 实际上我认为用数字沟通是一种简单有效的方式,比如说与其费半天劲跟老板解释重构有什么好处我不如告诉他重构需要 3 个人日不重构你将在未来 3 个月里损失 20 个人日的生产率。但是,用数字沟通或者说任何形式的沟通必须建立在一个基础上即沟通有可能改变一些事情。这也是为什么我说这是个不搭调的故 事:Rick 要想不加班该怎么做?我觉得如果他不是特别笨或者特别没经验的话他就不会考虑去做一个比较准确的估计来沟通。
……
听数据的人怎么对待这个数据,会直接影响给数据的人怎么说这个数据。一个倡导用数据沟通的环境,首先必须是一个给出估算数据出现误差时估算者不会因此受到惩罚的环境。
王鹏飞说道: > 我一直都承认环境和商业因素的影响, 管理模式 / 文化氛围本身就是组织和制度层面应该解决的问题。我强调的是,在信息充分的条件下,一个可接受的估算值还是能得到的, 不要以成本, 模糊等等为托词. 我意思是说, 在项目管理中引入量化的手段是有价值的。估算是可以做的, 估算的结果准确程度依赖我们对项目信息的掌握的情况。其实风险识别, 估算工作量的作用不仅在于给领导一个数字, 在确定需求优先顺序, 开发计划等方面也有作用。
讨论来讨论去,两个人说得其实并不是同一个话题,正如 Tim.wu 对王鹏飞指出的那样: > 我又读了读我们讨论的那篇文章,如 jeff 说的,没有人认为数字沟通不好。:) 引两句文中市场部门的原句吧。“如果我们能在这个月底前交给他,他愿意支付一笔额外的费用。我知道这对你来说有压力,但你总是能够搞定这种棘手的事 情。”“你们开发人员总是这样,什么时候你们才会说’没问题’?听着,如果你愿意周末加班,应该是有奖金的。” “把数据拿出来再跟我谈!我可没有时间听你说这些’但是’,我要尽快告诉客户没有问题。”
……
不知你有否空再读读那篇文章,其实这儿沟通的问题真的不是"引入量化的手段对项目管理的作用":) Rick 即使做了量化工作,他的敏捷之路的结局还是很令人担忧的。
项目开发是否需要用数字衡量?如何衡量?看起来这并非是问题的核心所在,要想学会用数字说话,首先要知道问题所在、数字的意义所在,还有就是,你身处什么样的环境,想用数字达到什么样的效果,为了不同的目的应该怎样使用数据。 在上周六的 Beijing Open Party 上,ozzzzzz 在自己的 session 中谈起这一系列讨论时,讲了一句令全场掌声雷鸣的话:“我骗人的时候从来不说假话。”
在“你的灯亮着吗?”这本书的第 18 章中,汤姆试着把玩具厂的问题进行归纳:
已知批发商给出了一系列的订单,
TT 公司应该如何在 3 个生产厂之间安排这些订单
才能使总成本——生产加运输成本——最小
但当他给出解决方案之后,乃至表示可以“用线性程序运行这些数据,这样计算机就会给你们一个惊人的报告——甚至会有很多数学符号”,方才明白对方想要的并不是怎样把成本减少到最小。 那么,你知道问题的真正所在么?
评论