Friday, August 19, 2011

Critical Path Mapping: A Basis for Agile Project Management

As certified project management professionals, we are intimately familiar with the processes necessary to define the critical path of a project.  How does that apply when managing an Agile project?  One of the best approaches I have seen is a two phased approach to critical path definition.  Phase 1 – Define the High Level Critical Path for the overall project.  Phase 2 – Define the critical paths within each sprint as you initiate each sprint.  This approach allows you to define the steps necessary to complete the overall project as well as have more control over each sprint by defining the critical path within each sprint.  Whether you define a single overall PERT chart for the project, or separate PERT charts for each sprint is your choice.  Let’s take a look at a simplistic example:

Project Goal:  To build an information management system that will allow the user to communicate with other users, schedule events, manage registration for events and post comments related to the events.

Overall Project Tasks

Task ID
Task Name
Construct Test Environment (Architecture)
Construct Production Environment (Architecture)
Construct Test Environment (Software)
Construct Registration Module
Construct Scheduling Module
Construct Communications Module
Test Registration Module
Test Scheduling Module
Test Communications Module
Migrate to Production
Announce Launch

Project PERT Network Chart
This network diagram demonstrates the project as 13 weeks in length. Tasks 2, 3 and 5 create the critical path.

Sprint 1 – PERT Network Chart:
This network diagram demonstrates this sprint as 4 weeks in length. Tasks 3b and 3e are the critical path.
Sprint 2 – PERT Network Chart:
This network diagram demonstrates this sprint as 4 weeks in length. Tasks 3a and 4 are the critical path.

This simple example helps demonstrate how the scrum master can define the critical path of the overall project as well as for each sprint.  By defining each sprints critical path, the scrum master can ensure that the appropriate resources are working each task.  Focusing on those critical path tasks allows the scrum master to prioritize impediment management, scope changes, issues and risks impacting critical path tasks on a sprint by sprint basis.

Conclusion:  If a project has many tasks with dependencies on other tasks, understanding the critical path affords the scrum master the ability to focus resources on those tasks that will impact the schedule this most and therefore improve each sprints success which leads to improved overall project success.


Search This Blog