图中的方框表示项目中的各个任务。如果两个任务在水平方向上直接相连,或者有箭头相连,则表示后项任务的开始依赖于前项任务的完成。例如,在第二个2:CS开始之前,5:HW与3:HW都必须完成。方框中的数字代表完成该任务需要几周的时间;字母代表需要的资源。现有的资源包括:一个程序员(Prog),一个硬件技术员(HW),一个客户服务代表(CS)以及一个工程师(Eng)。项目管理者联盟 由于这些人力资源可能在其它项目中也有工作,因此他们完成各自任务的时间有着很大的不确定性。为解决这一问题,一个办法是在每处都加上“减振器”,如图2。图中的粗线标出了关键路径(完成时间最长的一条路径)。项目管理者联盟 service.mypm.net 图2增加了安全时间的项目计划项目管理者联盟 现在我们要问,这样的排程是否更合理了呢?答案是否定的,因为:对于硬件技术员仍然处于争用的状态,3:CS一定要在5:HW完成之后才能开始,所以,关键路径上的时间(3+5+8+3=19周)并不能成为整个项目完成所需的真正时间。项目管理者联盟 步骤1:解决资源的争用club.mypm.net 不难想到,首先我们要解决资源争用的问题。本例中,见图3。应注意到以下几点:项目管理者联盟 项目管理者联盟 图3解决了资源争用的计划项目管理者联盟 ●图中没有追加如图2中的安全时间(Safety time),方框中的时间是平均意义上的完工所需时间,“减振器”将在后文插入。 ●有些任务(如4:Prog)是到最晚开始时间(Late Starts)才开始,而不是在最早开始时间(Eealy Starts)。这是因为,我们只有插入“减振器”时,才会把任务开始时间提前,而现在我们还没有确定“减振器”在哪里插入。 ●我们没有特别强调某一种“资源平衡”的算法。实际上,尽管我们可以通过某一种算法得出一个“最优”的排程方案,但我们以后遭遇的不确定性仍将使得这种“最优”大打折扣。 图中的排程目前是完工期最短的,但务必注意,仅仅在不存在任何不确定性的情况下才会这样。项目管理者联盟 步骤2:识别关键链pmp.mypm.net 接下来,为了合理利用“减振器”,我们必须识别出一组任务的集合,这组任务决定了整个项目的周期,我们把这组任务叫做“关键链”(Critical Chain)。www.mypm.net 项目管理者联盟 图4关键链项目管理者联盟 本例中,可以比较容易地识别出粗线框的任务2:CS,3:Eng,5:HW,3:HW以及2:CS决定了整个项目的周期。之所以这样说,是因为这些任务中的任何一个的延迟,都会造成整个项目的延迟。training.mypm.net 步骤3和4:生成缓冲器,并插入适当位置项目管理者联盟 对于项目经理来说,最担心的就是防止脱期。为了避免这种情况,我们需要在紧挨着客户的地方插入一个“减振器”,如图5。项目经理圈子 项目管理者联盟 图5项目缓冲器training.mypm.net 我们称这个“减振器”为“项目缓冲器”(Project Buffer),这段备用时间可以在项目进行中用掉,其长短依统计得出的波动时间的长短而定。这样,客户端就得到了切实的保护,应注意到,这种保护是指向客户的,而不是指向某个任务的。哪怕你还没有生成关键链的排程,这种思想也是非常有用的,简言之就是:风险前移、空闲后移(move risk earlier and slack later)。pmp.mypm.net 通过“项目缓冲器”,客户得到了一定的保护,但仍要考虑项目的其它部分。既然“关键链”中的任务决定了整个项目的周期,何不对他们也有所保护呢?具体这样来做:在每一处非“关键链”上的任务与“关键链”上的任务相连接的地方,插入“减振器”,我们称之为“喂料缓冲器”。项目管理者联盟 现在,我们得到了一个切实可行的计划,既保证了较短的周期,又考虑了如何避免波动的干扰。那么,在具体实施当中,是否会遇到困难呢?下文我们将讨论这一问题。项目管理者联盟 第二部分:实施项目管理者联盟 从表面上看,实施关键链管理不需要激进的举措,特别在有高层管理者支持的情况下。它在逻辑上说得通,并着眼于缩短项目时间和减少花费,那么困难在哪里呢?经验表明,实施供应链管理的最大障碍不在于技术,而来自于人。个人的惰性会表现为不愿改进一贯的做法,尽管事实证明了一贯的做法存在着问题。至于组织的惰性,则可以表现为刚性的组织程序、政策、考核方法以及组织文化。service.mypm.net 实施关键链管理,首先要对整个项目建立有效的控制,即建立起“项目网络”(Project Network)。所谓项目网络,是一组任务、资源与关联的集合,用以表述为了完成项目要求应该完成哪些工作以及如何完成。本文中的图示可以看作是简单的“项目网络”。在建立项目网络的过程中,应注意:项目管理者联盟
|