Project Schedule Quality 101: 14 Ways to Improve Your Project Schedule

microsoft project schedule quality

Welcome to the first chapter of our new blog series: Project Schedule Quality 101

I’ve been thinking a lot about schedule quality lately as I’m integrating one heck of a project schedule that involves 5 different vendors, 3 project managers and a lot of scope.  I’ve received multiple vendor schedules and have been adding the integration tasks to my own schedule.

How do you know if your schedule or even the vendor’s schedules are any good?

If you ever received another project manager’s schedule from another vendor or another team member, how do you measure project schedule quality?  A lot of PMs rely on experience and look for a few schedule characteristics such as assigned resources, milestones, accurate dates and a logical sequence of tasks.  Your organization may even have a formal checklist to define schedule quality.

A few of my favorite poor schedule quality checks include:

  1. Summary tasks with a predecessor
  2. Summary tasks with resources assigned
  3. Milestone tasks with a duration greater than zero
  4. Tasks missing resource assignments
  5. Tasks missing a project baseline
  6. Resource allocation is realistic

These are just a few of the characteristics I look for in vendor schedules and even my own project schedules.

Wouldn’t it help if there was a formal project schedule quality guideline?

It always helps to have a formal guideline and the Defense Contract Management Agency’s (DCMA) provides a 14-point assessment that can be applied to evaluate project schedule quality. The DCMA is a Department of Defense organization that works with suppliers to manage the U.S. Federal Government projects.

The DCMA only evaluates tasks in the project schedule that are valid tasks.  Summary tasks, subprojects, zero duration tasks and formal milestone tasks are removed from the analysis.  The DCMA provides 14 different schedule quality checks that I’ve divided into project schedule development and project schedule management categories.

The 14 DCMA project schedule quality checks include:

Schedule Development Quality Checks

  • Project Schedule Quality Check #1: Missing Logic
  • Project Schedule Quality Check #2: The Lags Check
  • Project Schedule Quality Check #3: The Leads Check
  • Project Schedule Quality Check #4: Relationship Type Check
  • Project Schedule Quality Check #5: The Hard Constraints Check
  • Project Schedule Quality Check #6: The High Float Check
  • Project Schedule Quality Check #7: The Negative Float Check
  • Project Schedule Quality Check #8: The High Duration Check
  • Project Schedule Quality Check #9: The Invalid Dates Check
  • Project Schedule Quality Check #10: The Resources Check

Schedule Management Quality Checks

  • Project Schedule Quality Check #11: The Missed Tasks Check
  • Project Schedule Quality Check #12: The Critical Path Check
  • Project Schedule Quality Check #13: The Critical Path Index
  • Project Schedule Quality Check #14: The Baseline Execution Index

Let’s dive in and take a closer look at these project schedule quality checks.

Project Schedule Quality Check #1: Missing Logic

The missing logic check determines if any tasks are missing a successor or a predecessor.  Ideally, all activities should have one predecessor and a successor task in the schedule except for the first and last task.

project schedule quality missing predecessors

 

In actual practice, you’re going to have tasks that start on a given date and don’t necessarily have a predecessor.  The task may be related to an external vendor providing a deliverable or delivering a product.  The lesson learned is to avoid  orphaned tasks as it becomes difficult to determine a project’s critical path.  A quality schedule should not have more than 5 percent of its tasks missing the predecessor and successor logic.

Project Schedule Quality Check #2: The Lags Check

A lag is a an intentional delay in the project schedule.  In Microsoft Project, you a 2 day lag looks like:

project schedule quality lag check

By minimizing the use of lags, the critical path calculation is improved. A quality schedule should have fewer than 5 percent of the tasks with lags. Instead of using a lag, project managers should add another task for the lag duration and during project execution, this delay can be reduced if needed.

Project Schedule Quality Check #3: The Leads Check

A lead can be used to pull a task ahead in the schedule.  The Leads check looks for negative lags otherwise known as leads in the project schedule.  Leads don’t make much sense to me as most schedules should follow a Finish-Start relationship.  In this example, if a task should start earlier, than the preceding duration should be smaller.

project schedule quality lead check

You want to be able to calculate the critical path easily and adding leads can negatively impact the project’s critical path.  In actual practice, I’ve never used a lead although I have used lags to “tweak the schedule”

Project Schedule Quality Check #4: Relationship Type Check

90 percent of all the tasks in the project schedule should have  Finish to Start relationships.  Microsoft Project provides multiple relationship types including Finish to Start, Start to Start, Finish to Finish and Start to Finish tasks.

project schedule quality relationship check

The default relationship type is a Finish to Start relationship.  Using Finish to Start relationships provides a logical flow to the schedule.  Although there may be situations where a Start to Start relationship is needed, I still prefer to keep the Finish to Start relationship in the schedule.

Project Schedule Quality Check #5: The Hard Constraints Check

Project managers should build a dynamic schedule.  If a duration on the critical path changes, then you’d expect the finish date to adjust by the same duration.  However, I’ve seen a lot of project schedules that follow a “pick a date” project management approach.  The “pick a date” often results in a hard constraint that indicate a task must finish on or start no later than a specific date.

project schedule quality hard constraint

In Microsoft Project, a hard constraint is any task that has a Must Finish On, Must Start On, Start No Later Than, or Finish No Later Than constraint. You ideally want your schedule to be dynamic so date change flows easily when the project is updated.  In a constraint based schedule, if the date exceed the constraint you’ll receive that annoying warning message.

project schedule quality hard constraint error

In actual practice, even I have hard constraint tasks.  This usually occurs when I have an external vendor deliverable due.  A solution to the hard constraint is to use a deadline to act as an alert to the project schedule.  In the case of  a vendor providing a deliverable, I could change the actual start date and schedule the task from that point forward.  Ideally, a quality schedule will not have more than 5% of its tasks with hard constraints.

Project Schedule Quality Check #6: The High Float Check

Schedule float is the slack in the project schedule.  It represents the total amount of time a task can be delayed without causing a delay to the project.  The high float check looks for any tasks with a total float greater than 44 working days.  If you have over 44 days of float in a task, it is an indicator that a predecessor or a successor is missing from the project schedule.

project schedule quality high float

If 5% of your schedule consists of high float tasks, you need to review any missing predecessors.

Project Schedule Quality Check #7: The Negative Float Check

The Negative Float Check identifies tasks that have a total float less than zero. This check helps identify any tasks that may impact the completion of other tasks in the schedule.  There should be zero tasks with negative float.

Project Schedule Quality Check #8: The High Duration Check

A best practice in project schedule management is to break down tasks into tasks with durations no greater than 2 weeks.  I’ve seen some project schedules with task durations of several weeks and even several months.  When I see these higher durations, it is an indicator that the project manager needs to decompose the tasks into greater detail.   The high duration check looks for tasks that have a baseline duration greater than 44 days.

project schedule quality high duration

Ideally, the project schedule should not have any high duration tasks.  However, 5% is an acceptable schedule quality guideline.

Project Schedule Quality Check #9: The Invalid Dates Check

The invalid date check looks for invalid forecast dates and actual dates based on the project status date.

Invalid Forecast Date

The invalid forecast date assumes an unfinished task cannot start or finish BEFORE the project status date.  A task should have a forecast start and finish dates in the future relative to the project status date.  You’ll likely find a lot of these incomplete tasks if the forecast start and finish dates need to be updated.  In Microsoft Project, you need to reschedule incomplete work so the forecasted start and finish dates adjust.  I’ve used other online project management tools like LiquidPlanner that automatically update and reforecast the schedule.  If you’re using Microsoft Project, you need to reschedule the unfinished work.

project schedule quality invalid dates

Invalid Actual Date

The invalid actual date check looks for tasks that have an actual start of finish date AFTER the project status date.  A project schedule shouldn’t have an actual start or actual finish date in the future.  All actual start and finish dates should be less than or equal to the project status date.

There should be zero tasks that fall into this category in a quality schedule as accurate dates are important for solid project schedule management.

Project Schedule Quality Check #10: The Resources Check

The resources check identifies all the tasks that do not have resources assigned in the project schedule. When project schedule grow beyond a handful of tasks, it is easy to forget resources.  For individual tasks, resources need to be identified for proper accountability and scheduling.  Its impossible to resource level a task without a resource.  

project schedule quality tasks missing resources

A high quality schedule has all resources assigned to the tasks in the schedule.  If you’re managing cost resources separately in a spreadsheet, then I’d agree cost resources could be removed.  For the usual people “labor” resources, every valid task should have an assigned resource.

Project Schedule Quality Check #11: The Missed Tasks Check

This quality check is the “late finishes” check.  It identifies any task that was scheduled to complete by the project status date and finished after the baseline finish date. These types of completed tasks are known late finishes. The tasks did not complete on time but they did eventually finish.  Projects will have late tasks and all of my projects have had late tasks.  The key is to ensure your forecasted schedule re-aligns to the baseline schedule as closely as possible.

project schedule quality missed tasks

The Missed Task check helps determine how well the project schedule is performing against the baseline project schedule.  The number of missed tasks should not exceed 5% of all the tasks in the project schedule. If the metric exceeds 5%, you really need to assess the reliability of the schedule and review its critical path.

Speaking of the critical path …

Project Schedule Quality Check #12: The Critical Path Check

The Critical Path Test Check assesses the project schedule network integrity by increasing the duration of a critical path task by an enormous amount.  In this check, you’ll find a task on the critical path and increased the duration to 600 days.  Since the task is on the critical path, you’d expect the project delay to also increase by 600 days as you’ve increased the duration of a task on the critical path.  The schedule passes the critical path test if the project finish date matches the added duration date finish date.

I’ve seen project schedules with multiple critical paths and you want to ensure the critical path integrity remains since you should be tracking all tasks that form the critical path.

Project Schedule Quality Check #13: The Critical Path Index

You can tell schedule people like math.  With earned value metrics and variance calculations, it is no surprise that someone would think of the Critical Path Length Index.  This index determines if the project finish date is realistic given the forecasted finish date.  The actual formula for the  critical path length index is calculated using the formula (Critical Path Length + Total Float) / (Critical Path Length). If the value is greater than 1.0, then the project finish date can be considered realistic given the forecasted finish.

Personally, I would just look at the critical path in the project schedule and determine if the forecast meets the baseline date within an acceptable limit.

Project Schedule Quality Check #14: The Baseline Execution Index

If you like earned value, then you’ll find the baseline execution index (BEI) useful.  The BEI is like the Earned Value’s Schedule Performance Index as it compares the number of completed tasks to the number of tasks planned to be completed by the project status date. The BEI is calculated # of Complete Tasks / BEI Baseline Count and should be greater than 1.0.

Wow…That’s a lot of quality checks.  How can you assess all of these quickly?

I didn’t write 2000+ words just to tell you about these project schedule quality checks.  That wouldn’t be very tactical or nice of me!

In this article series, I’ll provide you with all the Microsoft Project tutorials you need to quickly interpret and assess your project schedule.  By applying the techniques in this series, you will be able to assess project schedules and identify schedule quality problems.

Microsoft Project Schedule Quality Tutorials

Tactical Project Management Project Schedule Quality Checks

DCMA Project Schedule Quality Checks

  • Project Schedule Quality 106: How to Identify the Total Tasks
  • Project Schedule Quality 107: Missing Logic Filter
  • Project Schedule Quality 108: The Lags and Leads Filter
  • Project Schedule Quality 109: Relationship Type Check
  • Project Schedule Quality 110: The Hard Constraints Check
  • Project Schedule Quality 111: The High Float and Negative Float Filter
  • Project Schedule Quality 112: The High Duration Check
  • Project Schedule Quality 113: The Invalid Dates Check
  • Project Schedule Quality 114: The Missing Resources Filter
  • Project Schedule Quality 115: The Missed Tasks Check
  • Project Schedule Quality 116: The Critical Path Check
  • Project Schedule Quality 117: The Baseline Execution Index
  • Project Schedule Quality 118: Automating Project Schedule Assessment

Photo Credit: Jason Taellious

About Andrew Makar

My official bio is I'm an "IT Director with delivery experience across projects, programs and portfolios in Automotive, Financial and Marketing industries". I've enjoy putting project management theory into real-world practice and over the years I've published and taught my approaches to Tactical Project Management.When I'm not working, writing, or teaching, I'm hanging out with my kids and learning the occasional card trick or two.

5 Responses to Project Schedule Quality 101: 14 Ways to Improve Your Project Schedule

  1. Roman December 8, 2014 at 12:40 pm #

    Hi Andrew!

    Very interesting, but
    Could you clarify please, how leads and lags can impact the critical path calculation?
    I can’t make any example at MSProject, when CP calculated incorrectly because of leads and lags.

    In general I agree that too many leads and lags makes schedule too complex and hard to manage.

    BR,
    Roman

    • Andrew Makar March 11, 2015 at 1:18 pm #

      Hi Roman

      My view is the leads and lags are helpful “nudges” to a schedule but it is better to have a buffer task so teams can clearly see the buffer vs look for the dependency with a lead or lag notation. I just read a post on pmconnection.com that highlighted how to add a dynamic buffer that automatically adjusts as time elapses. Both approaches are more clear than a lead/lag.

      From a CP view, the net impact is the same but it becomes a readability an traceability issue.

  2. William July 30, 2015 at 12:55 am #

    July 29, 2015

    Andrew,

    My name is William Birmingham, and I am a displaced program manager who landed a short-term contract helping a local company stand-up a PMO. As part of that effort, I have been asked to evaluate and improve several of their schedules. Having worked on many DoD contracts, I myself understand schedules and EVM, but am not a scheduler/planner pre say. I am kind of new to the whole making schedule(s) thing.

    I do have many DoD guides and documents including DCMA’s Earned Value Management System (EVMS) Program Analysis Pamphlet (PAP).

    I was searching the Internet looking for an inexpensive software tool that I could run project schedules against and perform DCMA’s 14-point assessment, when I stumbled across your site.

    I was excited to learn you could create custom filters and check the 14-point assessment. I see you have a series of articles on this topic. I was able to find Project Schedule Quality articles 102, 103, and 104, but can’t find the other articles in the series. Are they still out there somewhere on your website, and if not, is there any chance you would be kind enough to provide them to me?

    Much thanks,
    William Birmingham
    wbirmingham@cfl.rr.com

    Microsoft Project Schedule Quality Tutorials

    Tactical Project Management Project Schedule Quality Checks
    Project Schedule Quality 102: Invalid Summary Tasks Filters
    Project Schedule Quality 103: Invalid Milestone Filters
    Project Schedule Quality 104: Missing Baseline Filter
    Project Schedule Quality 105: Overallocated resource filter

    DCMA Project Schedule Quality Checks

    Project Schedule Quality 106: How to Identify the Total Tasks
    Project Schedule Quality 107: Missing Logic Filter
    Project Schedule Quality 108: The Lags and Leads Filter
    Project Schedule Quality 109: Relationship Type Check
    Project Schedule Quality 110: The Hard Constraints Check
    Project Schedule Quality 111: The High Float and Negative Float Filter
    Project Schedule Quality 112: The High Duration Check
    Project Schedule Quality 113: The Invalid Dates Check
    Project Schedule Quality 114: The Missing Resources Filter
    Project Schedule Quality 115: The Missed Tasks Check
    Project Schedule Quality 116: The Critical Path Check
    Project Schedule Quality 117: The Baseline Execution Index
    Project Schedule Quality 118: Automating Project Schedule Assessment

    • Andrew Makar July 30, 2015 at 1:10 pm #

      Hi William – Thanks for the comment. I am building out more of these tutorials and filters. I’ve been busy with a few projects but I will be adding more tutorials soon!

      Thanks!

      Andy

  3. Carla November 5, 2015 at 3:31 pm #

    I was wondering if have VBA code that can reflect the count of relationships by each type of relationship – i.e. SS, FS, SF, FF? I have found code that reflects the total count of relationships, but can’t figure out how to show it based on a filter and each type. Here’s is what I’ve found for the total count:
    Sub CountDependencies()

    Dim i_RelationshipCount As Integer
    Dim tsk As Task

    i_RelationshipCount = 0

    For Each tsk In ActiveProject.Tasks
    If Not tsk Is Nothing Then
    i_RelationshipCount = i_RelationshipCount + tsk.PredecessorTasks.Count
    End If
    Next tsk

    MsgBox i_RelationshipCount & ” dependencies/relationships exist in this schedule.”

    End Sub

Leave a Reply