Professional Documents
Culture Documents
The ABC of The Critical Path Method
The ABC of The Critical Path Method
The ABC of The Critical Path Method
Avoid bottlenecks
hest production schedule
Comprehensive look at the work ahead
Method
98
Critiea! Path Method 99
(3) The jobs are ordered — liuu is, tlicv must sbips. 1 bus all immediate predeeessors of a given
be performed in technological sc()uence. (For ex- job eonneet to a circle at iho tail of the job arrow,
ample, the foiindatio]i of a house nuist be con- and all immediate successor jobs emanate from the
structed before the walls are erected.) eirele at the head of the joh arrow. In essenee,
Ihen, a eirele marks an event — the completion of
all jobs leading into tbe eirele. Since these jobs are
What Is the Method? tbe immediate prerequisites for all jobs leading out
of (he eircle, the\ must ai! be completed before
The concept of CPM is quite simple and may any of the succeeding jobs ean begin.
best be illustrated in terms of a project «^raph. In ortler to accurately portray all predeeessor
The oraph is not an essential part of CP\1; relationships, "duinmv jobs" must often be added
co]iipiiter prour.tms hn\c been written which to the projeet graph iji the KeIlevA\ alker form,
permit ncccssar\ calculations to be nnule with- riie metliod described in this article avoids the
out reference to a j^raph. Nevertheless, the necessitv and comple\itv of dummv jobs, is easier
project oraph is valuable as a means of depict- to program for a computer, and also seems iin)re
in<;. \isually and clearlv. the complex of jobs in straightforwarti in explanation and application.
;i project and their interrelations:
In essence, the critical path is the bottleneck
first of all, eacb job necessary for tbe coniph;- route. Only by finding ways to shorten jobs
lion of a project is listed with a unii|iie identilVinj; alting the critical path can the dver all project
symbol {such as a letter or number), the time re" time bo reduced; the time requiret! to perform
(jiiired to complete the job, and its immediate pre- noncritical jobs is irrelevant from the viewpoint
re(|uisite jobs. IV)r eoinenience in ^;raphiii<;, and of total project time. 1 be frequent (and costly)
as a cheek on certain kinds of data errors, the jobs
iiia\ be arranged in "technological order," which practice of "crashing" nil jobs in a project in
means that no job ajipears on tbe list until all of its order to reduce Uital project time is thus un-
predecessors have been listed. "recJinolo«;ieal oriler- necessary. Fypically. only about i o % of the
ing is impossible If a c\cle error exists in (be job jobs in large projects arc critical. (This figure
data (e.g.. job a ]irecedes h, h jireeedes c, and c \\ill naturally \:\xv from project to jirojoct.)''Of
preeedes a). course, if some way is found to shttrton one or
Then eaeh job is drawn on the graph as a circle, more of tho critical jobs, then not only will the
with its identilVing s\mbol and time apjK-aring whole project time bc shortened but the critical
within the eircle. Se(iuence relationships are indi- path itself may shift and some previously non-
cated b\ arnnvs conneeting eaeh eircle (job) wilb critical jobs may become critical.
its immediate successors, with lhe arrows pointin*;
to the latter. I or convenience, all eireles with no
I'f'^'^f'-tt^'ssors are connecteii lo a eirele market^
"Start"; likewise, all eireles witb no suecessors are Example: Building a House
eonneeted to a eire'e marked 'T inish." (The "Start"
and •Tinisli" eireles ma\ be considered pseudo jolj^ A simple and fLUiiiliar example should help
of zero lime lengtb.) to clarify the notion of critical path scheduling
and the process of constructing a graph. The
Tvpieally, the graph then depiets a number dt project of building a house is readily analyzed
different "nrrow patbs" from Start to Finisb. Ilie
time required to traverse eaeli path is tbe sinii of bv the Cl'M technique ant! is typical of a large
the times associated with ;dl jobs on the path. The class of similar applications. While a contractor
critieal path (or paths) is the longest path (in time) might want a more detailed analysis, we will be
from Start to Finish; it indieates the minimum time satisfied here with the list of major jobs (to-
neeessary to complete the entire project. gether with the estimated time and the imme-
This method of depieting a project graph differs diate predecessors for each job) shown in Fx-
in some respeets from that used bv James F. Kellev nifiiT I.
Jr., and Morgan H. Walker, wbo, perhaps mon" \n that exhibit, the column "immediate prede-
than aii\one else, were responsihle for the initial
development of CI'\I. (For an interesting account cessors" determines the sequence relationships
of its carh histor\ see their paper, "Clritieal-Patb ol the jobs and enables us to thaw the project
I'lanning and Scheduling." ') In the widelv used graph. FxiHiJiT ir. Here, in each chxle the letter
KeJley-W alker form, a project graph is just the
ngs of the lui^tcm Joint Computer Cojifc-
opposite of tliat deseribed above: jobs are shovvn a^ c, Huston I W m l n r r-3, 195^,; set- also J.-,mcs t .
arrows, and the .lrro^vs are eonneeted \n means of KvUvy, Jr., Critical-1'i.th PlanninR nnj
eirdes (or dots) tbat indicate seciuenee relation-
296- ^2o.
100 Harvard Hiisiiiess Review
r I. SliOL L N C l : A M ) TIMI- IlKOU J H !• M F M 1 S Ol' example, that the brickwork (e) delays progress,
jons since work on a whole scries of jobs {p-q-v-w)
must wait until it is completed. But it would be
IMMEDIATE
PREDECESSORS
fruitless to lush the completion of the brick-
work, since it is not on tbe critical path and so
is irrclcvanL in determining total project lime.
EXCWATE ANO POUR fOOTERS
Shortening the Cl'
POUR CONCRETE FOUNDATION
II' the contractor were to use CPM tech-
ERECT WOODEN FRAME
INCLUDING ROUGH ROOF niques, he would examine the critical path tor
possible improvements. Perhaps he could assign
more carpenters to job d, reducing it from tour
INSTALL BASEMENT DRAINS to twd days. Then the eritieal path wmild
AND PLUMBING
change slightJv, passing tbrough jobs / antt 1;
POUR BASEMENT FLOOR instead of d. Notice that total project time
INSTALL ROUGH PLUMBING would bc reduced only one day, even though
INSTALL ROUGH WIRING
two days hati been shaved otf joh (/. Thus the
contractor must watch tor possible shifting ol
INSTALL HEATING AND VENTILATING
the critical path as he aflects changes in critical
FASTEN PLASTER BOARD AND PIASTER jobs.
(INCLUDING DRYING)
Shortening the critical path requires a con-
LAY FINISH FLOORING sideration of both engineering problems and
INSTALL KITCHEN FIXTURES economie questions. Js it physically possible to
INSTALL FINISH PLUMBING
shorten the time required bv critieal jobs (by
assigning more men to the job, working over-
FINISH CARPENTRY
tiine, using different et|uipment, and so on)?
FINISH ROOFING AND FLASHING If so, would the costs of speeduii be less than
FASTEN GUTTERS AND DOWNSPOUTS
the savings resulting from the reduction in over-
all jiroject time? CPM is a useful tool because it
LAY STORM DRAINS FOR RAIN WATER
quickly foeuses attention on those jobs that are
SAND ANO VARNISH FLOORING critical to the project time, it provides an easy
PAINT way to determine the effects of shortening vari-
ous jobs in the project, and it enables the user
FINISH ELECTRICAL WORK
to evaluate the costs of a "crash" program.
Two important applications of these Features
POUR WALKS AND COMPLETE
come lo mind:
LANDSCAPING
«! Du Pont, a pioneer jn (he application of CPM
to eonstruetion and lnaintenanee projects, was eon-
eernetl wi(b (be amount of downtime for mainte-
nance at its Louisville works, whieb produces an
before the comma identilies the job and the intermediate produet in the neoprene process.
number after the comma indicates the job time. Analv/ing (be maintenanee stbcdule bv Cl'M, Hu
Following tbe rule that a "legal"' path must I'ont engineers were at)le to eiil tlowntime for
alwa\s move in the direction of the arrows, we maintenrnee from 125 to 93 hours. CPM j'ointed
to i'urther retlneiiients that vvere expected to reduce
could enumerate 22 uni(|uc paths from Start to total time (o 7^^ hours. As a result, perFormanec
! inish, with associate times rangmg Irom a of the plant Improved hy about one million pounds
minhnum ol' 14 ^l^ys (path a-h-e'r-v-xv-x) to a in 1959. '^inc\ tbe intermediate was no longer a
maximum of -^4 days (path a-h-e'd-j-kd-n't'S-x). bottleneck in the neoprene proeess.
I h e latter is the critical path; it determines the
over-all project time antl tells us which jolis are il PI'UT (i.e.. Program Fvaluation Review Tech-
critical in their effect on this time. U the con- niquel a (echnique eloselv related to the eritieal
tractor wishes to complete the house in less than path method, is widely credited witb helping to
34 days, it would bc useless to shorten jobs not shorten by two vears the time originally estimated
on the critical path, rt may seem to him, lor for eonipletlon of the engineering and development
C.riliad Path Mel hod 10 |
n. I ' l i o 11 t I (.n.M
KEY ^ PATH
-JOB IDENTIFICATION
•JOB TIM£ REQUIREMENT
0 3 FINISH FINISH
' CARPENTRY PLUMBING
^ . M F I N I S H ELECTRICAL WORK
102 Harvard Hitsiuess Review
program for the Navy's Polaris missile. By pin- sors of each job and the time in minutes ((t perform
pointing tbe longest patbs through the vast maze of eacb job, is given in I XUIBIT HI.
jobs neeessary for completion of the missile design,
PF.KT enabled the program managers to eoneen- l'xniiiii III. l>viA roR i'KODUcrio>.' I'IUK:1'SS
trate their efforts on those aetivities that vitally
afEected total project time.-
DESCRIPTION
Even with our small house-building project,
bowever, the process of enumerating and meas- START
uring the length of every path through the- mazx GET MATERIALS FOR A
of jobs is tetlious. A simple method of Fmding
GET MATERIAtS FOR B
tbe critical path and, at tbe same time, devel-
oping useful information about each job is de- TURN A ON LATHE
POLISH B
Critical Path /Vlgorithm ASSEMBLE A AND B
Concept of Slack
Ex;imination of Hxniiu ] rc-
veals that some jobs have
early start equal to late it,
while others do not. The cl: Ter-
ence between a jobs early . lart
and its late start (or between
early linish and late Finish) is
called total slack (TS). Total
slack represents the max.iriumi
amount of time a joh mav be
delayed be\ontl its early start
without necessarily tlelaying lhe
project completion time.
We earlier definetl critical jobs
as l:h(.se on the longest path
through the projeet. That is,
FINISH critical jobs direetly alFect the
totiii projeet time. We can now
relittc the critical path tc the
concept of slack.
the right of the new job the smallest IS time
marked to the left of anv of its immediate sue- Finding ihc Critical Path
eessors. If the target date (T) equals the early linish
The logic of this is hard to explain in a few date ft)r the whole project (F), then allcritical
words, although apparent enough bv inspeetion. jobs will have zero total slack. There wiil bc at
It helps to remember tbat the smallest LS time of least one path going from Start to Finish that
the suecessors of a given job, if translated into includes critical jobs only, i.e., the eritieal path.
ealendar times, uoultl be the latest tinish time of
that job. If T is greater (later) than F, then the critical
j()bs will have totai slack equal to T minus F.
{^) Subtract from this number the job time and This is a minimum value; since the critical path
mark tbe result to tbe left of tbe job. includes only critical jobs, it includes those with
(4) Continue until Start has been reached, then the smallest TS. All noncrilical jobs will have
stop. greater total slack.
At the conclusion of this calculation the LF In ExMiiur v, the critical path is shown by
time for a job will appear to the right of the eirele darkening tbe arrows connecting critical johs.
which identiiies it, and the 1 S time for the job will In this ease there is just one critical path, and
appear to the left of (be circle. Tbe number ap- all critical jobs lie on it; however, in other cases
pearing to the rigbt of Start is the latest time that there may be more than one critital path. Note
104 Harvard P,asiiiess
r.xuii.ri \ C! v i . c t I \ i I O N O l i v i i : s r M ; i A\l) [ \ I I 1 IM*^I1 liest of lhe FS times ol all its im-
I i M i :s I o i l I \ c II J O 1 - . mediate' successors. Thus, in FK-
iiiMi I V, job /; has FS of 10, and
START job i( bas FS ol" i',o. All other jobs
bave zero free slack.
SigniliLance ol Slack
\^ hen a job has zero total
slack, its scheduled start time
is automatically llxed (that is.
IS IS); antl to delay the cal
culatetl start time is to delav the
whole jirojcct. it)bs with jiosi-
tive total slack, bowever. allow
lhe scbeduler some discretion in
setting their start times. This
llexibilitv' can usefully be ap-
plied to smootbing work seiied-
ules. l*eak loads that tlcvclop in
a particular shop (or on a ma-
chine, or within an engineering
tlcsign group, to cite otber ex-
amples) mav he relieved bv shilt
ing jobs on tbe peak days lo their
KEY late starts. Slack allows tbis kind
di' juggling witbouL all'ectiniii
...Si* CRITICAL PATH
project tinte/'
^JOB IDENTIFICATION Free slack can bc used elfec-
T-JOB TIME livelv at the operating level. For
\ REQUIREMENT
\
example, il' a job has free slack,
\
V Y ^ FINJSH the loreman may bc given some
lioo.iooi t|Q3EE [ START 207^ ilexibility in deciding wben to
start the job. Fvcn if he delays
FINISH 1 LATE /LATE
EARLY EARLY lhe slart bv an amount equal to
for less than) the free slaek. the
delav will not allect the start
times or slack ot' succeeding jobs
that T - F; thus the critical jobs have /cro total fwhicb is not tiue ol jobs that have no free
slack. Job h has FS - n>. and job d has TS - slack). Tor an illustration of these notions, we
30; either or both of these jobs could be delayed retmn to our housebuilding example.
by these amounts ot: time without delaying the
jiack to the Contraclor
project.
Another kind of slack is worth mentioning. In I'xmiui VI, we reproduee the diagram of
Free slack (FS) is the amount a job can be de- house-building jobs, marking the PS and LS to
hned without delaying the early start of any the left, and tbe \X and FF to the right of
other job. A job w ith ]>ositive total slaek may or eaeh job Mor example, "o;^" and '•4;7" on
may not aiso liave free slack, but the latter never either side of the /;,4 circle). We assume
exceeds the former. For purposes of computa- tbat ct)nstruction begins on day zero and must be
tion, the free slack of a job is tielined as the dif- completed by tlay 37. Total slaek for each jt)b is
ference between the job's FF time and the ear- not marketl, since it is evident as the difterenco
between the pairs of numbers ES and LS or EF
•••• Tor a method for smoothing operations in a jol) shop,
based on CPM iind the use of slack, see V. K. Levy. G. L. antl LF. However, jobs that have positive free
Thompson, and ]. D. Wiest, "Multi-ship, Multi-Shop slack are so market!. There is one critical path,
Production Smoothing Algorithm," Narcil Logisttcs Re- which is shown darkened in the diagram. All
search Quarterly, March 9. 1962.
Critical Path Method lOS
l:\nnin \ i. i I.IIAIMI VV J J U S r \ I ! [ w n M M S H IIMIIS
KEY CRiTtcftt mn
tlFia
REQUmEM£NT
START Alf
fS=f R l l SUCK
FSM
134:371
FINISH
106 Harvard Business Piei'ieir
eritieal jobs on this path have total slack of three 3. I b e list of iirei"e(|Liisi1es for a iob i n a \ in-
davs. eluilc m o r e t h a n t b e i i m n c t l i a i e p i c t e t i u i s i t e s : e-^.,
job (/ is a p r e d e c e s s o r ol' /;, /; is a p r e d e e e s s o r (»f r ,
Several observations can be drawn immedi-
a n d a ami /' both a r e p r e t l e c e s s o i s of- c.
atelv' from the tliagram:
4. S o m e |iredecessor; r e l a t i o n s h i j i s mav l)e o \ e r -
(1) Tiie contractor coultl postpone starting the looked.
house three d a \ s and still complete it on scliedule. 5. S o m e p r e d e c e s s o r r e l a t i o n s h i p s mav he listed
barring unt'oreseen dillieulties (see the tliH'erenee
tbal iwc sp
between earK antl late times at tbe I'inisli). Ihis
would reduce tbe total slaek ol' all jobs bv three I low can uianageinent deal with these prob-
davs, and lieiite reduce TS for eritieal jobs to zero. lems? W e sball e x a m i n e eacb brieHv in t u r n .
(2) Several jobs b a \ e free slaek. Thus the
li)h I iii/cs. An a c c u r a t e estimate of total proj-
contractor eotikl delav the eompletioo of / (rough
wiring) bv two davs, g ' t h e basement floor) b\- one cet time ilejK'ntls, of course, on a c e u r a t e joli-
(lav, /; (rough plumbing) by four ilavs. r (the .storm timc data. CU'\I eliminates t h e necessilv (antl
drains) bv 12 davs, and so on — vvitlioul alfecting expense] of careful time studies lor all jobs.
sueeeediiig johs. InsteatI t h e following pi'ocetkire can he iisetl;
(3) \~hv series of johs e (brickwork), p frool'- • (iiven roii^ib time estimates, construct a C.'IVNf
ing), q (gutters), v (grading), and w (landscaping) g r i i | i b of llie [Tiojeet.
liavc a comfortable amount of total slaek (nine
• I h e n those jobs t h a t are on t h e c r i t i e a l [latb
days). I'lie contraetor can use these and other slaek
(to^etJKT w i t h johs t h a t h a v e verv small total slaek,
jobs as "fill in" jobs for workers who beeoine a\ ail-
iiHheatin,i; that thev ai'e iieavlv c r i t i c a l ) c a n he m o r e
able wben their skills are not needetl for currentlv
e l o s e h c h e c k e d , t h e i r l i m e s re-estini.iletl, a n d an-
critieal jobs. Ihis is a simple application ol' work-
o t h e r C P M g r a p b c o n s t r u c t e d w i t h t b e refined d a t a .
load smootbing: juggling the jobs with slaek in
order to ITCIUCC peak tiemands for certain skilltxl • If t b e t ritieal |Kith has c h a n g e d to i n c l u d e johs
workers or machines. still h a \ i n g r o u g h t i m e e s t i m a t e s , i h e n t h e process
is r e p e a l e d .
11- the contractor were to elTect changes in one
or more ol' the critical jobs, by contrast, tbe cal- In many projeets studied, it bas been found
culations would have to be perl'ormetl again. tbat onlv a small fraction oi' jobs arc critical; so
This he ean easily ilo: but in large projeets with it is iikdv that celincd lime studies v\ ill be needetl
complex set|uente relationships, hand caleula- I'or relativeU few jobs in a project in ortlcr to
tions are considerably more difficult and liable arrive at a leasonablv accurate estimate ol the
to error. Computer prt>grams have been devel- lotal project time. C'PM thus can be used to re-
oped, however, I'or ealculating I'S, 1 .S. l'l-, L I , duce the problem of 1 v pe 1 errors at a small
TS, and FS for each job in a project, given the total eost.
set ot" immediate prcret|uisites and the job times Piercijaisites. A computer algorithm has been
I'or eaeh job.' tieveloped to eheck for errors of Types 2 antl -;
above, fhc algorithm (nientioned in footnote
Handling Data Errors 4) svslematicallv examines the set of prere()ui-
sites lor each job am.! cancels from the set all but
lul'ormation coneerning job times and pre- immediate predecessor jobs. When an error ol
decessor relationships is gathered. Ivpicallv. by Type 2 is present in the job data, the algorithm
shoji loremen, scheduling clerks, or others closely wiil signal a "cycle crrDr" anil print out the
associated with a project. It is conceivable that e\cle in c|uestion.
several kinds of errors may occur in sueh job Wroiiii, or Missiii'J, iaets. Frrors ol' Tvpes 4
data: antl 5 caiuiot he tliscovered In computer rou-
1. The estimated job times mav be in error. tines, inslcatl, manual checking (perhaps bv a
2. The predeeessor relationship mav contain conimittcc) is nccessar\ to see ihat prerequisites
cycles: e.g., job a is a predecessor for /;, /) is a are aeeurately reported.
pretleeessor for c, antl c is a predeeessor for a.
' An aljiiirithm nu which onf such computer pn)sr:im Cost C'alciilatJotis
is based is discussed by 1. K. t.evy, C. L. 'I hompson, and
). D. Wiesl. in chapter 22. "Mathenuitical Basis (it tlie The cost of carrving out a project ean be
iCritical Palh Melhnd," hidnsirUi} SchcJidhr^ (see Au-
thors' Note, p. <;H).
readilv calculated Trinn the job data if the eost
Critical Path Method 107
ol doing eacb job is includet! in
tbe data. If johs are tlone bv
crews, and the speetl with which
the joh is done dcpentls on the
crew si/c, then it is possihle to
shorten or lengthen the project
Lime hy adding or removing men
Irom crews. Other means for
compressing job times might al-
so he Found; but any speedup is
likely to carry a price tag. Sup-
pose that we assign to each jctb
a "normal time" and a "crash
lime" and also calculate the asso-
ciated costs necessary to carry the
job in eacb tinii'. If we want lo
shorten the project, we can as-
sign some of the critical johs to
their crash time, antl compute
the eorrespontling tlircct cost. In
litis v\ ay it is possible to calculate
lhe cost of completing the proj-
cet in various total times, with
the direct costs increasing as the
over-all time decreases.
Adtlcd to tlirect costs are cer- TOTAL PROJECT TIME
•' See A. C l i i i r n c s :ind \ V . W . O x i i ' e r , "A ^et^^(lrk Iiiter- Path Selicduliiii;," I on null cf hnliislrial rirj,iiiccriir-[,
PK'talion a n d a D i r e c t e t l S u h - O u a l Mjiorithm for t l i t i e a l