Project scheduling is to a project manager like landing an airplane is to a pilot. It is often the largest and most visible aspect of project management.
In this article, I will develop a professional, resource levelled project schedule that provides tremendous confidence in the ability to meet the project deadline.
First, let’s deal with the theoretical foundation. In the Project Management Body of Knowledge (PMBOK), the 3rd out of ten knowledge areas is called Project Time Management. There are 7 processes within this knowledge area, and six of the seven occur within the planning process group. This article focuses on these six processes, which result in the creation of a professional project schedule.
PMBOK, 6th Edition, Section 6, “Project Time Management”
Project schedule development uses the outputs from the processes to define activities, sequence activities, estimate activity resources, and estimate activity durations in combination with the scheduling tool to produce the schedule model.
The six processes within the Project Time Management knowledge area that are related to project scheduling are:
- Plan Schedule Management
- Define Activities
- Sequence Activities
- Estimate Activity Resources
- Estimate Activity Durations
- Develop Schedule
These six processes are performed in chronological order and represent the 6-step process in developing a project schedule.
Step 1: Plan Schedule Management
The first step is to define the policies, procedures, and documentation which will govern the production of the project schedule.
PMBOK, 5th Edition, Section 6.1, “Plan Schedule Management”
Plan Schedule Management is the process of establishing the policies, procedures, and documentation for planning, developing, managing, executing and controlling the project schedule. The key benefit of this process is that it provides guidance and direction on how the project schedule will be managed throughout the project.
Although optional for small projects, the PMBOK specifies the production of a Schedule Management Plan, which is a component of the overall Project Management Plan. The following items could be addressed in this plan.:
- Contingencies. How big will they be, and how will they be calculated?
- Resources. Are there any resources who’s availability has a major effect on the schedule?
- Task Dependencies. Are there any major task dependencies the project depends on, such as completing the foundation before the framing can start?
- Organizational Procedures. Maybe there is a certain software that must be used or standard procedures for updating the schedule.
- Stakeholders. Who must approve the schedule, or to whom must it be distributed?
Step 2: Define Activities
At this point we start to dive into the meat and potatoes of project scheduling. In the field, the activity list is also known as a Work Breakdown Structure (WBS), although the PMBOK distinguishes between these two items.
PMBOK, 5th Edition, Section 6.2, “Define Activities”
Define Activities is the process of identifying and documenting the specific actions to be performed to produce the project deliverables. The key benefit of this process is to break down work packages into activities that provide a basis for estimating, scheduling, executing, monitoring and controlling the project work.
The format of the task list is irrelevant, but unless there is a reason to produce something more fancy it should consist of a simple list of tasks.
Let’s say you are a project manager for a firm that builds log houses. You have a new project to build a log house for the newly elected CEO of the Project Management Institute. You will hire an excavator and a bobcat but in-house personnel will build the foundation and do the landscaping, as well as the log house itself. Here’s a hypothetical task list.
|310||Electrical & Plumbing|
The graphical view is optional but helps you visualize it to make sure it’s all there. This one was created in MS Excel in about 5 minutes using the SmartArt feature:
At this point the goal is simply to make sure it’s all there. If you missed something I assure you it will almost certainly show up during the project.
But there are a few rules of thumb for determining the activity list:
- Make sure it can be reliably estimated. The tasks should be broken down to a point where a reliable estimate can be produced. If you are still unsure about the cost and/or duration of the task, consider breaking it down further.
- Base it on Deliverables. Each deliverable should have a clearly defined task, or set of tasks, in place to produce it.
- Have only one Responsible Party. When you have multiple people and/or organizations responsible for the completion of a task, it is difficult to control and manage. In fact, I’ve committed this sin in our example with the task Electrical & Plumbing (see how the two independent tasks are grouped together), but often these are very well understood tasks and not likely to have major fluctuations.
- Match tasks to cost accounts. Maybe your organization has predefined cost accounts, such as “Wood work”, or “Flooring” that should be used.
- Make it measurable. It should be easy to put a percent complete value on a task at any time. If this is not easy to do, the task should be broken down further.
There is no universal correct length to a task, but if you have more than 10 tasks per phase it becomes difficult to manage and a third (or fourth) level should be created. A common yardstick is the 8/80 rule, which states that a task should be between 8 and 80 man-hours. Shorter than this will aggravate your project team as you micromanagement their daily work, and longer than this makes it difficult to accurately assign completion progress.
Step 3: Sequence Activities
After the project has been divided into tasks the relationships between them must be determined. Most of the time a task starts when the previous one finishes, but not all the time.
PMBOK, 5th Edition, Section 6.3, “Sequence Activities”
Sequence Activities is the process of identifying and documenting relationships among the project activities. The key benefit of this process is that it defines the logical sequence of work to obtain the greatest efficiency given all project constraints.
There are, in fact, four types of dependencies:
- Finish to Start (FS): This is the most common dependency. When tasks A and B have an “FS relationship,” task B cannot start until task A finishes.
- Finish to Finish (FF): When tasks A and B have an FF relationship, task B cannot finish until task A finishes.
- Start to Start (SS): When tasks A and B have an SS relationship, task B cannot start until task A starts.
- Start to Finish (SF): When tasks A and B have an SF relationship, task B cannot finish until task A starts.
Leads and Lags
On top of this, you can specify an offset from the start or finish point of a task, called a lead or lag.
- Lead: The amount of time whereby a successor activity can be advanced with respect to a predecessor activity. For example, if tasks A and B have an FS relationship with a lead of 5 days, task B cannot start until 5 days after task A has finished.
- Lag: The amount of time whereby a successor activity will be delayed with respect to a predecessor activity. For example, if tasks A and B have an FS relationship with a lag of 5 days, task B cannot start until 5 days before task A has finished.
Leads and lags are the inverse of each other, similar to height and depth. They both have units of time. Most project management software requires the specification of lead times as negative lags for clarity.
Specifying dependencies is optional, in fact they will introduce an unnecessary layer of complexity in small projects.
In our example, we will use only FS relationships. A column is added to the table, like this.
|310||Electrical & Plumbing||210|
Step 4: Estimate Activity Resources
PMBOK, 5th Edition, Section 6.4, “Estimate Activity Resources”
Estimate Activity Resources is the process of estimating the type and quantities of material, human resources, equipment, or supplies required to perform each activity. The key benefit of this process is that it identifies the type, quantity, and characteristics of resources required to complete the activity which allows more accurate cost and duration estimates.
There are four major types of resources:
- Tools and equipment
- Fixed cost items like subcontractors, etc.
Other resources include financing costs, contingencies, overtime pay, and so forth.
In our example, to build our log house we need to look at each individual task and determine the resources that are required. We would build a table that looks something like this:
|110 – Excavation|
|Excavation Contractor||30 hrs @ $180/hr||$5,400|
|Bob||10 hrs @ $45/hr||$450|
If you need more items, start with this table and add the components you need. The other tasks for the log house might look like this:
|120 – Pour Foundation|
|Concrete Forms||Lump Sum||$1,000|
|Bob||20 hrs @ $45/hr||$900|
|Mark||40 hrs @ $35/hr||$1,400|
|Bill||40 hrs @ $35/hr||$1,400|
|210 – Wood work|
|Timber||1,200 m @ $35/m||$42,000|
|Crane||2 days @ $70/day||$1,400|
|Other Supplies||Lump Sum||$5,000|
|Bob||90 hours @ $45/hr||$4,050|
|Mark||120 hrs @ $35/hr||$4,200|
|Bill||120 hrs @ $35/hr||$4,200|
|310 – Electrical & Plumbing|
|Electrical Contractor||Lump Sum||$8,700|
|Plumbing Contractor||Lump Sum||$11,200|
|Bob||16 hrs @ $45/hr||$360|
|320 – Flooring|
|Flooring Contractor||Lump Sum||$18,400|
|Bob||8 hrs @ $45/hr||$360|
|330 – Finishing|
|Finishing Contractor||Lump Sum||$16,400|
|Bob||8 hrs @ $45/hr||$360|
|410 – Landscaping|
|Bobcat||8 days @ $65/day||$520|
|Other Supplies||Lump Sum||$2,000|
|Bob||20 hrs @ $45/hr||$900|
|Mark||60 hrs @ $35/hr||$2,100|
|Bill||60 hrs @ $35/hr||$2,100|
Step 5: Estimate Activity Durations
Just because a resource is necessary doesn’t mean it’s available. To determine the availability of resources, a project manager consults a document called a resource calendar. This document states the availability of a resource, for example, “Mark is at jobsite X from Sep. 1 to Sep. 30.” Obviously, the new project being planned cannot use this worker at that time (unless arrangements are made with the other project manager, I suppose).
PMBOK, 5th Edition, Section 6.5, “Estimate Activity Durations”
Estimate Activity Durations is the process of estimating the number of work periods needed to complete individual activities with estimated resources. The key benefit of this process is that it provides the amount of time each activity will take to complete, which is a major input into the Develop Schedule process.
Estimating is a profession in itself, but there are three methods you can utilize to determine activity durations:
- Analogous Estimating: In this method you consult the actual data from a previous or related project. Even if it has some differences to the current project, you can analyze those differences and apply a correction factor.
- Parametric Estimating: In this method you break down the project into its fundamental units that have well known and understood unit rates. For example, the square footage of a house.
- Three Point Estimating: When you have no real good data to go from, you can estimate the highest possible number (optimistic), and the lowest (pessimistic) as well as the most likely. Then you can use a triangular distribution (average them), or use a beta distribution.
- Normal Distribution: Estimate = (Optimistic + Most Likely + Pessimistic) / 3
- Beta Distribution: Estimate = (Optimistic + 4 x Most Likely + Pessimistic) / 6
Back to our example. To build our log home, we would inspect each resource table from the previous step and determine the amount of time required.
|120||Pour Foundation||10 days||$4,700|
|210||Wood work||20 days||$60,850|
|310||Electrical & Plumbing||10 days||$20,260|
The total of 80 days is not the final project duration because we haven’t accounted for the project resources yet. If the resources are not available at the right time, or more resources are required than available at a given time, the project schedule will need to be adjusted. But that’s part of the next step.
Step 6: Develop Schedule
In this step we will develop the most efficient schedule for the project. This is defined as producing the official start and end dates for each task. This can be used to direct subcontractors as to when to schedule the work, order equipment, and to prioritize internal resources. It also uses the critical path method to determine the shortest possible project completion date and which tasks directly affect it. Issues that arise within those tasks can then be dealt with on a priority basis.
PMBOK, 5th Edition, Section 6.6, “Develop Schedule”
Develop Schedule is the process of analyzing activity sequences, durations, resource requirements, and schedule constraints to create the project schedule model. The key benefit of this process is that by entering schedule activities, durations, resources, resource availabilities, and logical relationships into the scheduling tool, it generates a schedule model with planned dates for completing project activities.
To develop the schedule, the critical path method uses a five step process:
- Draw the network diagram. This can be done in MS Excel in the absence of dedicated project management software. Here is the network for the log house.
- Enter the durations of each task in the top, center box.
- Perform a Forward Pass, which determines the Earliest Start (ES) and Latest Start (LS) of each task.
- Start by entering a “1” in the top left box of the first task. This is the Earliest Start (ES) date.
- Determine the Latest Start (LS) of the first task and enter it into the top right box. LS = ES + Duration – 1. Note that the ES and LS dates are both inclusive of the task duration, therefore a one needs to be subtracted.
- Proceed to the ES of the second task. ES2 = LS1 + 1. The Early Start (ES) of each task is simply one day after the Late Start (LS) of the previous task.
- Proceed through each task by entering the ES and then the LS. When you have two LS’s to choose from, as you do with task 330, Finishing, choose the higher one.
- Perform a Backward Pass, which determines the Early Finish (EF) and Late Finish (LF) date of each task.
- Start by choosing the highest LS of the final tasks and enter it into the bottom right box for each final task. In this case, 330 – Finishing, and 410 – Landscaping are both final tasks. The higher LS is 58. Therefore, this value goes into the LF for both.
- Determine the earliest finish (EF) and enter it into the bottom left box. EF = LF – Duration + 1.
- Proceed to the LF of the previous task. EF1 = LF2 – 1.
- Proceed through each task by entering the LF and then the EF. When you have two LF’s to choose from, as you do with task 210 – Wood work, choose the lower one.
- Enter the float for each task in the bottom, center box. Float = EF – ES. This will be used in the bar chart (also called Gantt Chart) coming up next.
Once the forward and backward pass are completed, the ES and float of each task are known. These are the two variables which are carried forward into the final step of drawing the graphical bar chart, also known as a Gantt Chart.
Firstly, each task is drawn on it’s ES date and the resources are plotted underneath. The float of each task is usually drawn with a solid line underneath the task’s bar chart. In the example, for the log house I have used MS Excel to draw out a simple, basic gantt chart.
It would be a coincidence if Bob were to be working the same number of hours per day throughout the whole project, so that we’re not paying him overtime one day and then watching him sit idle the next. That’s why we perform one last step called Resource Levelling.
In resource levelling, each task that has float is moved to its ideal place within that float in order to “smooth” the overall use of project resources.
In the log house example above, the red highlighted boxes show days where people are working more than 8 hours per day. It is easy to see that the Landscaping task has a very big float and should not be completed at the same time as the Wood work. In fact, Bill and Mark can (and should) be doing the landscaping during Electrical & Plumbing, because they are otherwise idle (or available to another project). So we move the landscaping item to start on July 27, and then neither Bob nor Mark will be scheduled for 10 hour days.
Here is the final project schedule.
The level of planning involved in this scheduling process gives you a tremendous amount of confidence in the success of the project. Note that I am purposely calling a 4-6 hour day a full day (that they are not available to another project) because this allows them to call in sick, take vacation, or be needed on another project in a pinch. I like to keep 6 hours/day as a practical maximum. In some cases extra one-time hours have been assigned, such as Bob using 8 hours per day for two days while the crane is on site. But this short burst of time is realistic, and can be sustainable when the rest of the task uses only 4 hours/day of his time.
Did you notice how easy it was to see that you will need Bill and Mark, the laborers, for 9 and a half weeks, and Bob the foreman for 12 weeks this summer to build the log house?
Also, it’s easy to see when things are coming up, like scheduling the plumbers and electricians, or ordering supplies. If you looked at this schedule every day throughout the project, you’d have everything under control.
Simple upgrades to this spreadsheet include adding contingencies, breaking down the supplies even further, and adding notes within the resources section like when to order supplies so that they are needed on the job site.
You have just produced a professional, resource levelled schedule that provides tremendous confidence in the achievement of the project deadline.
Do you think you could build a log house in 58 days with $134,800?
The truth is that I’ve left some things out for clarity. In real life you will probably have a few more tasks like roofing, drywalling, painting, etc., and you will need the electricians to come back to hook up the light fixtures. So don’t use my figures as gospel, they are probably on the low side. But if you are actually building a log house, or whatever your project consists of, start with this template and make sure all the tasks are there.
Good luck with your project scheduling!