摘要:本文以案例的形式介绍了同一个项目分别以关键路径法和关键链法做进度规划得出的两种进度计划,比较了两种进度计划方法的不同和优缺点。
项目管理的关键链法是关键路径法的一个延伸。其主要目的是避免糟糕的多任务制,“帕金森法则”和“学生综合症”。
关键路径法
那么关键路径法是什么,又是怎样实施的呢?
关键路径,就是完成项目所需要的最长路径和最短时间。很拗口,举个例子。一个项目,首先做WBS,分解出6个工作包。如下图:
画出它的关键路径
可以看到,关键路径是上面那条,时间为21天。
用MS Project的Gantt图表示:
项目时长 = 关键路径 = 21天
注意,其中有一天的时间作为buffer,在task3后面。
关键路径法的弊端
那关键路径法有什么弊端呢?
首先,关键路径要求项目的变化很少。一旦有变化,关键路径上的task时间延长,整个项目时间延长。
第二,这样简单的做关键路径规划,没有考虑资源的使用。比如上面的R2就同时在做Task2和Task5,这也很可能不能按期交付。
第三,buffer时间的使用并不效率。比如驾驶Task1实际使用了4天就完成,但是Task2仍然在第6天开始这种情况。还有就是最开始说的“帕金森法则”(Parkinson’s Law) 和“学生综合症”(Student Syndrome)
帕金森法则:工作总是拖延到它所能够允许最迟完成的那一天(Work expands to fit the allotted time.)
一件事安排了10小时,就一定会用10小时完成,哪怕其实只需要10分钟。
学生综合症:学生总是拖延工作开始的时间,最后加班加点甚至往后拖延。
第四,对于非关键链上的时间控制重视不够。经常出现非关键链出现拖延结果最后时间超过关键链上的任务而延长项目时间。
还有很多不再列举……
关键链法
针对这些问题,衍生出了关键链法。关键链法的简单步骤如下:
- 根据关键路径法做出关键路径
- 将所有工作包时间压缩至50%并移除buffer的时间
- 以完成时间往前推来调整资源冲突,不要多任务
- 然后将现有时长的50%放在最尾端作为总项目浮动
再以上面的项目为例:
首先,将所有的buffer和工作时长压缩
项目时长 = 10天
所有的任务尾端的buffer 都被移除。看到Task4和Task5的开始时间往后挪了。
然后调整资源冲突。例子中我们看到由R2完成的Task2和Task5在时间上有重叠,于是将Task5的时间往后延一天。又因为是以完成时间往前推,所以Task3与Task5同时完成,向后推一天开始时间,Task4在Task5之前完成,向后推一天开始时间。如图:
项目时长 = 11天
最后,增加总项目浮动为现有时长的50%,同时给非关键路径的任务增加buffer。本例子中总项目buffer为5天。
我们可以看到,关键链法对比关键路径法,最终的项目时长减少了5天(25%),资源使用更加合理,所有工作任务都受到同样程度的重视。
同时我们也可以看到关键链法的缺陷:
其一,对于工作任务时长简单粗暴的缩减50%。虽然在最后增加了总项目浮动,但是会一直给项目团队造成高度的进度压力和紧张气氛。
其二,现实项目中工作包众多,资源使用负责,调整起来困难。
总结起来,关键链法给我们在实际工作中做进度计划提供了一个新的思路。其中的各个百分比都可以根据大家的实际情况进行调整。
参考资料:
Critical Path Method and Critical Chain Project Management, Umesh Dwivedi, PMP。文中图片和案例均来自本论文。