The project schedule plan is probably one of the most important project management assets a project manager has to develop, maintain and manage throughout a project. Why? Because compared to other planning documents -- such as the resources plan, costs plan or risk management plan -- a project schedule will generally have widespread visibility within the project's environment and among stakeholders.
For instance, your project sponsors will want to see your project schedule and understand whether you are on track to deliver it on time. The beneficiaries of your project will want to see it to understand your next deliverables or key milestones. Your core project team will seek it out to find out how work activities are planned and relate to one another, and how resources are allocated. And, probably most important, you as the project manager will need it to be your map throughout the project, guiding you to drive the project to its target.
Now, if your project schedule is incomplete or flawed -- for example, it's missing work tasks or it features wrong dependencies between project tasks -- you will most likely steer your project into a wall. And even if you put everything right into it (i.e., all work activities, the right durations, right resources assigned, right dependencies), that still might not be sufficient for a successful delivery. That's because, as you know, a project schedule is not a linear sequencing of work tasks that perform exactly as initially planned.
In addition, your project schedule will be subject to the project's challenges and constraints, such as resources scarcity, work overload, aggressive milestones or delays. It's these unexpected or imposed factors that will constrain your project schedule and demand that you react quickly, applying various tactics and techniques, to adapt the project schedule and make it ultimately work.
There are several techniques that can help in analyzing, adapting and improving a constrained project schedule. Among these, three stand out for their effectiveness:
- Resource leveling, to be used when you have resource constraints or are aiming for more efficient and effective resources utilization
- Schedule crashing, for reducing tasks' duration by applying multiple or better resources to the same tasks
- Fast-tracking, to reduce the project duration by overlapping tasks that otherwise would have been sequential and dependent on one another
In my next post, I'll dive deeper into what these three techniques are, when to apply them and how to do so.
How do you manage constraints to your project schedule?