The project schedule is the time-based and/or sequenced description of all of the project activities. The time element is one of the triple constraints that every project leader must contend with: scope, schedule, and resources/budget. There are a variety of techniques for both displaying the project schedule and analyzing the project schedule. Each technique focuses on a different aspect of the project. Depending upon the project objectives and major risks, different techniques should be used by the project leader. A brief description of each technique is listed below along with suggestions for when, and when not, to use them. The techniques for displaying the schedule are the Milestone Chart, the Task List, the Gantt Chart (Bar chart), the Network Diagram, the Two Dimensional Task List, and the Calendar View. The schedule analysis tools are the Critical Path analysis, the Critical Chain analysis, the PERT analysis, the Resource Leveling analysis, and a variety of Schedule Acceleration Techniques. For information on creating schedule estimates, please refer to Project Estimating.
The milestone chart is portrayed on a project time line. It displays only the key project milestones. These milestones are typically associated with some major element of project risk, such as passing a test or gaining approval from a regulatory agency. Each milestone is represented by a diamond or triangle. These milestones normally become major reporting points to senior management. Large complex projects may have hundreds or even thousands of tasks. Senior management usually does not want to receive status reports at that level of detail, yet they want something more than just a �tollgate� review at the end of a phase. The milestones provide interim reporting points. Also, when planning a complex project, task leaders can become overwhelmed with all the tasks they must do. Having a focused sub-project for each milestone gives those task leaders a framework for planning and tracking project activities. The Milestone Chart is the schedule reporting format that I use on Full-Scale and Complex projects.
The Task List is the simplest of the schedule format tools, yet it can be the most powerful and useful tool with extended members of the project team. A Task List is just an action item list for the team member that contains all of the tasks that individual is responsible for completing. This provides a focus for the individual as to what they need to do. This format works very well with extended team members on large projects. In those cases, the project may contain hundreds of tasks but often the extended team member is only involved in a small number of those tasks. The extended team member can review their task list and understand what they must do on the project without going through the hundreds of tasks, searching for those requiring their effort. If the team has many extended team members with limited involvement in the total project, this technique usually is the best method for communicating and tracking scheduling of the work from those extended team members.
Gantt Chart (Bar Chart)
The Gantt, or Bar, chart is the most common schedule format used on projects. This format is excellent for tracking progress or activity for tasks once they have been scheduled. In the Gantt chart, every task is represented by a bar of a time line chart. The left edge of the bar is located at the time the task is planned to start and the right edge of the bar is located at the time the task is planned to end. As the project unfolds, the edges of the bars are often modified to reflect when the task actually started or ended. This format creates focus for tracking progress because it is clear to see whether a task should be completed, underway, or pending at any given time. The Gantt chart is used for daily/weekly tracking of project progress. It is easy to use and maintain. It has become the most commonly used project schedule chart because of its simplicity and the focus it creates when tracking the project. If the task estimates are relatively accurate, this is the preferred format. However, when task duration estimates are not accurate - either due to uncertainty in the amount of work or uncertainty in the resource availability - the Gantt Chart will be a frustrating and counterproductive scheduling tool. In those cases I recommend the use of the Network Diagram.
The Network Diagram is essentially a flowchart of the project tasks. This format is a foundational technique for several analytical techniques. The network is created by determining predecessor and successor relationships and connecting the tasks based upon those relationships. This technique will create focus on the handoffs. In a complex project with many organizations/individuals involved, this technique can provide guidance as to who is the internal customer for each task. The technique is often viewed as a foundational technique since most of the advanced analytical scheduling tools start with the Network Diagram. When task durations are uncertain, the Network Diagram is often a better technique to use than the Gantt (bar) chart. The Network Diagram shifts the focus for uncertain tasks from arbitrary start and end dates to completion of the work and a handoff to the next task/activity.
2-D Task List
The 2-Dimensional Task List is only needed occasionally. However, in those situations it both simplifies planning and tracking while improving the ability of the project manager to manage many of the project tasks effectively. This technique is used for scheduling and tracking a large quantity, or batch, of items through the same set of project tasks or activities. The 2-D task list is a matrix with the vertical side being a list of the items in the batch and the horizontal being the set of tasks. The planned date for task completion of each item through the set of tasks is set in the corresponding box of the matrix. As a task is completed, normally the background color of the cell in the matrix is changed so that it shows completion. This change in color allows the project manager to quickly see when one item in the batch starts to fall behind or when many items in the batch become bottlenecked at one step in the set of tasks. When I use this approach, I will place a summary task on the project-level Gantt Chart or Network Diagram that represents the activity within the 2-D Task List. Through the use of the matrix, hundreds of tasks can be tracked efficiently without burdening one of the other techniques with redundant activities..
The Critical Path method is used to determine what the shortest time is to complete the project, or a phase of the project. The method analyzes every possible sequence of tasks � based upon the network diagram � to determine which sequence is the longest. This sequence is called the critical path because it sets the minimum time in which the project can be completed. A caution when using critical path � it assumes that you have all the resources you need at all times. This is seldom a valid assumption, so the minimum time indicated by the critical path is seldom actually achieved on a project. To determine the critical path, the network diagram is created for the project with the maximum amount of parallel task as your risk sensitivity can tolerate. Each task duration is estimated, assuming the task will have the desired resources available when needed. With the durations and relationships from the network diagram, calculate first the earliest possible start date and finish date for each task. Then using the calculated project finish date, determine the latest possible start and finish date for each task that still supports that date. This set of calculations is normally done by project management software. The sequence of tasks with identical dates for early start and latest start are the critical path. The tasks have no float or slack � a one day delay on one of these tasks immediately translates into a one day delay on the project.
The Critical Chain technique was developed by Eliyahu Goldratt. This technique builds on the analysis done using critical path and resource leveling techniques. It is used when the resource leveling technique has delayed the end date of the project. Critical chain reprioritizes the work, applying principles of the Theory of Constraints, and provides simple tracking principles to accelerate the project and ease the burden on project management. This is done by determining the best allocation of the critical or constraining resource and shifting the tracking approach to concentrate on this resource. The critical chain approach requires the development of the network diagram and the critical path and resource leveling calculation to have been done. Once this is accomplished, the constraining resource � or most constrained if there are multiple constraining resources � is determined and a sequence of project tasks that the constraining resource MUST contribute to is determined. The estimates for those tasks are reviewed and any work that can be shifted to an unconstrained resource is reallocated. This sequence of tasks, known as the critical chain, is then scheduled based upon the availability of the constained resource. All other tasks are then scheduled to occur in parallel with the critical chain. These parallel paths are scheduled so as to ensure there is float, or a buffer, at the end of the path, prior to a handoff into the critical chain. This buffer float is then tracked by project management to ensure that these tasks and sequences complete prior to the need for their results by a critical chain task.
PERT, which stands for Program Evaluation and Review Technique, was developed by the US Navy in the 1960�s as a way to put boundaries around overall project durations. At that time the Navy was doing development that was on the leading edge of technology and the estimates for task durations were often very uncertain. Individuals or organizations that were risk adverse would typically set a conservative schedule, while individuals or organizations that were risk seekers would often set an aggressive schedule. The final result would usually be between the two estimates. The Navy established the analysis tool of PERT to determine the best case and worst case boundaries for the project. In addition, they created a PERT estimate for each task and using the task-level PERT estimate they would create a project PERT schedule duration. The PERT estimate is a simple risk-mitigation approach that considers the best case and worst case of a task estimate but also includes a most likely estimate that is between the two and is heavily weighted. The three estimates are averaged using the PERT formula to create the PERT estimate for the task. A PERT analysis starts with a network diagram. Each task duration is estimated three times, the best case, worst case, and most likely case. A worst case schedule is developed using only worst case estimates. A best case schedule is developed using only best case estimates. A PERT estimate is determined for each task. A PERT project schedule is then set using the PERT estimates. This is often considered a �poor man's� simulation for estimating.
Resource Leveling is a technique used to smooth out the peaks and valleys in the required project resources. This leveling process usually results in changes to the project schedule. Through the use of leveling, the best allocation of resources assigned to the project can be determined. The resource leveling technique applies when the project has been planned with a high degree of parallelism. Usually in this case many of the different parallel paths will have float (unless they are a critical path). That float is used to reposition tasks so that the resources required to conduct that task are not needed at the same time on another task. To do resource leveling, first the network diagram is developed and the task durations and resources requirements for each task are determined. Next the critical path is calculated. Resources are then assigned to critical path tasks first. Once all critical path tasks have been fully resourced, then the resources are assigned to the other tasks � using float to reposition tasks between their earliest start and latest finish time and at a time when resources are unallocated. If, after using float to reposition tasks, there is still an insufficient amount of resources at some time in the project, then tasks are stretched or delayed past their latest finish time until the resources are available. This will extend the end date of the project. This analysis is typically done using project management software. However, a caution when using software � some applications do not fully protect the critical path but are quick to start stretching and delaying tasks.
Schedule acceleration techniques are used to shorten the overall length of the project. However, they are not free. While they reduce the planned total duration of the project, they do so by increasing risk in some other aspect of the project. They need to be deployed carefully, and always with an update to the project risk management plan. There are five schedule acceleration techniques - each with its own unique set of risks. Selecting the technique, or combination of techniques, to be used depends on the characteristics of the activities to be accelerated and the overall risk sensitivity in the project.
These methods can be used in a stand-alone manner or in combinations. However, they all result in some level of increased risk to the project. Whenever a schedule acceleration technique is used, the risk analysis must be updated to include the risk associated with the technique failing to deliver the potential benefit.