Project Management Institute

Resource leveling and roulette

games of change--part 2

Concerns of Project Managers

SOFTWARE FORUM

Harvey A. Levine, Feature Editor

When we left our last episode (April), our hero, Harvey the Hacker, was at the gaming tables, where he was investing in extensive research on resource leveling. He found that the chances of getting “21” were far greater than the chances of obtaining optimal leveled schedules from project management software.

The Hacker considered several solutions. “If only we could employ elastic resources,” he pondered. But resource pools that grow as needed are even rarer than the successful cloning of project managers. He thought of retiring to Las Vegas. But this required another resource that was in $hort $upply.

No, the only immediate, practical solution (outside of software improvements) is to recognize the limitations of today's project scheduling systems, and to work within these limits. This will require interaction between the person doing the resource management and the project management software system.

OPTIONS THAT AFFECT RESOURCE LEVELING

Before we get into practical techniques for resource management, let's consider the various differences in the resource scheduling and leveling capabilities in project management software products. In addition to the basic leveling methods discussed in April, we can identify several dozen design attributes that can affect the ability to define a project's resource parameters and influence the resource leveling outcome. The variations are extensive. Table 1 presents most of the attributes that directly affect the resource leveling function and notes some of the products that have these functions.

Table 1. Options That Affect Resource Leveling. Note: Numbers in parentheses denote the packages having that feature as listed in Table 2.

 

User choices for ranking (1,2,3)

Multiple iterations or ranking calculations

Effect of Imposed Dates (6, 10,13 use “fixed” dates which interfere with resource leveling)

Trial and Error - Perform “what-if,” but do not replace until accepted by user (or perform “undo”) (4, 16)

Manual (interactive) adjustment (1,4,6, 12,14 and most Windows products)

Activity Splitting

  • Entire project (7)
  • By task (13, 14)
  • By task with definable conditions (2,3)
  • Automatic “Contouring” (10)
  • Discrete loading via spreadsheet (4,10)

Overtime (4,7,14)

Activity Stretching: (Stretching or Re-Profiling in 2) or (Flex in 9) … Reduces loading per time period and increases time periods (1 wonder if we want to let the computer make this decision without human interaction)

Min-Max or Threshold options … Defines preferred limits and maximum limit for resource (1,2,3)

Resource Substitution (2)

Leveling Audit or Results Report (1,2,9,15)

Depletable Resources (2,7,9)

Producer Resources (7)

Span Dates for resource leveling (if we can choose to limit our resource leveling to a reasonably short time frame, then we can afford to implement more exacting leveling algorithms).

Minimum Crew Size (available in a few packages)

img

Harvey A. Levine, principal, the Project Knowledge Group (21 Pine Ridge, Saratoga Springs, NY 12866), has been a practitioner of project management for over 30 years, primarily with General Electric Company, and is a past chairman of PMI. Mr. Levine has been adjunct professor of project management at Rensselaer Polytechnical Institute, Troy, NY, and is the author of Project Management Using Microcomputers, as well as numerous articles.

ANALYSIS OF RESOURCE LEVELING RESULTS ON 13 PRODUCTS

In April, I promised to report on the results of my leveling tests. These tests consisted of 13 products, using up to three test models. Here are the results of Test Model A. This model consists of 18 tasks. Twelve of these tasks require either one or two units of a single resource. There is a total of 30 labor days of effort. The unleveled CPM is 11 days. Leveling, with 2 units of the resource available, should be able to produce a 15-day schedule. The results (now increased to 14 products) are presented in Table 2.

PRACTICAL USES OF RESOURCE SCHEDULING

Practical resource scheduling is best achieved via a balance of long-term resource aggregation (analysis of predicted resource loads), and short-term resource leveling (possibly with user intervention). Resource aggregation is the tally of effort for each resource for each time period. These results can be viewed in resource histograms or resource tables (Spreadsheets). Resource leveling is not required.

For a long-term evaluation, use resource aggregation to observe the potential impact on resources. Generally a coarse view (weekly for a project over six months) will be sufficient. Identify periods of potential overloads. Identify strategic alternatives (shifting priorities, delaying lower priority projects, outsourcing, extra hires, overtime, reducing scope, reducing quality, panic, burying head in sand).

     Table 2. Analysis of Resource Leveling Results

 

  1. Primavera Project Planner for Windows:

    Can set unlimited ranking conditions

    - Ascending and Descending

    • Best solution 16 days, using ES-LF-least Dur
    • Other rankings produced 16-, 17-, 18-day solutions
  2. WST'S Open Plan:
    • Can set up to 3 ranking conditions

      - Ascending only

    • Best solution without splitting is 16, using ES-LF
    • Other rankings produced 16- 17-, 18-day solutions
    • Can impose(l), immediate attribute

      - still 16 days

    • OP uses default of TF claiming that it is usually the best. k is always the worst with this model.
    • With splitting option, results were 15 days using LF-TF and 16 days using ES-TF
    • Can define conditions for splitting, by task
  3. Artemis Prestige:

    Can set up to two ranking conditions

    - Ascending only

    • Results without splitting were identical to OP
    • With splitting option, results were 15 days using LF-TE and 16 days using ES-TF or just TF
    • Can define conditions for splitting, by task
  4. Scitor's Project Scheduler 6:

    No choice of ranking conditions

    • Solution was 16 days
  5. Scitor's Project Scheduler 5:
    No choice of ranking conditions
    • Solution was 20 days
  6. Microsoft Project for Windows:

    Almost no choice of ranking conditions. Default is “standard” (not defined). Options are “ID” or “Priority Value”). No Date or Float option.

    • Solution was 16 days
  7. CIA SuperProject:
    Limited options - Select either “float” or “Priority Value”
    • Solution, without splitting, was 17 days
    • Solution, with splitting, was 15 days
    • Split option must apply to entire project (can't select by activity)
  8. WST'S Texim Project:
    Limited choice of priorities
    • Best solution was 17 days, using Float
    • Using “duration,” result was 18 days
    • Using “Critical Value” or “Critical Index,” result was 14 days (violated resource limits)
  9. PSDI'S PROJECT/2 Series/X (P/X):

    Can use “auto” method or select rankings

    • Best solution was in auto mode. Obtained optimal 15 day result
    • Results were 16 days, using ES-TF and 18 days, using TF
  10. ABT's Project Workbench for Windows:
    No ranking options
    • Normal solution was 17days(could not slip task with fixed date)
    • PV/W has a “Contour” option, that allow task splitting. Result was 15 days, but allowed a task requiring two resource units to be spread across two days using one resource unit.
  11. Artemis Schedule Publishing
    Serious problems invoking resource leveling. Obtained several inappropriate “solutions” where overloads remained after leveling. Was eventually able to force a leveled solution, by playing with task priorities.
    • Best solution was 17 days, using priority
    • Results was 18 days, using TF-Dur-ES
  12. Symantec's Time Line for Windows (1.0):
    No ranking choices
    • Solution was 17 days
  13. Symantec's Time Line 5.0 for DOS:
    No ranking choices
    • Solution, without splitting, was 17 days. Same problem with “fixed” date as PWW
    • Solution, with splitting, was 15 days
  14. Symantec's Time Line 6.0 (new):
    No ranking choices
    • Obtained optimal 15 day result, without invoking splitting option
    • Splitting can be selected by task

    The following packages were not evaluated completely:

  15. POC-IT'S MicroMan II.
  16. Computer Aided Management's PARISS Enterprise.

There is no justification for producing a resource schedule to four decimal places, way out into the future, when we can usually be assured that significant changes to the task schedule, the available resources, and even to the work scope, will nullify the results of that effort.

For the short term, look at unleveled and leveled solutions. If the leveled solution has a good utilization factor (not too many peaks and valleys), you may wish to use the computer-produced schedule ask. If not, use the computer data to determine a reasonable resource pool (if adjustable) or a reasonable task load (if resources are fixed), and determine an optimum short-term schedule (i.e., next two weeks), using the computer to display the results of the various what-ifs. Software that allows you to preview a result before accepting, or that has an undo feature, can be helpful in this exercise.

Warning: Use of Total and Free Float Disallowed. We use Total Float as an indicator of the time that a task may slip without delaying the shortest completion of the project. We use Free Float as an indicator of the time that a task may slip without effecting the start of any other task in the project, When we use resource leveling, we can forget about using the resultant float values as a time management tool. As Prof. Cohn Popescu points out in his paper presented at PMI '91, once you have adopted a resource leveled schedule, the indicated schedule floats are no longer useful as a measure of allowed schedule slippage. Any deviation to the planned performance of a task, even those having float or even those not requiring resources (except non-resource tasks having free float), will cause a change in the resource loads. This being the case, it should serve to further justify a short-term philosophy.

Not being in the trenches every day, I am somewhat hesitant to talk extensively about the practical realities of using resource leveling without expanding the dialog. This column would welcome feedback from practitioners, relative to practical, successful use of computer-supported resource leveling, and from project management software developers about their design approach to resource leveling. Please write to me at my Saratoga Springs address, or use the Letter to the Editor function. After all, this is supposed to be a “forum.”

A DESIGN FOR OPTIMIZED RESOURCE SCHEDULING

What if you really want the computer to assist you in developing an optimized, resource-limited schedule? What should we be looking for in the way of a practical and efficient method? It seems to me that all we would need is a combination of functions that are already available in various project management software packages. If we buy the premise that realistic resource leveling should be short- term and interactive, why couldn't we have the following set of functions in our resource scheduling system?

  • Use the parallel method algorithm.
  • Specify the limited time span to apply the algorithm.
  • Specify the preferred ranking criteria.
  • Allow activity splitting as a task-level option (and overtime).
  • Allow activity stretching or re-profiling, or contouring (selective).
  • Employ an interactive window for user override.
  • Provide a resource table or spreadsheet view (to view several resources at once).
  • Provide an undo function, to facilitate “what-if' experiments.
  • In a multi-project environment, it would be useful to be able to designate resources as assigned or avail-able to specified projects, at specified proportions.

In operation, the interactive window would pop up whenever a decision is required, showing the computer's default recommendation and other options. This interactive window would be similar to the Co-Pilot feature in Time Line for Windows. In addition to allowing the choice of the task to get the limited resource, it would also suggest when activity splitting, stretching or overtime could be used, and allow the user to define the split or overtime parameters at that time. Splitting or overtime could be set to automatic or discretional, for any task.

If enough resource information is available on the screen (perhaps in an optional window) we might even offer the user the ability to substitute for a scarce resource, on the fly.

Isn't this essentially what resource managers do on a project (or projects)? They look at the planned schedule for the immediate future, and at the available resources. They try to figure out the best way to get the necessary scheduled work done, when required, within resource limits. When they find a situation that does not support this criteria, they look at slipping tasks, using overtime, or reassigning work to less loaded resources. Why shouldn't we be able to provide them with support for that process, within the software that they are using to develop the project plans?

Does any of this make sense to you? Let's get a user/vendor forum going on this! ❑

This material has been reproduced with the permission of the copyright owner. Unauthorized reproduction of this material is strictly prohibited. For permission to reproduce this material, please contact PMI.

PMNETwork • July 1994

Advertisement

Advertisement

Related Content

Advertisement