The GAO has produced an excellent guide to scheduling. It is extensive (200 pages!) and stems from their audits of thousands of government projects. The appendix even includes audit questions that can be used to gauge adherence to the best practices.
It starts with four characteristics of a good schedule:
- A comprehensive schedule includes all activities for both the government and its contractors necessary to accomplish a project’s objectives as defined in the project’s WBS. The schedule includes the labor, materials, and overhead needed to do the work and depicts when those resources are needed and when they will be available. It realistically reflects how long each activity will take and allows for discrete progress measurement.
- A schedule is well-constructed if all its activities are logically sequenced with the most straightforward logic possible. Unusual or complicated logic techniques are used judiciously and justified in the schedule documentation. The schedule’s critical path represents a true model of the activities that drive the project’s earliest completion date and total float accurately depicts schedule flexibility.
- A schedule that is credible is horizontally traceable—that is, it reflects the order of events necessary to achieve aggregated products or outcomes. It is also vertically traceable: activities in varying levels of the schedule map to one another and key dates presented to management in periodic briefings are in sync with the schedule. Data about risks and opportunities are used to predict a level of confidence in meeting the project’s completion date. The level of necessary schedule contingency and high priority risks and opportunities are identified by conducting a robust schedule risk analysis.
- Finally, a schedule is controlled if it is updated periodically by trained schedulers using actual progress and logic to realistically forecast dates for program activities. It is compared against a designated baseline schedule to measure, monitor, and report the project’s progress. The baseline schedule is accompanied by a baseline document that explains the overall approach to the project, defines ground rules and assumptions, and describes the unique features of the schedule. The baseline schedule and current schedule are subject to a configuration management control process.
Then the guide has ten best practices for good scheduling:
- Capturing all activities. The schedule should reflect all activities as defined in the project’s work breakdown structure (WBS), which defines in detail the work necessary to accomplish a project’s objectives, including activities both the owner and contractors are to perform.
- Sequencing all activities. The schedule should be planned so that critical project dates can be met. To do this, activities need to be logically sequenced—that is, listed in the order in which they are to be carried out. In particular, activities that must be completed before other activities can begin (predecessor activities), as well as activities that cannot begin until other activities are completed (successor activities), should be identified. Date constraints and lags should be minimized and justified. This helps ensure that the interdependence of activities that collectively lead to the completion of events or milestones can be established and used to guide work and measure progress.
- Assigning resources to all activities. The schedule should reflect the resources (labor, materials, overhead) needed to do the work, whether they will be available when needed, and any funding or time constraints.
- Establishing the duration of all activities. The schedule should realistically reflect how long each activity will take. When the duration of each activity is determined, the same rationale, historical data, and assumptions used for cost estimating should be used. Durations should be reasonably short and meaningful and allow for discrete progress measurement. Schedules that contain planning and summary planning packages as activities will normally reflect longer durations until broken into work packages or specific activities.
- Verifying that the schedule can be traced horizontally and vertically. The detailed schedule should be horizontally traceable, meaning that it should link products and outcomes associated with other sequenced activities. These links are commonly referred to as “hand-offs” and serve to verify that activities are arranged in the right order for achieving aggregated products or outcomes. The integrated master schedule (IMS)should also be vertically traceable—that is, varying levels of activities and supporting subactivities can be traced. Such mapping or alignment of levels enables different groups to work to the same master schedule.
- Confirming that the critical path is valid. The schedule should identify the program critical path—the path of longest duration through the sequence of activities. Establishing a valid critical path is necessary for examining the effects of any activity’s slipping along this path. The program critical path determines the program’s earliest completion date and focuses the team’s energy and management’s attention on the activities that will lead to the project’s success.
- Ensuring reasonable total float. The schedule should identify reasonable float (or slack)—the amount of time by which a predecessor activity can slip before the delay affects the program’s estimated finish date—so that the schedule’s flexibility can be determined. Large total float on an activity or path indicates that the activity or path can be delayed without jeopardizing the finish date. The length of delay that can be accommodated without the finish date’s slipping depends on a variety of factors, including the number of date constraints within the schedule and the amount of uncertainty in the duration estimates, but the activity’s total float provides a reasonable estimate of this value. As a general rule, activities along the critical path have the least float.
- Conducting a schedule risk analysis. A schedule risk analysis uses a good critical path method (CPM) schedule and data about project schedule risks and opportunities as well as statistical simulation to predict the level of confidence in meeting a program’s completion date, determine the time contingency needed for a level of confidence, and identify high-priority risks and opportunities. As a result, the baseline schedule should include a buffer or reserve of extra time.
- Updating the schedule using actual progress and logic. Progress updates and logic provide a realistic forecast of start and completion dates for program activities. Maintaining the integrity of the schedule logic at regular intervals is necessary to reflect the true status of the program. To ensure that the schedule is properly updated, people responsible for the updating should be trained in critical path method scheduling.
- Maintaining a baseline schedule. A baseline schedule is the basis for managing the project scope, the time period for accomplishing it, and the required resources. The baseline schedule is designated the target schedule, subject to a configuration management control process, against which project performance can be measured, monitored, and reported. The schedule should be continually monitored so as to reveal when forecasted completion dates differ from planned dates and whether schedule variances will affect downstream work. A corresponding baseline document explains the overall approach to the project, defines custom fields in the schedule file, details ground rules and assumptions used in developing the schedule, and justifies constraints, lags, long activity durations, and any other unique features of the schedule.