3 ms·
Isn't there a bit of a trick here in knowing when is "as late as possible" and not "too late"? Does this not require knowing exactly how long everything will ta
by IanCal 10y ago
Isn't there a bit of a trick here in knowing when is "as late as possible" and not "too late"? Does this not require knowing exactly how long everything will take?
- bmh100 10y agoAnother way of saying this is, do not waste effort by starting early on non-critical tasks. This all has to do with the critical path, the series of sequential, dependent tasks that determine the minimum project length. Think of building a four-legged chair with multiple people (A, B, and C). You need to cut the wood into legs, a seat, and a back. You need to buy wood from the lumber yard, and buy screws and glue from the hardware store. You need to sand and finish the wooden pieces. You need to assemble the pieces with screws and glue. The naive approach would be to have everyone go buy materials (and wait for everyone to get back), then together cut the wood (and wait for everyone to finish cutting), then together finish the wood, then together assemble the chair. This takes a longer time, because people will wait at each step, if there is any difference in task completion time between people. The length of each stage is the maximum of each individual task completion time. The critical-path approach would be to send A to wood store. A returns and starts cutting leg 1, not waiting on B to return. B starts sanding the leg 1 completed by A, while A starts cutting the next leg, 2. C starts by finishing leg 1 after B finished sanding, while A starts cutting leg 3, and B starts sanding leg 2. Near the end, A has finished cutting the chair back, and goes to the hardware store to buy the screws and glue. A returns and starts assembling the chair as the pieces become ready. Note how much earlier all the wood was cut in the naive approach. This is "early starting". In the critical-path approach, the cutting of each piece by A was delayed until it was needed by B for sanding. Buying the screws and glue was delayed until much later, when they were finally needed for assembly. That is because the critical path is: (Buy Wood) -> (All Parts Are Finished) -> (Assemble Chair) Other tasks can be delayed as appropriate, when doing so allows more resources to be spent on the critical path. I.e., wait until you are almost ready to assemble the chair before you buy the screws and glue, as time is better spent on getting those pieces finished! I hope that makes sense.
- tychoman 10y agoThere is a bit of a trick, but there are ways to make it easier. This is why in the tweetstorm I said the various parts of critical chain have to be used together, like forces balancing a building. In order to use median (most likely) time estimates and late starts, you also must use buffers. Instead of putting a little bit of safety margin at every little step, which explodes the lead time of the project w/out actually reducing risk (since delays are passed on and early finishes are wasted, as the table-building ex above explains), w/ buffers you pool all the safety margin together, where it can be used by whoever actually needs it. This works better because Murphy always strikes one part of the project disproportionately, not every step equally.