Project Evaluation Review Technique and Critical Path Method (CPM) are scheduling techniques used to plan, schedule, budget and control the many activities associated with projects. Projects are usually very large, complex, custom products that consist of many interrelated activities to be performed either concurrently or sequentially. The planning horizon for PERT/CPM typically extends beyond the six-month time frame of traditional short-range planning used in the other production processes. Utilizing PERT/CPM involves breaking the total project down into many different individual activities with identifiable time requirements. Each activity must be accomplished as part of the total work to be done. Custom products (made to customer specification) are produced with a project process; therefore, the customer's desired completion date is the focal point for scheduling. The time to begin work on the project is determined by working backward from the customers desired completion date. Project managers must coordinate each of the activities so the project can be completed at the desired date and with minimal costs. The PERT/CPM schedule allows for converting the project plans 2
into an operating timetable; thus, provides direction for managing the day-to-day activities of projects. Although application of both PERT and CPM follow the same steps and use network diagrams to schedule and control projects, the primary difference between these two techniques is that PERT is probabilistic where CPM is deterministic. The terms PERT and CPM will be used together or interchangeably in this paper to present the basic principles behind the application of these techniques. In addition, deterministic activity times in this paper will be used to illustrate the techniques.
A SIMPLE EXAMPLE A simple exercise (scheduling a student's morning) is used here to illustrate the principles of applying PERT/CPM to a set of interrelated activities. A student has several activities that must be performed either simultaneously or sequentially before he/she attends a 9:30 class. The activities have been identified as individual activities to be done prior to attending class. The desired completion time for these activities is 9:30, otherwise the student will be late for class. A list of activities that must be performed prior to class and the time required to do the activities are as follows:
3 # Activity Time Required A. Wake-up & get out of bed = 10 minutes B. Shower = 10 minutes C. Dress = 10 minutes D. Prepare Breakfast = 20 minutes E. Eat Breakfast = 15 minutes F. Brush Teeth = 5 minutes G. Transportation to Class = 40 minutes
Assuming these tasks must be performed sequentially according to the activity number presented in the list, a network diagram illustrating the relationships among the activities can be developed (see Figure 1).
10
10
10
20
15
5
40
A B C D E F G
FIGURE 1 ACTIVITIES PRIOR TO 9:30 CLASS
If the student scheduling the activities begins at some point in time (zero) and moves through the path of activities in sequence (in this example there is only one path; however, complex projects may have hundreds of paths), the student will find that the shortest time required to complete all the activities prior to class is:
10 + 10 + 10 + 20 + 15 + 5 + 40 = 110 minutes 1 2 3 4 5 6 7 8 4 Since these activities take 110 minutes to complete, the student must begin the first activity at 7:20 in order to arrive at the 9:30 class on time. Each activity's start and end times can be determined and then used by the student to control his/her on- time arrival for the 9:30 class. PERT/CPM requires a network diagram of all the activities graphically interrelated showing the precedence relationships of the activities. Arrows in the network presented in Figure 1 represent the activities to be accomplished. An activity in a PERT/CPM network consumes resources and/or time and can be referred to by their endpoints and/or a letter assigned to the arrow. An event is a point in time, a milestone in the total work to be accomplished; it marks the beginning and end of an activity. Events do not consume resources or time and are numbered with those at the tail of the activity having lower numbers than the events at the head of each activity arrow (left to right). Events are represented by circles (nodes) and networks begin with one node and end with one node. Precedence relationships must be defined in order to determine the sequence of activities in the network e.g., some activities cannot begin until others have been completed. In Figure 1, the second activity cannot be done until the first activity has been completed.
5
10
10
A B indicates activity A cannot begin before activity B is completed. Event #1 (node # 1) indicates a point in time and marks the beginning of activity A. Event #2 (node #2) indicates a point in time and marks the end of activity A and the beginning of activity B. A path through the network is a unique set of activities that leads from the starting node to the finishing node. The longest path (amount of time) through the network, from start to finish, is the critical path. The project cannot be completed sooner than the time required for completing the activities in the critical path. In Figure 1, the critical path is equal to 110 minutes and the sequence of activities cannot be completed sooner than 110 minutes.
STEPS INVOLVED IN PERT/CPM There are six steps involved in PERT/CPM that should be completed in chronological order: 1. Identify activities required by the project.
2. Identify the precedence relationships among the activities.
3. Determine the expected time requirements for each activity.
4. Develop a network diagram of activities (arrows) and events or nodes (circles) showing precedence relationships.
5. Determine the earliest and latest feasible event times.
6. Identify the critical path (the minimum time to complete the project).
1 2 6
Take the following network and activities (in weeks):
F 5
FIGURE 2 EXAMPLE NETWORK
A path is a unique set of connected tasks or activities from beginning to end of the network. The length of each path is determined by adding the activity times on the path. In the above network A 2 indicates A activity takes two weeks. Often, these paths have some activities in common with each other. The following list indicates each unique path and the length of each path through the example network (Figure 2):
G 6 4 5 6 1 7 The critical path is defined as the longest path through the network. Path B-C-D-G-H has a length of 20 weeks, (3 + 4 + 3 + 6 + 4) making it the longest path through the network. The critical path can be shown with double arrows along the activities on the critical path.
C 4
FIGURE 3 CRITICAL PATH
The slack associated with each path can be determined by the difference between that paths length and the longest paths length. For example, path A-F-H is the shortest path at 11 weeks. This path has a total slack of 9 weeks that is the difference between the length of the critical path (B-C-D-G-H) and the length of Path A-F-H (20 - 11 = 9). The slack associated with each activity is determined by using a forward pass and backward pass. A forward pass is used to find the earliest event times. The forward pass involves tracing each 2 3 A 2
B 3
D 3 E 8 H 4
G 6 4 5 6 1 F 5 8 path forward through the network and cumulatively adding the activity times according to a specified procedure. Because the required start date for the project is initially unknown, the forward pass begins with a time of zero.
FORWARD PASS In a process called the "forward pass", the PERT/CPM project manager can determine the "earliest event times" (for definitions of earliest start and finish times see the PERT/CPM terminology section) for each activity. The forward pass involves tracing each path forward through the network and cumulatively adding the activity times according to a specified procedure. The cumulative adding of the activity times provides the scheduler with earliest start and finish times for each activity, and the total length of time required for completing the project or the project duration. Since the required start date for the project is initially unknown, the forward pass begins with a time of zero. PATH A D. The earliest start time (ES) for activity A is time zero (0) and the earliest finish time (EF) is equal to the earliest start time plus the activity time or EF = ES + t or 2 = 0 + 2. Since activity D can not begin until both activity A and C are completed then the forward pass must go back to the beginning node and follow the path through B 1 9 C to determine earliest finish time for activity C. PATH B C. The earliest start time (ES) for activity B is 0 and the earliest finish time (EF) for activity B is 3 (EF = ES + t or 3 = 0 + 3). The earliest start time for activity C = the earliest finish time for activity B or 3. The earliest finish time for C is 7 (7 = 3 + 4). When two arrows go into node 3 then the earliest start time (ES) for the following activity D is the larger of the two earliest finish times for activities A and C or 7 (7 > 2). This same process is used throughout the forward pass to determine the earliest event times as shown in Figure 4.
FIGURE 4 FORWARD PASS
E 8 C 4 2 3 A 2
B 3
D 3 H 4
G 6 4 5 6 1 F 5 3 | 11 7 | 10 0 | 3 3 | 7 7 | 12 10 | 16 16 | 20 0 | 2 ES | EF 3 10 BACKWARD PASS In a process called the "backward pass", the PERT/CPM project manager determines the "latest event times" (for definitions of latest start and finish times see the PERT/CPM terminology section) for each activity. The backward pass involves tracing each path backward through the network and subtracting activity times according to a specified procedure. Because the duration of the project (20 in this example was determined in the forward pass), the backward pass begins with the project duration time determined in the forward pass. PATH H G. Since we want to minimize the costs associated with completing the project, the earliest finish time (EF = 20) for activity H becomes the latest finish time (LF) for H. The latest finish time for activity H is the latest activity H can finish and not delay the project. Starting with 20 and working through the network backward, we can determine the latest start time for activity H subtracting the activity time (4) for H from the latest finish time or LS = LF - t or 16 = 20 + 4. Activity G must be completed by week 16 or activity H becomes delayed. PATH G D. The latest finish time (LF) for G is 16. Therefore, the latest start time for G is 10 (16 6). The latest start time (LS) for G is equal to the latest finish time (LF) for D (10). The latest start time (LS) for D is 7 (7 = 10 3). When two arrows come out of node (node 3), the backward 11 pass cannot be completed until the latest start times for all arrows coming out of the node are determined. Therefore, to continue the backward pass, the latest event times for activity F must be determined. The latest finish time (LF) for F is 16 and the latest start time for F is 11 (16-5). Then, to continue the backward pass through activities A and C, the latest finish time for activities A and C is the larger of the two latest start times for activities D and F or 11 (11 > 7). This same process is used throughout the backward pass to determine the latest event times as shown in Figure 5.
FIGURE 5 BACKWARD PASS
C 4 H 4 E 8 2 3 A 2
B 3
G 6 4 5 6 1 8 | 16 7 | 10 0 | 3 3 | 7 11 | 16 10 | 16 5 | 7 16 | 20 F 5 LS | LF D 3 12
Knowledge of these earliest and latest times allows the project scheduler to identify any slack time associated with the activities, thus the project manager can allocate resources in the most effective manner. If resources need to be shifted from one activity to another with consideration for project completion, the event times provide information to effectively allocate these resources. The efforts of a project manager using PERT are directed at scheduling each of the activities and controlling each of the activities according to the PERT plan. The activities on the critical path have zero slack, thus emphasis is placed on monitoring those activities on the critical path.
SLACK Once the event times have been determined then the activity slack can be determined. Activity slack is defined as the difference between the late start (LS) and early start (ES) times for an activity. Numerically, (LS ES) = activity slack. Also, the difference between the late finish (LF) and the early finish (EF) times also indicates the amount of slack for an activity. Numerically, (LF - EF) = activity slack. Table 1 shows the resulting event times for each of the activities.
13
TABLE 1 EVENT TIMES AND SLACK
Activity LS ES LF EF Slack
A 5 0 7 2 5 B 0 0 3 3 0 C 3 3 7 7 0 D 7 7 10 10 0 E 8 3 16 11 5 F 11 7 16 12 4 G 10 10 16 16 0 H 16 16 20 20 0
During the planning phase of a project, planners often develop budgets for each task and sub-task of the project. When these budgets are aggregated, we arrive at the budget for the project. Besides managing time, project managers must monitor budget expenditures throughout the project. As the project progresses through time, the graphical depiction of the network must change to reflect the progress being made on the project. Project managers usually hold regular meetings to determine the status of a projects implementation with regular updating of the PERT network required (or updating of whatever project management tool is being used).
14 PERT/CPM TERMINOLOGY (ACTIVITY-ON-ARROW - AOA)
ACTIVITY - Activity or task to be accomplished as part of the total work to be done. Activities consume resources and/or time. They can be identified with starting and ending points. The network activities are represented by arrows and can be referred to by their endpoints and/or a letter assigned to the arrow.
EVENT - An event is a point in time, a milestone in the total work to be accomplished. It marks the beginning and end of an activity. Events do not consume resources or time. Events are numbered with those at the tail of the activity having lower numbers than the events at the head of each activity arrow (left to right). Events are represented by circles (nodes).
PRECEDENCE RELATIONSHIPS - Some activities can not begin until others have been completed. For example, a contractor cannot lay cement blocks until the foundation has been poured and cured. The foundation cannot be poured until the soil has been excavated and forms have been built. Precedence relationships must be defined in order to determine the sequence of activities in the network.
NETWORK - The set of all project activities graphically interrelated through precedence relationships. Networks should begin with one node and end with one node.
SLACK - The amount of play in the system. The slack associated with any path is simply the difference between the time required for the critical path and the time required for the given path. The amount of slack associated with each activity indicates the length of time an activity can be delayed without affecting the completion date for the entire project. The amount of slack for each activity is computed as follows:
Slack = LS - ES or LF - EF
PATH - A sequence of activities that leads from the starting node to the finishing node.
15 CRITICAL PATH - The longest path through the network. The critical path is the minimum time for expected completion of the entire project. The amount of slack associated with the critical path is zero. Each of the activities on the critical path has zero slack. A network can have more than one critical path.
EARLIEST START TIME (ES) - The earliest time an activity can start, assuming all preceding activities start as early as possible.
EARLIEST FINISH TIME (EF) - The earliest time an activity can finish.
EF = ES + t
LATEST START TIME (LS) - The latest time an activity can start and not delay the project.
LS = LF - t
LATEST FINISH TIME (LF) - The latest time an activity can finish and not delay the project.
DUMMY - Dummy activities are not real activities and thus will not actually be performed during the project. A dummy activity has a time of zero. They are used primarily to maintain the precedence relationships required in the network.
CRASHING - Crashing involves reducing the overall time required to complete the project. This involves trading off costs of additional resources against the value of time saved to complete the project. Crashing is used with activities on the critical path.