【将会第一时间更新文章并分享《行业分析报告》】
归档于软件项目管理初级学习路线
第七章 软件项目进度计划
前言
大家好,这节我们学习软件项目管理—进度计划编排–关键路径法。
基本概念
浮动时间
浮动时间是一个任务的机动性,它是一个任务在不影响其它任务或者项目完成的情况下可以延迟的时间量。
总浮动与自由浮动
如下图示的任务有4天的总浮动,但是不一定可以自由的使用。
总浮动是在不影响项目最早完成时间的前提下,一个任务可以延迟的时间。
自由浮动是在不影响后置任务最早开始时间的前提下,一个任务可以延迟的时间量。他说明了总浮动的自由性,所以小于等于总浮动。
例如:他的后置任务最早开始时间是13,所以自由浮动时间为2.
关键路径
我们看一个项目网络图:关键路径是A,项目完成的时间是100天。
我们将这个网络图改为甘特图的形式,项目在100天内完成,A任务没有浮动,是关键路径。但是B任务相对来说灵活点,是有浮动的,最晚可以第90天开始。
我们先看第一个任务A,从第0天开始,说明任务A的最早开始时间是第0天,那么他的最早结束时间是100。
所以ES=0可以推导出EF=100,从左向右,顺时针推导。A的最晚完成时间是第100天,历时是100,所以LF=100,LS=0,从右向左,逆时针推导。
我们再来看任务B的最早开始时间和任务A一样,都是第0天开始,ES=0,历时为10,从左向右,推出B的最早完成时间为第10天,则EF=10。
B的最晚完成时间LF=100,从右向左,逆时针推导,B的最晚开始时间为LF-10=90,则LS=90.
接下来说浮动,刚才说了B有浮动,很明显看出来有90天浮动,那么这个浮动是总浮动,TF=LS-ES=90,或者TF=LF-EF=90。
因此我们得出如下图公式:
翻译其中一条:EF(最晚结束时间)=ES(最早开始时间)+duration(历时)
刚才那个项目的任务A和任务B都没有任务后置的,所以就不牵扯到自由浮动的问题。
现在在任务B的后面加一个任务C,任务C的历时是5,并且B和C之间加一个延迟Lag,这个Lag=5,既B任务完成5天后,C这个任务才能开始。
看这个项目关键路径还是A,B和C路径是有浮动的,但是B任务有了后置任务C之后就不自由了。
那么任务A这个路径没有变化,ES和LS还是和刚才一样,如图所示:
那么任务C和任务B这条路径,正向推导最早开始时间和最早结束时间,从左到右。对于任务B而言ES=0,推导出EF=10.
任务C则ES©=EF(B)+lag=15,则EF=ES+历时5天=20。
逆向推导最晚结束时间和最晚开始时间,从右向左。首先推导任务C,LF=100,LS=95。
B的LF=LS©-Lag(5)=90.则B的LS(最早开始时间)=LF(90)减去历时10天为80。
因此我们总结公式如下:其中S代表后置任务,P代表前置任务。比如ES(S)代表后置任务的最早开始时间。
由此我们总结出,正推法确定最早开始时间和最早完成时间。逆推法确定最晚结束时间和最晚开始时间。
正推法
按照时间顺序计算最早开始时间和最早完成时间的方法,称为正推法。
正推法步骤如下:
我们看个例子:这是项目的网络图,而且确定了每个活动的历时,现在用正推方法来确定每个任务的ES和EF。
A和C任务之间没有Lag,所以C的ES为8,因为历时为6,所以EF为14。以此类推…从左到右,从上到下。
图中任务E有两个前置任务,则需要选择前置任务中最大的EF加上Lag作为其ES,所以选择任务D的EF=7,因为没有Lag,所以任务E的ES=7.
逆推法
按照逆时间顺序计算最晚开始时间和最晚结束时间的方法,称为逆推法。
逆推法步骤如下:
我们继续通过逆推法来推导这个项目各个任务的最晚结束时间和最晚开始时间。
图中任务B有两个后置任务,则需要选择后置任务中最小的LS减去Lag作为其LF,所以选择任务D的LS=11,因为没有Lag,所以任务B的LF=11.
我们继续看网络图的关键路径,关键路径是没有浮动的路径,是最紧凑的路径,图中A->C->G->H是没有浮动的,所以是关键路径,那么他也一定是最长的路径,这个长度是18.
所以通过关键路径确定项目的完成时间是18。
总结
总之 关键路径方法主要是通过正推方法和逆推方法进行任务编排,正推方法确定每个任务的最早开始时间和最早完成时间,逆推方法确定每个任务的最晚完成时间和最晚开始时间。
到这里,第七章 第四节 第二小节 关键路径法就讲解完毕了!下一节介绍时间压缩法~
如果您觉得这篇文章有帮助到您的的话不妨点赞支持一下哟~~😉
后续将持续更新【软件项目管理初级学习路线】的全知识点,大家感兴趣的多多关注博主哟~
————————————————
网友评论