Welcome back to our series on Resource Leveling! Thus far, we’ve been focused on the technical aspects of leveling, concentrated on establishing a core understanding of the leveling hierarchy, the leveling options and leveling limitations. With this foundation in place, the series will now change gears and cover the leveling process.
Preparing to Level
How many of us would leave on a vacation without first making travel plans, hotel reservations, and arranging tours at our destination? The answer is probably none of us would, and the reason is simple: Not doing these things ahead of time creates problems. To get the most out of our vacation, we address things we know will be problems (like no place to sleep) ahead of time.
Preparing to level a project schedule is similar. It’s the first step in a leveling process and it involves correcting known problem causing scenarios before even attempting to level. These scenarios fall into three categories: work breakdown structure (WBS) construction, project resource commitment and task configuration. Each is discussed below.
Before we start, however, there are a few items to mention.
- The items discussed in this article will be valuable before the first leveling attempt and will diminish in value as more and more problems are corrected. For example, once it’s been verified the schedule contains no Manual/Priority 1000 tasks, there’s no benefit in constantly checking for them.
- Many of the topics touched upon here, if explained thoroughly, would be entire articles on their own. For the sake of brevity, I’m going to focus on what to do when preparing to level and not attempt to provide the “why” in detail.
- Finally, all Microsoft Project views that I display here are available for your use. Locate the “Preparing to Level.MPP” file linked to this article and download it. “View” names referenced in this article next to the screenshots correspond to the same views in the downloaded schedule file, which were produced in Project 2013. (Note that what shows on your screen when you open this Project plan may have slight variations from what’s shown in the screenshots below.)
Want more? Watch Daryl Deffler’s two-part webinar series on resource leveling, now available, on demand.
Read Daryl’s articles in this resource leveling series here:
“Scheduling vs. Leveling”
“Problem Indicators”
“Leveling Mechanics”
“Leveling Hierarchy, Part 1”
“Leveling Hierarchy, Part 2”
“Resolution Options”
“Understanding Split Task Options”
“Leveling Fields”
“Limitations”
“Preparing to Level”
“Resource Leveling: It’s Time to Level Your Schedule”
“Resource Leveling: The Leveling Cycle”
“Resource Leveling: Recommendations”
Also, download a resource leveling “cheat sheet” in PDF format!
WBS Construction
Two of the top probable reasons for leveling problems are incomplete WBS construction and not adhering to WBS construction best practices. Before leveling, we want to walk through the schedule looking for commonly missed items. Using a standardized set of views, the following items can be checked and corrected rather easily. Depending upon your environment, you may want to add or subtract from my list or create your own.
Incomplete construction: Missing dependency relationships
With few exceptions, all tasks should have both a predecessor and a successor within a schedule that will be scheduled and leveled. Using a filtered view such as the one shown below, it becomes easy to find tasks missing a predecessor, successor or both. When all problems are corrected, this view should generally show only the project start and project finish tasks or milestones.
View: Prelevel – Tasks Missing Pred/Succ.
Incomplete construction: Missing resource assignments
With few exceptions, all tasks should have an assigned resource responsible for completing the work. Using a view such as the one shown below makes it easy to identify tasks with no resources assigned. When all tasks have assigned resources, this view should be empty.
View: Prelevel – No Resources Assigned.
You can also see this by using a Resource Usage view and looking at any task under the “Unassigned” resource.
Not following best practices: Manual tasks, Priority 1000
Manual and Priority 1000 tasks are not necessarily problems, but there should be a valid reason for using them beyond an attempt to manually control the scheduling/leveling results. These types of tasks need regular, extra attention from the project manager to ensure they don’t create problems like having remaining work stuck in the past or overallocations. The less dependency on these types of tasks, the easier your on-going schedule management will be. The intent of the view below is to highlight those tasks so their use can be examined and, if needed, corrected.
View: Prelevel – Manual and Priority 1000.
Not following best practices: Manual constraints
Manually constrained tasks are not necessarily problems, but there should be a valid reason for using them as well. There are hard constraints such as “Must finish on” and soft constraints such as “Finish on or after.” Hard constraints tend to introduce more problems as the project progresses. As such, they should be reviewed to see if the constraint is needed or if a soft constraint could be used instead. The intent of the view below is to highlight manually constrained tasks so they can be examined and corrected if needed.
View: Prelevel – Manual Constraints.
Not following best practices: Summary tasks with assigned resources or dependency relationships
Project allows resources and dependency relationships to be assigned directly to summary tasks. But these two scenarios should be avoided because of the problems they cause.
Enterprise resources assigned to summary tasks can’t see those tasks on a timesheet and therefore can’t enter time against them. Additionally, having resources assigned to a summary task can also result in phantom actual hours appearing on summary task resources.
Assigning dependency relationships directly to a summary task tends to create unexplainable gaps in resource usage during leveling. They also make it more difficult to debug a project schedule problem because tasks/dependencies causing the problem may not be directly linked to the normal task dependency chain.
The intent of the view below is to highlight these scenarios so they can be corrected.
View: Prelevel – Sum Tasks w/Res or Relationships
Project Resource Commitment
Reviewing this aspect of the overall project schedule construction is more applicable to an enterprise environment with single enterprise resource calendars and resources that are fractionally committed to multiple concurrent projects.
It’s important for Project to know the correct maximum availability for each resource. You accomplish this by setting the Max Units value to be equal to the total project commitment as a percentage of a resource’s total enterprise availability. For example, if Bob’s enterprise availability is 40 hours/week and he is committed to the project at 10 hours/week, his Max Units for the project would be 25% (10/40). But if Sam’s enterprise availability is 30 hours/week and he is committed to the project at 10 hours/week, his Max Units for the project would be 33% (10/30). Setting the Max Units is as simple as entering it using a Resource Sheet view as illustrated below.
View: Resource Sheet
The benefits of setting the Max Units values as part of leveling preparation are a bit grayer, but I’m including it for consideration. The following table contains scenarios where setting the Max Units before leveling may be beneficial and scenarios where it may not add value. As a project manager, you’ll have to decide if this step adds value.
[table id=57 /]The primary leveling benefit in setting the Max Units value on fractional resources is that the following error will be displayed whenever an Assignment Units value exceeds the resource’s Max Units.
There is one caveat. When changing an enterprise resource data value such as Max Units, the change is only temporary. When the schedule is closed and re-opened, the changed value resets back to the enterprise value. Resetting doesn’t occur on local resources.
The secondary benefit helps the next topic.
Task Configuration
Task and resource assignment attributes comprise two more of the top reasons for leveling problems. Before leveling, tasks should be scanned to see if any obvious task or resource assignment attributes need to be fixed. Using a view such as the one displayed below exposes all the key configuration attributes of both the resource assignment (Top) and the task (Bottom).
The resource usage component (top half) displays resource assignment attributes. For each resource row, the Max Units value is displayed. You can compare all of the Assignment Units values looking for those tasks that exceed the resource’s project commitment (Max Units). In other words, in our project plan, we intend to use the resource more than the resource has been committed to us, posing a problem from the beginning. In the sample below, you can see that Joe’s Assignment Units (85% or 100%) exceeds his Max Units (35%) on every task. The Assignment Unit values can be corrected directly in the view.
Additionally, compare the Assignment Units against the Peak value. Peak represents the actual units value required to complete the work in the timeframe allotted. Typically, when Peak exceeds Assignment Units, it’s because more work is assigned than can be completed in the allotted fixed duration. These are task-level overallocations that must be fixed at the task level. Looking at Task 12, the Assignment Units are 85% but the Peak value is 167%. This means Joe would need to work more than double time to complete the estimated work in the allotted timeframe.
Clicking on Task 12 on the top half displays the same task on the bottom half of the screen. Once it’s displayed, you can click the task in the bottom to correct any task-related attributes that may be causing the problem. For example, the task duration may need to be doubled or work may need to be shifted from Joe to another assigned resource.
View: Prelevel – Pre-Leveling Check
In summary, WBS construction and task/resource assignment configuration are the foundation of a good schedule. If the foundation has problems, you can bet there will be leveling problems until the foundational issues are corrected. Using a canned set of views such as those I’ve illustrated above can simplify your process of finding and correcting the vast majority of those issues before leveling officially begins.
About the Download File
I’ve provided a Project 2013 file, “Preparing to Level.MPP,” for you to download. (Note that the file name there is a live link that will bring up the file in ZIP format for you to download.) It contains all the task and resource views referenced in this article. It also contains a sample project schedule designed to illustrate how these views work. Note, however, that the download file sample schedule doesn’t match the schedule used to produce the article graphics. Therefore, views displayed in the download file will not match the screenshots above.
Task Views
All task views use filters, also included in the download file. In the event that the filters become detached from the view, the filter names are the same as the view name with the characters “Fltr” appended. Filters can be attached to a view from the View ribbon by clicking the dropdown arrow in the Data group Filter option (funnel icon), clicking “More Filters…” at the bottom of the pop-up menu, selecting the filter name in the More Filters window and then clicking the Apply button.
- Prelevel – Tasks Missing Pred/Succ
- Prelevel – No Resources Assigned
- Prelevel – Manual / Priority 1000
- Prelevel – Manual Constraints
- Prelevel – Sum Tasks w/Res or Relationships
Resource Views
Views in this section don’t use filters.
- Resource Sheet
- Prelevel – Pre Leveling Check: This is a combination view consisting of:
- Top Resource View: Prelevel – Assignment Units Verification
- Bottom Task View: Prelevel – Task Usage
Have questions about preparing for your leveling work? Post them to Daryl in the comments below!