Project Management THE MANAGERIAL PROCESS Clifford F. Gray Eric W. Larson Third Edition Chapter 6 Developing a Project Plan Copyright © 2006 The McGraw-Hill Companies. All rights reserved. PowerPoint Presentation by Charlie Cook 2 Useful Abbreviations • CPM - Critical Path Method • PERT - Program Evaluation and Review Technique 3 Background • Schedule is the conversion of a project action plan into an operating timetable • Basis for monitoring a project • One of the major project management tools • Work changes daily, so a detailed plan is essential • Not all project activities need to be scheduled at the same level of detail 4 Background Continued • Most of the scheduling is at the WBS level, not the work package level • Only the most critical work packages may be shown on the schedule • Most of the scheduling is based on network drawings 5 Network Scheduling Advantage • Consistent framework • Shows interdependences • Shows when resources are needed • Ensures proper communication • Determines expected completion date • Identifies critical activities 6 Network Scheduling Advantage Continued • Shows which of the activities can be delayed • Determines start dates • Shows which task must be coordinated • Shows which task can be run parallel • Relieves some conflict • Allows probabilistic estimates 7 Network Scheduling Techniques: PERT (ADM) and CPM (PDM) • PERT was developed for the Polaris missile/submarine project in 1958 • CPM developed by DuPont during the same time • Initially, CPM and PERT were two different approaches –CPM used deterministic time estimates and allowed project crunching –PERT used probabilistic time estimates • Microsoft Project (and others) have blended CPM and PERT into one approach 8 Developing the Project Plan • The Project Network –A flow chart that graphically depicts the sequence, interdependencies, and start and finish times of the project job plan of activities that is the critical path through the network. • Provides the basis for scheduling labor and equipment. • Enhances communication among project participants. • Provides an estimate of the project’s duration. • Provides a basis for budgeting cash flow. 9 From Work Package to Network WBS/Work Packages to Network FIGURE 10 From Work Package to Network (cont’d) WBS/Work Packages to Network (cont’d) FIGURE 6.1 11 Constructing a Project Network • Terminology –Activity: an element of the project that requires time. A –Merge Activity: an activity that has two or more preceding activities on which it depends. B D –Parallel (Concurrent) Activities: Activities that can occur independently and, if desired, not at the same time. C 12 Constructing a Project Network (cont’d) • Terminology –Path: a sequence of connected, dependent activities. –Critical path: the longest path through the activity network that allows for the completion of all project-related activities; the shortest expected time in which the entire project can be completed. Delays on the critical path will C delay completion of the entire project. A B (Assumes that minimum of A + B > D 13 Constructing a Project Network (cont’d) • Terminology –Event: a point in time when an activity is started or completed. It does not consume time. –Burst Activity: an activity that has more than one activity immediately following it (more than B one dependency arrow flowing from it). • Two Approaches C A –Activity-on-Node (AON) • Uses a node to depict an activity. D –Activity-on-Arrow (AOA) • Uses an arrow to depict an activity. 14 Basic Rules to Follow in Developing Project Networks • Networks typically flow from left to right. • An activity cannot begin until all of its activities are complete. • Arrows indicate precedence and flow and can cross over each other. • Identify each activity with a unique number; this number must be greater than its predecessors. • Looping is not allowed. • Conditional statements are not allowed. • Use common start and stop nodes. 15 Activity-on-Node Fundamentals FIGURE 16 Activity-on-Node Fundamentals (cont’d) FIGURE 6.2 17 Network Information TABLE 18 Koll Business Center—Partial Network FIGURE 19 Koll Business Center—Complete Network FIGURE 20 Constructing Expected Time Estimates Table 8-1 21 The AON Network from the previous table Figure 8- 22 Calculating Activity Times 23 The Results Table 8-2 24 'Normal' Practice in the planning phase • We identify the tasks in the Project and specify the resources needed for each one • We allocate to each task sufficient time that we are confident will allow it to be completed with those resources. That is, the time the task should take on average, plus some contingency to give us the confidence we seek • We apply task dependencies, and work out the longest path of tasks in the Project • The time along this path is the time-line of the Project 25 Normal practice in the execution phase • As long as every task completes on time (within its contingency), its successors will be started on time • As soon as any task finishes late (outside its contingency), its successors will start late, and this normally means they will finish late • In order to rescue a Project which shows any lateness, we have to squeeze the remaining tasks in the Project • Typically we have to compromise on time, cost or scope and reschedule 26 The Estimating Dilemma • If I allow more time for every task in the plan, each task is less likely to be late, but the Project end date will be later... • If I allow less time, the end date will be earlier, but the Project is more likely to overrun • BUT I have to deliver the Project on time 27 How long should we allow in the plan for a task ? • Some staff work more quickly than others • Sometimes staff are distracted or interrupted • Sometimes necessary resources are delayed • Some staff are risk-averse in their commitments • Some organisations reinforce risk-aversion • 28 How long do we allow in the plan for a task ? • The average time the task ought to take an average performer who focuses on it • PLUS The time we expect to be spent on distractions • PLUS A contingency time to take account of: • The spread between average and low performers • Our uncertainty in the average time • Our uncertainty in the time for distractions 29 Some simple math • If we set our estimates so that we are 90% sure that any one task will be completed on time • If we have 20 tasks in our Project • The Probability that all the tasks • will be on time is: 0.920 = 12% • For 50 tasks, the Probability of all on time is: 0.950 = 1% 30 Emphasising • Doing things by the text-book, with 20 tasks, each of which we are 90% sure will complete on time, we have an 88% probability of being late for the Project • With 50 tasks, its a lot worse: its a 99% probability of being late for the Project 31 What if we change our estimating to a 95% confidence level ? • NB This will inflate the time for every task maybe by 25 - 50% because we will need more contingency • For 20 tasks the probability of being late is now 64% (was 88%) • For 50 tasks we are late now 92% (was 99%) We have very much extended our Project time-line, and increased our chances of success from 12% to 36% for the small Project, and from 1% to 8% for the large Project We’ll look at a way to address this problem later today… 32 Scheduling the network in time • Once we’ve calculated the Expected Time (Te) for each task, we can create a preliminary schedule • We’ll do this in two passes: Forward and backward • Both passes take into account tasks that have multiple predecessors (merge tasks) or that generate multiple tasks (burst tasks) • Each of the two passes answers slightly different questions 33 Network Computation Process • Forward Pass—Earliest Times –How soon can the activity start? (early start— ES) –How soon can the activity finish? (early finish—EF) –How soon can the project finish? (expected time—ET) • Backward Pass—Latest Times –How late can the activity start? (late start—LS) –How late can the activity finish? (late finish— LF) –Which activities represent the critical path? 34 Forward Pass Computation • Add activity times along each path in the network (ES + Duration = EF). • Carry the early finish (EF) to the next activity where it becomes its early start (ES) unless… • The next succeeding activity is a merge activity, in which case the largest EF of all preceding activities is selected. 35 Network Information TABLE 36 Activity-on-Node Network FIGURE 37 Activity-on-Node Network Forward Pass FIGURE 38 Backward Pass Computation • Subtract activity times along each path in the network (LF - Duration = LS). • Carry the late start (LS) to the next activity where it becomes its late finish (LF) unless • The next succeeding activity is a burst activity, in which case the smallest LF of all preceding activities is selected. 39 Activity-on-Node Network Backward Pass FIGURE 40 Determining Slack (or Float) • Slack (or Float) –The amount of time an activity can be delayed after the start of a longer parallel activity or activities. • Total slack –The amount of time an activity can be delayed without delaying the entire project. • The critical path is the network path(s) that has (have) the least slack in common. • Slack for a task = Late Start - Early Start (LS-ES) 41 Activity-on-Node Network with Slack FIGURE 42 Practical Considerations • Network Logic Errors • Activity Numbering • Use of Computers to Develop Networks • Calendar Dates • Multiple Starts and Multiple Projects 43 Illogical Loop FIGURE 44 Hammock Activities • Hammock Activity –An activity that spans over a segment of a project. –Duration of hammock activities is determined after the network plan is drawn. –Hammock activities are used to aggregate sections of the project to facilitate getting the right amount of detail for specific sections of a project. 45 Hammock Activity Example FIGURE 46 Extended Network Techniques to Come Close to Reality • Laddering –Activities are broken into segments so the following activity can begin sooner and not delay the work. • Lags –The minimum amount of time a dependent activity must be delayed to begin or end. • Lengthy activities are broken down to reduce the delay in the start of successor activities. • Lags can be used to constrain finish-tostart, start-to-start, finish-to-finish, start-to- 47 Example of Laddering Using Finish-to-Start Relationship FIGURE 48 Use of Lags Finish-to-Start Relationship Start-to-Start Relationship FIGURE 6.13 FIGURE 49 Use of Lags Cont’d Use of Lags to Reduce Detail FIGURE 50 New Product Development Process FIGURE 51 Use of Lags (cont’d) Finish-to-Finish Relationship Start-to-Finish Relationship Combination Relationship FIGURE 6.17 FIGURE 6.18 FIGURE 6.19 52 Network Using Lags FIGURE 53 Introduction to Critical Chain planning • We can reduce variability, but we cannot eliminate it, because it is inherent to the nature of a Project We must manage the variability that remains 54 How we handle variability in Critical Chain • We do not build in any contingency at the Task level • We move all the contingency to the Project level - we call this the Completion Buffer Individual Tasks can now be late without affecting the completion date of the Project The Project due date is protected as long as the accumulated lateness along any one chain is less than the completion buffer 55 What difference does this make to our probability of being late ? • Under 'normal' practice, if any task is later than its contingency allows, we have a problem • Under Critical Chain, we only have a problem if the total lateness exceeds the total contingency • This second condition is much less likely than the first [ Law of averages / Central limit theorem] and increasingly so as the number of tasks increases 56 The Completion Buffer • A Buffer is a block of time which protects a deliverable from being affected by delays upstream. The Completion Buffer protects the Project completion date • Over the course of the Project we expect our buffers to be used up, in proportion to progress made 57 Scarcity of Resources • In putting together the plan, we must take into account scarcity of resources • In particular, if two tasks want exclusive use of the same resource, at the same time, they have to be staggered • This affects the plan in a similar way to the task dependencies 58 Scarcity of Resources Task C depends on both A and B Each task uses a different resource Task A – 10 d Task C – 10 d Task B – 10 d Project Time required - 20 d 59 Scarcity of Resources Task C depends on both A and B, Both A and B need exclusive use of the same resource Task A – 10 d Resource conflict Task C – 10 d Task B – 10 d Project Time required - 30 d 60 The Critical Chain • We identify the longest chain of dependent tasks by resource through the Project - this is the Critical Chain, at the end we place the Completion Buffer The time taken to complete the Project is the time taken to complete the Critical Chain Any delay in the Critical Chain delays the Project completion 61 Completion Buffer Task A Completion Buffer Task C Task B Committed end d 62 In Practice Task A Task C Task B Project duration held constant Task A Completion Buffer Task C Task B The buffer is 25-33% of chain length 63 Feeding Chains • All the other chains of tasks we call Feeding Chains , because each one at some point feeds into the Critical Chain • Every task in the Project is part of either the Critical Chain or a Feeding Chain 64 Feeding Buffers • We must not allow anything to delay the Critical Chain • We must protect the critical chain from being delayed by lateness in the Feeding Chains • We start the feeding chains a little early, and insert a block of time to decouple the Critical Chain from each Feeding Chain • We call these blocks of time Feeding Buffers 65 Feeding Buffers Task A Completion Buffer Task C Task B FB Task D 66 Planning Phase Summary • There is no contingency at task level • The Project due date is protected by the a block of time called the Completion Buffer • The Critical Chain is the longest chain of tasks through the Project • All other chains of tasks are Feeding Chains • We place Feeding Buffers to decouple the Critical Chain from the feeding chains 67 Key Terms Activity Activity-on-arrow (AOA) Activity-on-node (AON) Burst activity Concurrent engineering Critical path Early and late times Gantt chart Hammock activity Lag relationship Merge activity Network sensitivity Parallel activity Slack/float—total and free 68