SamXu's blog

A blog for programmers like me.

项目管理的ONP原则

前阵子学到了一招,项目管理中关于预估的ONP原则。

顾名思义,O乐观估计,N普通估计,P悲观估计。

当有一个新需求产生的时候,产品经理大表哥总是会问,“这个需要多长时间啊,最快什么时候能好?应该很简单的吧” 。

年轻气盛的小瘦就会回答了:“嗯,这个简单。两天帮你搞定。包在我身上。” 大表哥听了很高兴。这叫乐观估计。

曾吃过亏的老龚就会说:“这项工作我来做的话,需要4天完成。但考虑到各种不确定因素,保守估计8天吧。你的需求有哪次不是变来变去的?”大表哥羞愧的低下了头。这叫悲观估计。

见过世面的大师掐指一算:“老衲觉得需要4.3天,就算是5天吧。但也可能需要6天或者7天。” “大师,此话怎讲。说了等于白说。”

大师继续说:“其实佛祖托梦,给了我一个计算公式。套用即可。” “大师,您也太能忽悠了。”

1
2
3
μ = (O+4N+P)/6           #平均值 
σ = (P-O)/6              #标准差
U = μ or μ+1σ or μ+2σ    #估算值

工作量预估实际上是一个概率分布问题。就拿刚才的例子来说,这个工作项有10%的可能性在2天内完成,15%的可能性在3天内完成,30%的可能性在4天内完成,25%的可能性在5天内完成,在6、7、8天内完成的可能性分别是10%、6%和3%。在1天以内或者9天以上完成的可能性基本为0。

当然,上述分布的情况比较理想化,只是用来举例。每次项目要如此进行概率估算,并且计算平均值和标准差,还是比较复杂的。为了简化计算,前人总结出了以上公式。

各位今后在进行工作量预估的时候不妨也这么试一下。先确定好合理的ONP,再套用公式。顺便把这套算法讲给产品经理听,做一个守信的专业程序员。

分享到: