Products > PSOP > Documentation

Leveling with Roles


Consider a simple example in which a family wants to tidy up their yard. There are four tasks which must be accomplished: the lawn must be mowed, the hedges must be trimmed, and the path must be edged and tidied. Because edging the path will cover it with lawn clippings, the path must be edged before it can be tidied. Such a project might look like this is P3e:



Our example family consists of a father, a mother, and a son. The son is not old enough to handle power tools so he can't do the Cut Lawn, Edge Path, or Trim Hedges jobs. He will be responsible for tidying the path. The other three jobs can be performed by either the father or the mother so we create a role, adult, assign both the father and the mother. The adult role is then assigned to the Cut Lawn, Edge Path, and Trim Hedges activities. If we level this with P3e the schedule shown above is produced.

Notice that this schedule requires the Cut Lawn, Edge Path, and Trim Hedges activities to occur simultaneously even though we only have two resources with the adult role and all three of these activities require an adult.

Why did this happen?

P3e ignores roles when leveling. Indeed it will report no over-allocation with this schedule although the adult role is, in fact, over-allocated. It therefore does not notice that the schedule it produced requires more adults than are available. One way to work around this is to manually assign resources to the activities. For example, we could assign the mother to the Trim Hedges and Cut Lawn activities, and assign the father to the Edge Path activity. However, this would not be a good assignment as it would make it impossible for the Cut Lawn and Trim Hedges activities to occur at the same time thus requiring the following schedule which is longer than necessary:



Assigning the mother to the Cut Lawn activity and the father to the Trim Hedges activity solves the problem. With this tiny example it isn't too difficult to figure out what the optimal resource assignments would be, but it is nearly impossible to generate optimal resource assignments on projects of even moderate size without first knowing the schedule. Unfortunately, using the P3e leveler you can't construct a level schedule until you have assigned resources.

How can PSOP Help?

PSOP can level using roles. If you select Roles on the Main Settings tab, PSOP will correctly level this project. The availability of the adult role will be determined by combining the availabilities of all resources assigned to that role; in this case the father and the mother. For this example PSOP produces the following schedule, which is optimal:



Furthermore, if you have already assigned resources to your activities (perhaps so you can use P3e's reporting facilities) PSOP will still let you level by role. Selecting Resources and roles on the Main Settings tab causes PSOP to substitute the resource's primary role for all assignments and then level by role. Note that the resource assignments are not changed in P3e. PSOP just treats the project as if the resource assignments had been changed to role assignments. 

When leveling by roles, the PSOP results will show availabilities and overload for the roles only.  When leveling by roles and resources, you will see availabilities and overload for roles and all resources that do not have primary roles.