How to create and use predictive project scheduling

I was a bit naïve when I accepted the challenge to manage my first software project. I didn’t quite understand the “wink-wink, nod-nod” I got from the software veterans when I began asking for their input to the project task detail and schedule. Now many years and many projects later, I understand their skepticism. They had too often been victims of schedules that were not worth the paper or time used to develop them. They had seen schedule chicken played by professionals and had worked countless hours of overtime trying to meet unrealistic, unattainable deadlines.

However, I continue to believe whole-heartedly in the value of predictive schedules. To me, a predictive schedule is one that accurately reflects what has happened in the past and is a good predictor of the future.  It gives a believable prediction of the project end date and an accurate level of effort estimate to completion.

What are the necessary pre-conditions for a useful predictive schedule?

Let me tackle the most challenging requirement first—corporate or organizational culture. If your company has a “shoot the messenger” ethic, then predictive scheduling is doomed! Like a military plan, the initial project schedule rarely survives contact with the enemy. Staff changes, requirements creep, and vendors miss shipment deadlines.  Your project schedule must be detailed enough to identify potential problems and dynamic enough that you can reforecast to accommodate the real world. AND, senior managers need to be willing to hear the impact of changes on the project schedule.

For predictive scheduling to be useful, there must be trust on all sides of the equation:

  • As project manager, you do the best you can to create an accurate and meaningful schedule of tasks with an estimated level of effort (LOE).
  • Developers and team members work hard to meet schedule requirements and accurately record their time to each task as well as update estimate to complete (ETC).
  • Management trusts that everyone involved is doing their best and reporting accurately.  They provide support when needed.

What content is required for a useful predictive schedule?

Developing a predictive schedule is a top down and a bottom up process. You must start with the top level vision and goals for the project to set expectations and scope.  Then each deliverable is broken down into tasks that require no more than one or two week’s time to complete (that task may include the effort of several people or it may require less than the full-time effort of one developer). The point is that you need to be able to assess the project’s status weekly.

Now we come to the one of the most powerful features of predictive scheduling—task dependencies. Your schedule must show these dependencies. What must be completed before “Task X” can begin (predecessors) and what tasks depend on the successful completion of Task X (successors). Getting the task dependencies correct is 50% of the requirement for creating a useful predictive schedule.

The other 50% is estimating the effort really required to complete the task successfully. As project manager, you will want the input of others on the project to define tasks, dependencies, and effort. Then, you have to make a judgment on their input. First, you need to make sure that there is enough detail so that the schedule can document the project status and second, you will likely need to adjust the estimated level of effort (LOE).

Why do I believe that the initial effort submitted by developers will need to be adjusted? Developers and other team members often make errors of omission and commission in defining LOE for a task. (Dan Mitchell offers some insight into what may be left out of developer’s estimates on his Software Developer’s Guidebook blog). Some may be too optimistic—assuming all of their time will be dedicated to writing code when in reality the schedule needs to include time spent in meetings, unit testing, and working with temperamental hardware and software. Or, they may assume that the level of productivity is the same for all developers or IT staff, when the truth is that some developers are significantly more productive than others (usually based on experience or skill).

Finally, either through misplaced self preservation instinct or lack of knowledge, developers may over-estimate LOE believing that if the estimate is cut during its migration through senior management reviews, they will still be able to get the work done because they padded their initial estimate.  So you, the PM, must assess the estimates and try to get them to be as accurate as possible!  No one said this was easy.

What benefits does a project manager receive from a real predictive schedule?

  • Ammunition to define and defend resources needed to be successful
  • Knowledge of project status with sufficient time to avert disasters
  • The ability to answer status and planning questions from senior management
  • A final project that predicts cost and schedule throughout the project’s life

One last thought: predictive scheduling tells a PM what he or she needs to know, not what they may want to hear.

Please comment and share your thoughts on predictive schedules.

 

(If you want more on why you need predictive schedule check out the earlier post at https://fearnoproject.com/2009/02/13/why-your-project-needs-predictive-schedules/)

Why your project needs a predictive project schedule

Have you ever been frustrated because you were sitting in a status meeting and the project schedule indicated you would be finished yesterday?!  Whatever happened to “truth in scheduling”?  A predictive schedule is one of the most powerful tools a project manager has. It provides essential information on status, flags conflicts before they happen, and provides backup when requesting resources.

Believing this, I am frequently baffled at the reluctance of some PMs to create or maintain a project schedule.  I remember years ago in the research lab hearing a senior developer say, only somewhat tongue-in-cheek when requested to provide a schedule for his project, “If I knew how long it would take, it would not be research”.

Maybe what I have seen is the reaction of PMs being burned by schedules that were imposed from “above” or were regarded as meaningless paper exercises required to fulfill contractual obligations with no apparent conformance to reality.  Does this sound familiar to you? Whatever the reasons, some PMs choose to steer clear of real predictive scheduling.

For those who spurn developing a project schedule, I can assure you that you are missing a key ingredient in managing your project effectively. Project schedules are your friend—not your enemy.  And yes, I have heard the people who say I don’t have time for project management and schedules – it gets in the way of my real work.  I call those people “one man projects!”

Here are some of the reasons I believe predictive project schedules are important:

  • A project schedule requires that you identify tasks and their relationship to one another—this is important for risk management, staffing, and sequencing.
  • Project schedules provide the only picture of what has happened (actual) and what is now planned. (assuming they are accurately updated)
  • Project schedules help forecast resource requirements and provide a visual representation of task dependencies that will help you sell your needs to senior management.
  • A project schedule gives everyone on the team insight into where the project is going and how their efforts impact outcomes.
  • A project schedule helps you keep track of accomplishments, needs, and compliance with requirements.
  • A project schedule gives you an easy to use method to evaluate the impact of changes and requirements creep.

I collaborated with my colleague John Rigoli on this subject in 2008 to help him prepare for a presentation at NASA.  Check out John’s presentation at NASA PM Challenge 2008 or download it at http://www.slideshare.net/NASAPMC/johnrigoli .

I feel so strongly about the importance and utility of predictive schedules to project management, that in coming posts I plan to talk about: the characteristics of a good project schedule, getting schedule buy-in, building meaningful dependencies and constraints, identifying risks and accommodating them, how to monitor status, schedule-based reporting, and using tools to build, maintain, and share project schedule information.
So what do you think?  Feel free to reply or suggest topics of discussion for the BLOG.

Many of you have asked if there is a video on the subject.  John and I collaborated on re-doing the presentation so – Here is John’s Video:

The Lazy Project Manager's Blog

The Home of Productive Laziness Thoughts

ProjectManagement.com

Thoughts, experience, tips and tricks on issues affecting managers and project management

A Girl's Guide to Project Management

Project Management musings for one and all

LeadingAnswers: Leadership and Agile Project Management Blog

Thoughts, experience, tips and tricks on issues affecting managers and project management

Project Management Hut

Thoughts, experience, tips and tricks on issues affecting managers and project management

Herding Cats

Thoughts, experience, tips and tricks on issues affecting managers and project management

beyondcenter

Pushing the Edges Out ...

projectxpert

Just another WordPress.com site