Wednesday, December 5, 2012

The Schedule – Dependency Chain


"Things derive their being and nature by mutual dependence and are nothing in themselves.”
                                                                                                              - Nagarjuna

In my previous post on scheduling basics, I listed the essential requirements to have a well-formed schedule, which is also the sequence for developing them:
  • WBS
  • Dependency chain
  • Task effort estimates
  • Resource assignments
  • Resource leveling
  • Risk buffers
This post will discuss the Dependency Chain.  The dependency chain obviously sequences the tasks in the order that you plan to perform them.  A well-formed schedule, though, adds some best practices to the typical attributes. 

A true dependency relationship between two tasks is when a work product output of one task is necessary to start or complete a second task.  When that condition is true, there is a dependency from the second task on the first task.  What this excludes are artificial or convenience “dependencies” to accommodate resource availability, resource leveling, or the PM’s view of “reality.”
Assuming you are using a decent scheduling tool, the tool has features to effectively address resource availability (calendars) and resource leveling.  Thus, if you use dependency chains instead of the appropriate features, you are diminishing the effectiveness of the tool to support your scheduling efforts and you are introducing complexities when conditions change (as they always change) and you have to reschedule.  To restate that:  if you follow the best practice, then you maximize the effectiveness of the scheduling tool and enhance your flexibility to respond to changing conditions.

As you will see over the next few posts, we will continue to build on the foundation of the WBS, now with the dependency chain, to develop the well-formed schedule.
Do you agree that task dependencies should be based on work products (including deliverables)?  Is there ever an occasion to base a dependency on anything else?

No comments:

Post a Comment