It’s one of those immutable laws: whenever a Dynamics NAV implementation project kicks off in July-August, it has to deliver (at least phase 1) before the Christmas/New Year holidays.
The first few times I was faced with this situation, I tried all the right things: prepared the project schedule; allocated resources; checked the critical paths; re-scheduled to get tasks running in parallel; and brought the delivery date back to where it could meet the deadline.
Fantastic, except that it rarely panned out that way, because of a simple, but often overlooked feature of projects – random events do happen that cannot be predicted in advance.
Project plans for complex activities such as implementing a new software system should be thought of as a ‘roadmap’ for how to get there, rather than a fixed prescription. We need flexibility to adjust the plan to work around the roadblocks and changes that inevitably happen.
The key to this flexibility is ensuring our people have some spare capacity, by not continually scheduling them at 100% utilization.
As Phillip Armour points out in a recent ACM article, simple queuing theory demonstrates how quickly tasks build up as utilization increases: at 80% utilization, on average a person will be working on one task with three unworked, at 95% utilization this increases to 18 tasks unworked on, and at 98% it jumps to 48.
This type of backlog can quickly derail a project due to task dependencies and “downstream effects”.
To allow for this queuing effect, Armour suggests including a workload buffer in your project plans so that project staff are not 100% allocated, and at peak times, such as in the lead up to the holiday period, monitor the work queue for your people – how many tasks are not being worked on – as well as what they are working on. To which I would add: resist all pressure from clients to compress the schedule unrealistically.
What’s your experience? Please comment below to share the scheduling strategies that work for you.