Preparing a Project Resource Schedule
In project management, resources are required to carry out the project tasks. Having a plan for our project doesn’t mean we should only have listed the tasks it takes to deliver it. Planning also includes knowing what resources we’re going to need, how much, and when. Resourcing isn’t just about people, it’s also about materials and equipment.
Whether the project is developing a new software feature or the construction of a building, resource planning directly contributes to the project’s end result. An over-resourced project wastes time, those with too few resources risk missing critical milestones, and those that use the wrong resources won’t meet expectations. Project managers need to understand what resources a project needs before completing project plans. The basic steps for the preparation of our project resource schedule are these:
Step One: Finalise the project schedule, typically in Gantt chart format, showing what tasks are to be completed over what periods.
Step Two: Check on the availability of resources to meet your task schedule and where necessary adjust this schedule to comply with resource availabilities. Such adjustment is often needed for resource-constrained projects, where the task schedule is essentially dictated by resource availabilities, a situation more likely for lower priority projects that make do with what resouces are left after higher priority projects have been resourced, the consequence of which may extend project duration, but alternatively may be avoided by outsourcing some work.
Step Three: Develop a resource schedule showing the different resources needed – who, what, how much or many, and over what calendar periods to do the project tasks as scheduled:
Using the following table, we list all the roles required to undertake the project. Identify the number of people required to fulfil each role. Describe the responsibilities and skills needed to undertake each role and specify the timeframe during which the role will exist.
Use the following table, we list each item of equipment required to complete the project. Quantify the amount of each item needed. Describe the purpose and specifications of each item and specify the timeframe for which the equipment will be required.
Use the following table, we list each item of material required to complete the project. Quantify the amount of each item needed and specify the timeframe during which the materials will be required.
Step Four: Of course a resource schedule is a baseline for change. Our resource schedule should be adjusted regularly to accommodate any changes in our project priority, scope, task schedule and resource availabilities. During the project it’s also useful to compare estimates with actuals once in a while, and re-allocate resources where appropriate. Here are a couple of resource management techniques to ensure that the project’s resource demand does not exceed the resource availability:
- – Resource Leveling: This is a technique to optimise resource allocation by adjusting the project schedule over time to resolve over-allocation of resources, and as a consequence the project usually takes longer to complete (ie, leveling = longer):
- – Resource Smoothing: A technique to optimise resource allocation using float without affecting the critical path or project duration. Float is the amount of time that a schedule task can be delayed from its early start date without delaying the project finish date.
Resource-constrained project scheduling sounds nasty. It is needed when the availability of resources or lack of resources dictates our schedule. A lack of resources may result in resource overloading or stretching. For example, Jack finds that his project workdays consistently and considerably stretch beyond eight hours (or about 6.5 hours if we were realistic about productivity). In this situation we need to get Jack off the rack to reduce tension and reschedule his workload such that it is achievable.
Resource-overloading is often the consequence of poor estimating or simply that the project has been assigned a low priority. Other higher priority projects get first access to our organisation’s limited resource pool, and even those projects may have under-estimated their resource needs (sometimes deliberately by sponsors keen to ensure their projects are approved, but not in our organisation of course) and later, when reality intrudes, such higher priority projects need to use resources earmarked for our lower priority projects. Unfortunately, lower priority projects are usually assigned to new project managers who then find they need to quickly learn about resource-constrained scheduling – hence this blog item.
A schedule shows us what tasks are to be completed when and is often illustrared as a network diagram or Gantt chart, where Gantt is sometimes an acronym for “God Alone kNows The Truth.” We need to schedule tasks when resources are available. Often this means that due to resource limitations our projects will take longer. We typically identify and resolve such scheduling issues or resource over-loading using this process:
Prepare a network diagram that shows durations and resource needs for each task.
Develop a resource histogram (bar chart) that shows resource requirements for an early start schedule.
Superimpose on our histogram the actual availability of resources or the resource constraint.
Adjust the project task schedule to not exceed the resource constraint, typically with the consequence that the project takes longer.
Shown above is a project network diagram with 11 tasks with finish-start dependencies. Each number above the task node denotes the estimated duration (say workdays) of the task, while the number below the node refers to the resource requirement (say people). It is assumed that the availability is restricted to six people for all periods of the project. The histogram above shows the resources needed for an early start schedule. Each task is represented by a rectangle with the horizontal length the task duration and the vertical height the resource requirement.
This earliest start schedule shows a resource conflict between workdays 8 and 13 since the total use of the resource by tasks 3, 4, 5, 6 and 7 exceeds the limited availability of 6. In order to solve this resource conflict, tasks need to be shifted to where resources are available. The solution below shows the revised minimum duration for this project would be 24 days.
However, if the project duration is now too long, more resources are not available, and we cannot out-source work, some options might be:
Reduce project scope and/or remove excessive functionality.
Eliminate any specification ‘gold-plating’ (settle for good enough).
Accelerate tasks, particularly critical tasks, perhaps by more efficient work methods or by working overtime (sometimes for a diminishing return) and weekends.
Split tasks to smooth the resource profile, which is about eliminate or filling gaps in the resource histogram.
Determine a more judicious distribution of multi-skilled resources.
Remove non-essential task dependencies to create more float and greater scheduling flexibility. And perhaps a change from a start-to-finish relationship between tasks to a finish-to-start relationship might help.
Most often resource leveling requires tasks to be delayed until resources are available. Most project management software can level resources automatically based on a set of rules that determine which tasks to delay, split or adjust. For such rules to eliminate or minimise resource shortfalls see “The Framework” textbook at page 219. The problem is that there are often too many factors affecting a schedule that software cannot properly contend with. Resource scheduling algorithms are notoriously non-optimal. They are blunt instruments. So, in my experience manual leveling is often the best strategy. Or perhaps we could use the automatic facility and then tweak the solution manually.
Incidentally, sometimes a distinction is made between “resource leveling” and “resource smoothing” – the difference being that resource smoothing is used only for tasks that are not on the critical path (ie, non-critical tasks), whereas resource leveling has no such restriction, and usually extends the critical path of a project. You might remember the “l” in leveling results in projects of “longer” duration.
The most common rule for assigning resources is called the minimum-float rule where we assign resources first to those tasks with least float, then to those tasks with the next smallest amount of float, and so on, until resources are exhausted. Most project management software contains this minimum-float resource allocation heuristic or rule.
Project Resource-Constrained Exercise
The availability of resources can dictate the project schedule. This exercise is designed to practise scheduling project tasks to comply with resource constraints while maintaining project duration.
Assuming that task durations cannot be altered, determine how the project can be completed in 10 days?
- Finish drawing the network diagram shown below.
- Plot ONLY the critical path on the blank Gantt chart.
- Show resource requirement for critical path tasks on the resource histogram.
- Only now plot non-critical tasks where resources are still available.
MS Project, unless we opt for “manual”, will automatically honour predecessor relationships between project tasks first, so that the leveling solution will not have tasks violating their relationships. Then, among tasks that have similar relationships, those tasks with more float will be moved before those with less float. Then task dates, priorities, and constraints will be taken into account, in that order, which is the MS Project default solution and is the one that is most commonly chosen for leveling.
Resource Smoothing Exercise
This 15 day project is to be completed within a resource ceiling of 8 labourers, without altering task durations or resource loading.
Your task is to:
- Draw the network diagram.
- Construct the Gantt chart to show all critical path tasks.
- Complete the histogram on the same time scale as the Gantt chart, to show labour needs by each day for critical path tasks.
- Schedule non-critical tasks so that not more than eight labourers are needed on any day.
Terms: Resource leveling results in the project taking longer, whereas resource smoothing is designed to eliminate erratic changes to staffing levels without extending project duration. Smoothing is applied after leveling. The difference between resource smoothing and resource leveling is that resource smoothing is only used on activities that have float, so they cannot affect the critical path of a project like resource leveling can. MS Project has a (not too effective) resource-leveling feature.
Resource Smoothing Templates