我正在阅读“神话人月”,并在20周年纪念版的更新中接近尾声,它谈了一下Boehm的模型,以及基于项目人工月数的最佳交付时间
在讨论Boehm的模型时,他的陈述是:
他的结果坚定地证实了MM-M的 断言之间的权衡 男人和月份远非线性, 人月确实是神话般的 作为衡量生产力的指标。在 特别是,他发现:[16]
•有一个 成本最优的预定时间 装运,T = 2.5MM 1/3 。那是, 以月为单位的最佳时间 预期努力的立方根 人月,一个来自的人 大小估计和他的其他因素 模型。最佳人员配置曲线是 推论。
•成本曲线随着计划的进度而缓慢上升 超过最佳值。人们 更多时间需要更多时间。
•费用 曲线按计划大幅上升 时间表比...更短 最佳。
•几乎没有任何项目成功 在不到计算的3/4 最佳时间表,无论如何 申请人数!这个 可引用的结果给出了软件 高级经理坚实的弹药 管理层要求不可能 安排承诺
我在实际应用此声明时遇到一些困难,我想知道是否有人对如何通知软件估算有任何见解?我特意试图解释估算公式,如下图所示: cost-optimum schedule time plot
这似乎表明,对于一个人工月工作的项目,成本最优的交付时间为2.5个月。然而,这是有道理的,如果你假设有一个项目有5个工人月的工作,那么情节表明成本最优的交付时间是4个月!
这是否表明应该在这个时间范围内分配更多的人力资源,或者估计数量太大?
另外,您如何从此模型中估算出最佳人员配备水平? 感谢
答案 0 :(得分:3)
基本上,所有模型都是错误的,但有些模型很有用。 - George E. P. Box
我没有任何方便的参考,但我认为这个模型来自大型瀑布式项目的数据。对于1或5个人月等小型项目,该模型可能不适用。如果你试图将它们推断得远离它们的有效范围,模型会给你错误的结果。
虽然特别是在一个小项目中也是如此,但并不总是可以做有助于交付的工作。例如,在等待继续执行所需的外部依赖项时。
我已经使用这些模型来检查相同尺寸范围内具有类似工艺特征的项目报价。不是机械地,而是作为指标,看看计划/提议中是否有需要更密切关注的领域。
另外,如何从这个模型中估算出最佳人员配备水平?
如果您有最佳持续时间T个月和MM人*月的努力,您可以分配工作人员在T时间内完成MM工作。您的平均人员配置是MM / T人。
当然,在实践中,具有稳定的MM / T人员配备水平并非最佳。从一个小团队开始,以解决高层架构问题,然后只有在新人有用之后才能发展团队。
答案 1 :(得分:1)
与任何模型一样,没有必要盲目相信,特别是当模型真的很容易测试时:
Effort in MM Opt. Dur. Avg. Team Size
1 2.5 0.4
2 3.1 0.6
3 3.6 0.8
4 4.0 1.0
5 4.3 1.2
6 4.5 1.3
7 4.8 1.5
8 5.0 1.6
9 5.2 1.7
10 5.4 1.9
20 6.8 2.9
30 7.8 3.9
40 8.5 4.7
50 9.2 5.4
60 9.8 6.1
70 10.3 6.8
80 10.8 7.4
90 11.2 8.0
100 11.6 8.6
200 14.6 13.7
300 16.7 17.9
400 18.4 21.7
500 19.8 25.2
600 21.1 28.5
700 22.2 31.5
800 23.2 34.5
900 24.1 37.3
1000 25.0 40.0
据我所知,对于目前在商业环境中运行的最多10个人月的软件开发项目(在非软件公司内部运行的内部项目),模型产生的最佳数据并不反映典型的持续时间和团队规模。
超过20个人月的项目数字变得更加可信,特别是在努力紧密耦合的情况下。
因此,对于持续时间超过20个人月的项目,我会避免使用该公式,只需快速的数量级。对于任何不到这个,快速计划会给你一个更准确和值得信赖的结果。