MS Project Hack – Automatically update Project Planning
Project plans and roof gutters both need regular maintenance to be useful. For project plans, that can be laborious and so I wonder if we can apply an approach from Kanban to allow automatic updating of a project plan. Interested in saving a bit of time? Read on….to get an invaluable time management tip for Project Managers
In reality many project tasks start late, especially if they do not lie on the critical path. The consequences of this are,
- Continual shifting of dates on these tasks is necessary if the plan is to be valid
- If not continuously shifted with each status update, they are a distraction as they indicate delay vs. plan
So, either extra work is generated to shift the tasks or the project plan is a sea of red tasks. The preferable status is to have an up to date plan and so perhaps one should consider a better way to achieving this. In this article I will present an idea of using the Kanban categories to enable the automatic shifting of non-active tasks. This will enable the plan to be quickly and easily be kept up to date and allow the formation of new critical paths to be tracked. The concept is explained below and implemented in MS Project using a macro.
Concept for Automatically updating Project Planning
In Kanban, tasks can be categorised as “Done”, “In Progress”, “To Do”, etc. It is possible then to apply such categorisation to a waterfall plan, and for those tasks not yet in progress to have their dates shifted. The rule applying to the task shifting would be that for planned start dates that are before the current date and have not yet started to have their start date updated to the current date. This is a simple reflection of reality that tasks that should have started have not started and the best case would be for them to start today. This simple rule enables the automated updating of the task dates and whatever knock on effect to the project plan.
Now, undoubtedly manual intervention may be needed where problems have arisen which changes the estimated time or that the start date may be even more delayed for whatever reason. In such cases, typing is needed and “Project Management”, is needed.
However, for many tasks, where no problems arise and a simple shift in date is all that is required this automated approach could be useful tool to save time in updating project plans.
Implementation in MS Project
To demonstrate the approach, I have created a small macro in MS Project. Here is the Increment_Macro, should you wish to experiment. I am a terrible programmer so forgive the coding but I hope it is sufficient for you to experiment with but not on your big project plans!
To enable it, download and save it as a Macro. It requires Flag1 column to indicate if the task is in progress so you also need to add this column in MS Project. Let’s now consider the impact of it’s application. Below I have a simple project plan. Unfortunately, Task C is not in progress. The date of the project plan review was the 6/1/16. On that day I run the macro and it updates the project plan automatically.
The updated project plan is shown below. Now the Task C has been shifted to the review date of 6/1/16. The impact to the project plan is clear. Task C is now on the critical path, it has delayed Phase 1 being completed and ultimately the project. Oh dear. This is an extreme example but the benefit of having tasks updated quickly and easily can be seen. A less extreme and probably more common scenario is that with each weekly status update, the tasks get shifted by 1 week. Over time this will reduce the slack for the task to the point that it may be on the critical path. The monitoring of this slack reduction could be one indicator of potential problems.
Further Development ideas
What has been shown is a simple implementation. Other improvements are certainly possible. For example, reporting the tasks that have been shifted. This could allay fears that unknown changes are being made. Additionally, as mentioned the plotting of tasks by slack over time could also indicate were slippages are occurring and where focus needs to be placed.
Hope you find this useful. I know there is a degree of hesitancy in applying anything that is automated in a project plan so this may seem somewhat scary. However, if reporting were to be added to the macro I think the increased visibility of tasks that have been shifted could probably address that point. As mentioned also, not all scenarios can be automated such as problems that have cropped up. However, for simply shifting of non-active tasks this may be a useful tool. Let me know your thoughts.