How to Reverse-Engineer a Microsoft Project Schedule

3940031572_a5b70d59fe_o

Steven Covey’s brilliant book, The 7 habits of Highly Effective People, outlined seven key steps. One of those steps was to start your day with the end in mind. In project management, this is a familiar scenario, where senior management has given a target or a goal with the end date and — in some cases — the budget laid out. Now the project manager has to figure out how to deliver this. In this article you’ll learn how to start your project planning with a finish date first and then reverse engineer your schedule backwards to a start date.

So let’s get started. There are a few key ingredients needed to make this work.

  • An end date;
  • Some version of Microsoft Project, whether on your desktop or online (This will work with any version of Project from Project 98 forwards.); and
  • A list of key activities the project will encompass.

It’s common for project managers and schedulers to start with a schedule and wrestle through some of the obvious scheduling choices; but if you want the fewest numbers of clicks, avoid this common mistake in schedule creation: In the following diagram, you can see that I am showing the Task Entry view, where the Gantt Chart, the Task Sheet and the Task form are all close together and I have circled three key areas.

These are the Predecessor relationships (there are certainly many more ways to edit this), but essentially we are showing a link (and the type of link) between task 1 and task 2.

Tim_Runcie_Reverse_engineer_figure_1

 

 

Typing, clicking or double clicking any of these areas will allow you to drill down and select a different type of relationship. Typically, in creating a schedule, we want to link activities together. And by clicking, typing or double clicking, you are presented with several choices for establishing a relationship.

In this next diagram, you will see a relationship type called Start-to-Finish.

Tim_Runcie_Reverse_engineer_figure_2

This can be used for reverse engineering, but it doesn’t allow your schedule to be easily managed in a forward progressing one, so avoid this.

Why? Because the idea is that the start of one task will trigger the finish of another task. If you were building your schedule suing Start-to-Finish, you would be listing the finish date as Row 1, and then linking the next-to-the-last task as the second row in the schedule. This would leave you with the finish of your Project Schedule in row 1 with the following rows evolving to the beginning of your schedule, which could be row 279. As you can see with this next diagram, it’s not the easiest to manage a schedule.

Tim_Runcie_Reverse_engineer_figure_3

 

 

Now that we’ve identified a common pitfall, let’s look at how to get this working correctly! Armed with your project end date or go-live date, you can start planning backwards this way.

Click on the Project Tab (on the Ribbon) and select the Project Information button.

Tim_Runcie_Reverse_engineer_figure_4

 

 

 

 

 

From the Project Information dialog box, choose the Schedule from dropdown choice and select Project Finish Date. This will allow you to enter your end date directly into the Finish Date field (which was greyed out before).

Tim_Runcie_Reverse_engineer_figure_5

 

 

 

 

 

 

 

 

 

 

 

 

Now start building your project schedule normally. You might want to try this approach:

  1. Enter the Finish date into row 1.
  2. Insert a new row above row 1, forcing the End Date Milestone or Activity to move to row 2. This essentially allows you to plan backwards, but to lay out the schedule as if you had typed it from the start.
  3. With each successive task you add, you will link and create the relationships in the normal way, but as you enter durations and link activities, watch your Project Start date continue to move backwards.

In the diagram below, I used the same tasks as I used in the reverse-engineered schedule above. However, adding them in this order created a Project Start task at row 1 with the Project Complete task at the end of the schedule.

Tim_Runcie_Reverse_engineer_figure_6

 

 

Let’s add some final touches here.

With the end date you should put a deadline as you will most likely be moving or shortening the schedule, which means you’ll be tightly pressed in managing the schedule. Double-click on the last task or milestone (Project Complete) and click on the Advanced tab.

Choose the end date Deadline. When you flip your schedule around, this will set a monitoring point that will help you later should your tasks move beyond the end date of the project. You can see this in the next picture.

Tim_Runcie_Reverse_engineer_figure_7

 

 

 

 

 

 

 

 

 

 

Once you have that chosen, click on the OK Button.

In the screenshot below, you can see the end date now has a deadline icon on it. This will stay there as you move the project start date back, and it will help you identify slippage with an alert.

Tim_Runcie_Reverse_engineer_figure_8

Now if you started managing your project schedule, you would find that every time you typed a new duration, your project schedule would continue to push the start date back. What we need to do is tell Project what the new start date of the project is and to start scheduling from the start and move the end dates out.

Remember how we set up the reverse engineering scheduling mode earlier? We are going to follow these steps again but choose to schedule from the start date.

Click on the Project tab and select the Project Information button on the ribbon.

Tim_Runcie_Reverse_engineer_figure_9

 

 

 

 

 

Select the Project Start Date from the Schedule From dropdown box. Make sure to choose the Project Start Date.

Click the OK Button and you will now be able to manage your schedule normally, with the durations moving out the end date vs. the start date.

Tim_Runcie_Reverse_engineer_figure_10

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

As you make changes in your schedule, your deadline will help show when you will be moving over the set finish date.

You are now ready to do reverse engineering quickly and effectively. Remember, the key steps in this planning technique is to remember to flip the schedule back around to get the benefits of both backwards planning and forward dynamic scheduling.

 

A version of this article first appeared on the Advisicon blog.
Image courtesy of Quinn Dombrowski CC 2.0

Next Webinar

Cost vs Schedule Risk Analysis for Proposals

Tim Runcie, PMP, MCP, MCTS, P-TSP, MVP is one of 6 Microsoft Project MVP’s in North America and has held that title for 17 years in a row.  A seasoned veteran of complex programs, and portfolio management systems, Tim works with companies like Microsoft on next generations of Project, Program, and portfolio technologies.  Tim is an accomplished speaker, consultant, and educator, supporting the project management community for over 25 years. As the President and founder of Advisicon, Tim has written over 38 books on PM methodologies and technologies. Advisicon has recently added a non-profit division focused on helping faith-based and 501-C3 organizations with implementing and training on available business solutions and providing business coaching or process automation with the mission of “Serving those who Serve.” Free resources are available at www.YouTube.com/Advisicon or on Tim’s LMS, www.Advisicon.thinkific.com
Share This Post
Have your say!
00
5 Comments
  1. I would love to be able to follow this, but I am not able, everything breaks down here:

    Now start building your project schedule normally. You might want to try this approach:
    1.Enter the Finish date into row 1.
    2.Insert a new row above row 1, forcing the End Date Milestone or Activity to move to row 2. This essentially allows you to plan backwards, but to lay out the schedule as if you had typed it from the start.
    3.With each successive task you add, you will link and create the relationships in the normal way, but as you enter durations and link activities, watch your Project Start date continue to move backwards.
    __________________________________________________________________
    What does Step 2 accomplish, how is this new blank row used, what goes in it?

    Thank you,

  2. The insertion of rows at the top of the schedule forces the schedule to move down where the beginning of the schedule is at the top and the end of the schedule is at the bottom. This provides a cleaner and easier to manage and follow view for the end user.

    Customers really like the opportunity to grow the schedule, but when starting from the end, many end users keep the end of the project at row 1, when clearly don’t need to do that.

  3. Marcia excellent comment.

    Of course you can use that, in fact there are many variations of alerting for, including baselines and custom fields. Just have a limit to the number of elements I can introduce with this topic.

    But stay tuned there will be more articles forth coming! 🙂

  4. Got it Tim. Thanks for the clarification, great article.

  5. Hi Cari,

    Yes, part of the process is to decide if you want in-linked tasks to move to the end date (similar to a backlog) where you bring them into the current work.

    In most cases it is very straight forward.

    1. Select all tasks (you can do this by simply clicking any column header), then on the Task Tab, click the information button and choose the Advanced tab, then click the Constraint type and choose “As Soon As Possible”.

    Great questions, keep them coming.

    You can also reach me directly at Tim.Runcie@Advisicon.com

Leave a Reply