Posts Tagged ‘leveling’

Microsoft Project Tutorial Part 19 – How about loosing ALL control over your plan? Why the leveling function is not such a great idea after all

2009/05/09 3 comments

I guess many of you hopeful project managers out there hoped that Microsoft Project would help you with your resource over bookings. Sorry, but Microsoft Project can help you spot this but you’re still into some manual work. I’ve covered how this is done in a previous post so I won’t go into this now. Instead, here is why you shouldn’t just buy into the leveling function without wanting to lose all the control you thought you had.

When I first spotted leveling it sounded great; if there is a over booking Microsoft Project can take care of it and “solve the conflict”. Right. If we only worked with machines and in a human free world this might be true. I guess this would also have worked under Stalin or Hitler, when no one dared speak up against stupid plans without no groundings in the real world. So, just to make things clear; I don’t think you should use this function. The only time I’ve used it was not for planning but for showing a manager how bug the problems with over booking was. Because it looks really cool and I did get my extra resources. But doing so, I felt more like Uri Geller playing one of his tricks than a serious craft man. But here goes.

We have this wonderful plan with four tasks:


Remember, Microsoft Project does not stop us from making this error. What error? Well, I guess it’s not so fun being the guys on this project. They are seriously overbooked, which I can see if I look at the resource sheet:


I guess Linda likes the situation, but for the rest, I guess things could look better.

So, you hawk eyed project managers go find something called Leveling and think this is the solution of the problem.

You find the command under Tools—>Level resources:


This is one of those dialog boxes from hell that you can just enjoy so much in Microsoft Project. What is that? We’ll just leave the goodies of Automatic/Manual for last and move over to Look for over allocations. What this does is that it looks at each resources and search for over allocations. Since a resource can be over allocated if it’s double booked during one minute, leveling can be tedious work. But with this setting you can specify how detailed Microsoft Project should be. Since our over bookings in this case affects so long periods, the settings doesn’t matter too much but it can really take time if you’re working an actual project. So, we’ll stick with Day by Day.

Clear leveling values before leveling is used when you use the command many times. When you level a project, the previous values are kept but since only one historic set can be kept you can here specify if you want to replace your history.

Leveling range is if you just want to level one or two tasks or the whole project.

Leveling order specifies which settings are used to specify which tasks will be affected. I just love the setting “Standard”. What does that mean? Well, it means that Microsoft Project tries to make as little delays on the whole project as it can. This means that tasks that belong to the critical path has preference, for example. In the combo you can change so for example tasks with lower ID has a preference, etc. In our case, this won’t matter so much.

Level only within available slack. I love this setting. It makes absolutely no sense to a standard user of Microsoft Project. Sorry for me being sarcastic, but it’s really sad that we who work with software development cannot make ourselves clearer than this. This setting looks at the value of Total Slack for each task and specifies that a task can only be delayed within that value. Total Slack specifies how much a task can be delayed before it affects the critical path. This means that selecting this value means that you will probably keep some over bookings but the whole project will not be delayed, since the critical path cannot be affected.

Leveling can adjust individual assignments on a task. If you select this setting and you have two assignees, one can work first and the other later. This can sometimes be good but if you have a meeting, this is probably a bad thing.

Leveling can create splits in remaining work. I haven’t addressed the issue of creating splits in tasks but the Microsoft Project definition of a task split is a task where the work is set to 0 on some of the working days of the task and resources. You can see splits by the dotted line in the bars in the Gantt chart.

So, now that I’ve covered the possible and impossible settings, we hit the Level Now button in the dialog box. Just clicking OK won’t do the trick (since we’ve selected Manual) and sit back and enjoy. So, what happened?


Well, something clearly happened because our Gantt chart looks different and if you visit the Resource sheet, all resources are black.

But what happened? The best way to see that is changing the view to Leveling Gantt. This cannot be found in the View menu by default, so you have to select View—>More views—>Leveling Gantt and OK.

And now you can see the magic.


The blue bars show current plan, the green the plan before the leveling. The whole lines shows Slack (on the right of the bars) or how much the tasks were moved (on the left).

If you revisit the Leveling Dialog Box you can hit the Clear Leveling button and your plan is back to what it was before, but remember that only one leveling session is kept.

And here we come to the real cute part. If you select Automatic, you won’t have to go to this dialog box and select Level now. At the same moment Project spot an over booking, the leveling magic gets going. Imagine. How you in a second lose all control over your file.

But isn’t that wonderful, you might say. And I say no. Do you remember the resource named Linda. She is still not assigned. Because the only tool available for the leveling function is delay. It does not look into the options of changing resource, lessening a task or removing it. Hence, I does not only find it useless. I find it dangerous. Since it gives a sense of security. You view the resource sheet and feel good about the lacking red lines.

An over allocation should be discussed and all options should be evaluated. The math in the function is simply too basic to solve the problem.

But as I started the post with; it can be powerful to show someone. In my case, my manager didn’t understand how serious our over bookings were. So, I just did a leveling act on him and he was freaked about the delays. My telling him that the plan was undoable was not as graphic as some colored bars in a Gantt chart. Even if the former was based on a much more complicated calculation.