Critical Path Method (CPM) is a resource utilization algorithm for scheduling your project tasks. The objective in CPM is to:
- List all the tasks in the project with the dependencies defined between all the tasks
- List the time required (estimate) to complete each task
With this information, you can determine the critical path by identifying the longest start-to-end duration along with its “float”. Attention must be given to this critical path as any delays in this can result in a delay in the overall project completion date.
Step by Step
Step 1: List down all the tasks
Use Work Breakdown Structure to list all the tasks in the project along with appropriate sub-tasks. A work breakdown structure helps you pinpoint all the tasks in a project, making it both more manageable and measurable.
Step 2: Sequence the activities
Once you have the WBS in place, you need to identify the dependencies between the tasks and sequence them. For instance, which tasks need to complete before the next one can begin, etc.
Step 3: Activity Network Diagram
The Activity Network Diagram or Critical Path Analysis Chart will visually sequence all the tasks and note down the start and end times for each task. Techniques such as Forward Pass and Backward Pass needs to be done to identify the complete time and float.
Step 4: Identify Critical Path
Once the Activity Network Diagram can be completed, one can identify the critical path which needs to be sequenced correctly once the project starts so that there are no slippages.
Terminologies used in Critical Path Methods
PMI has a very good ready-reckoner for all the terms used in Critical Path Method and also detailed explanation about how to determine the critical path.
Critical Path Methods in Agile
Critical Path Method is very commonly used in traditional Waterfall-based projects. Is it relevant when using Agile? Mountain Goat Software has this described briefly.
Identifying critical paths within an iteration is straightforward and can be done informally during the sprint planning meetings. This is because an iteration will typically vary between 2 – 4 weeks and this makes it easy to identify critical paths.
Identifying critical paths for Agile projects, might require looking ahead several sprints (or months) by doing a rolling lookahead planning to identify potential dependencies between teams. This can help avoid surprises in critical paths.
Image Credit: [1]