首页 理论教育 成本计算:完美软件开发的关键

成本计算:完美软件开发的关键

时间:2023-11-21 理论教育 版权反馈
【摘要】:很多人试图单独计算因为应用某种流程而产生的成本,而事实上这是不可能的事情。实施的流程本身即是工作,做某个或不做某个流程中的步骤是做事方法上的选择不同,并不能被单独计算为流程的成本。但这种分配差别无疑是工作方法自身的差异,而不能定义为流程的成本。这反过来要求流程必须是植根于具体问题的,否则由于成本不可见,流程所导致的副效应可能无法控制。

成本计算:完美软件开发的关键

项目所能使用的资源是有限的→流程本质上会主导限定资源的分配方法→必须确保特定分配方法的ROI→流程的成本事实上无法计算清楚:与实际工作相契合的,事实上是工作的一部分;而与实际工作不契合的,事实上是工作没做好→由于流程即是工作方法本身,流程成本无法单独计算。

很多人试图单独计算因为应用某种流程而产生的成本,而事实上这是不可能的事情。比如有的人曾提出这样的公式:

假设流程的设计时间为DT,每个团队学习理解流程的平均时间为LT/项目,因为流程而增加的平均工作时间为AT/项目,流程的使用频率为F,流程影响到的项目数为N,那么流程的实施成本为:

DT+(LT+(ATxF))xN

—Scott Berkun,《项目管理的艺术

这种计算逻辑的问题在于,通常我们不可能界定什么是因为流程而增加的平均工作时间。(www.xing528.com)

假如原来一个项目组从来不做Code Review,在对流程进行改善后,加入了Code Review这一环节,但这种时候我们并不能把Code Review所花的时间计算为因为流程而增加的平均时间。

实施的流程本身即是工作,做某个或不做某个流程中的步骤是做事方法上的选择不同,并不能被单独计算为流程的成本。但从投入产出的观点看,即使产出相同,不同流程表征下的工作方法所需要的投入确实不同。在极端的情况下,资源如果恒定,那么流程本身将主导资源的分配方法和使用效率。比如说:

对于一个30MM的项目,既可以分配29个MM做开发测试,1个MM做数据收集、分析,也可以分配20个MM做开发测试,10个MM做数据收集、分析。

而这种资源分配方法究竟合适与否则要从现实中获得验证。但这种分配差别无疑是工作方法自身的差异,而不能定义为流程的成本。这反过来要求流程必须是植根于具体问题的,否则由于成本不可见,流程所导致的副效应可能无法控制。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈