Chapter 8: Scheduling Methods Critical path method (CPM) Buffers Leveling & Smoothing Chapter 6: Quantitative Project Scheduling Methods This chapter focuses on the critical path method, the fundamental project scheduling technique assuming certainty and unlimited resources. Project crashing is discussed as a means of analyzing alternative cost/time tradeoffs. Resource leveling and resource smoothing are discussed as ways to consider limited resources. Buffers are discussed as a way to cope with risk. Criticisms of the critical path method are reviewed.
Quotes If you’re 6 months late on a milestone due next week but really believe you can make it, you’re a project manager. Good project management is not so much knowing what to do and when, as knowing what excuses to give and when. Good control reveals problems early – which only means you’ll have longer to worry about them. No project has ever finished on time, within budget, to requirement – yours won’t be the first to. If everything is going exactly to plan, something somewhere is going massively wrong.
Gantt chart: is a type of bar chart, developed by Henry Gantt in the 1910s, that illustrates a project schedule -it is a graphical representation of a project that shows each task activity as a horizontal bar whose length is proportional to its time for completion. PERT chart: a diagram that depicts project activities and their inter-relationship. Pert stand for Program Evaluation Review Technique.
Gantt Chart
why networks scheduling method? A network diagram is essentially a flow chart that includes all of the project elements and how they relate to one another. Gantt charts don’t explicitly show task relationships don’t show impact of delays or shifting resources well network models clearly show interdependencies
Logic Diagrams network of relationships elements & relationships (sequence) this is ACTIVITY-ON-NODE can have ACTIVITY-ON-ARC research what’s been done research what needs doing pick final topic write print internet research
network models PERT Charts
Network Diagrams activity duration milestone immediate predecessors identified by arrows leading into durations can include in parentheses dummy activities activity (duration) milestone
Parameters to be determined for each activity to Identify CPM Early starts (ES) the earliest time an activity can start without violating any of the initial requirements for beginning the activity. Earliest Finish (EF): the earliest time an activity is expected to end. late finishes (LF): the latest an activity could end without having the entire project lag Latest Start Time (LS): the latest time the activity could begin without having the entire project lag. Slack, is the amount of time that a task in a project can be delayed without causing a delay to project completion critical path, Longest sequence of activities in a project plan which must be completed on time for the project to complete on due date, activities with no slack.
Project Scheduling MODEL COMPONENTS all assume unlimited resources activities from WBS predecessors what this activity waits on durations how long durations are PROBABILISTIC CPM DETERMINISTIC PERT considers uncertainty, but UNREALISTIC simulation all assume unlimited resources
Critical Path Method The CPM is ideally suited to projects consisting of numerous activities that interact in a complex manner. INPUTS: activities, durations, immediate predecessors forward pass schedule all activities with no unscheduled predecessors ES/EF determine early starts & early finishes (start ASAP, add duration) backwards pass schedule in reverse (schedule all activities with no unscheduled FOLLOWERS) LF/LS determine late finishes, subtract duration to get late starts slack difference between LS-ES (same as LF-EF) critical path all chains of activities with no slack
CPM Example FORWARD PASS activity duration predecessor A requirements analysis 3 weeks - B programming 7 weeks A C get hardware 1 week A D train users 3 weeks B, C Early Start Schedule schedule A start 0 finish 0+3 =3 schedule B 3 3+7 =10 & C 3 3+1 =4 schedule D 10 10+3 =13
CPM Example backward pass schedule D finish 13 late start= 13-3 = 10 schedule B 10 10-7 = 3 & C 10 10-1 = 9 schedule A 3 3-3 = 0 Late Start Schedule slack A LF= 3 EF= 3 3-3 = 0 B LF= 10 EF= 10 10-10 = 0 C LF= 10 EF= 4 10-4 = 6 D LF= 13 EF= 13 13-13 = 0 critical path: A-B-D
CPM can have more than one critical path critical paths A-B-D activity duration predecessor A requirements analysis 3 weeks - B programming 7 weeks A C get hardware 7 weeks A D train users 3 weeks B, C critical paths A-B-D A-C-D both with duration of 13 weeks
Buffers A buffer is time that included in the schedule to protect against unanticipated delays and to allow early starts. Buffers different than slack: Slack is spare time Buffers are time blocks that are not expected to be used for work time, they are dedicated to covering most likely contingencies.
Types of Buffers Project Buffers: it protects the promised due date from variation in the critical chain, placed after final project task. Task Buffers: Task buffer time is specific to individual tasks along the way. Sometimes this form of buffer is officially reported to the project manager, but more often, it is embedded in the task time. For instance, an engineer may think that designing a new fixture will take four days, but reports five to give a little bit of buffer time to himself. - Feeding Buffers: where non-critical activities lead into critical activities. feeding buffers are inserted between the last task on a feeding path and the Critical Chain - Resource Buffers: placed before resources scheduled to work on critical activities. Can be set alongside of the Critical Chain to ensure that the appropriate people and skills are available to work on the Critical Chain tasks as soon as needed.
Project Buffer
Project Crashing Project crashing is a method for shortening the project duration by reducing the time of one or more of the critical project activities to less than its normal activity time. The object crashing is to reduce project duration while minimizing the cost of crashing. can shorten project completion time by adding extra resources, quicker completion with higher cost. start off with NORMAL TIME CPM schedule get expected duration, normal time Tn, normal cost Cn Tn should be longest duration Cn should be most expensive in penalties, cheapest in crash costs
Crashing- example Tn Cn Tc Cc A- 5 300 3 600 150 B- a 6 700 775 75 C-a Activity- dependency Tn Cn Tc Cc cost per day Cc-Cn / Tn-Tc A- 5 300 3 600 150 B- a 6 700 775 75 C-a 7 500 4 650 50 D-c 400 100 E-b 1000
Crashing- example 17 None ----- ------ 16 50 15 100 14 125 225 13 275 Duration Activities Marginal crash cost Total crash cost New critical path 17 None ----- ------ ACD 16 C-1 50 15 C-2 100 ACD/ABE 14 C-3, B-1 125 225 13 C-3, B-1,A-1 275 375 12 A-2, C-3, B-1 525 11 A-2, B-1, C-3, D-1, E-1 675 925
Crash Example Activity: programming Tn: 7 weeks Cn: $14,000 (7 weeks, 2 programmers) if you add a third programmer, done in 6 weeks Tc: 6 weeks Cn: $15,000 cost slope = (15000-14000)/(6-7)=-$1000/week
Example Problem Crashing Algorithm: activity Pred Tn Cn Tc Cc slope max A requirements none 3 can’t crash B programming A 7 14000 6 15000 -1000 1 week C get hardware A 1 50000 .5 51000 -2000 .5 week D train users B,C 3 can’t crash Crashing Algorithm: 1 crash only critical activities B only choice 2 crash cheapest currently critical B is cheapest 3 after crashing one time period, recheck critical
Crash Example Import critical software from Australia: late penalty $500/d > 12 d A get import license 5 days no predecessor B ship 7 days A is predecessor C train users 11 days no predecessor D train on system 2 days B,C predecessors can crash C: $2000/day more than current for up to 3 days B: faster boat 6 days $300 more than current bush plane 5 days $400 more than current commercial 3 days $500 more than current
Crash Example Original schedule: 14 days, $1,000 in penalties = $1000 crash B to 6 days:13 days, $500 penalties, $300 cost = $800* crash B to 5 C to 10: 12 days, no penalties, $400+2000 cost = $2400 to 11 days is worse NOW A SELECTION DECISION risk versus cost
Crashing Limitations Assumes linear relationship between time and cost not usually true (indirect costs don’t change at same rate as direct costs) Requires a lot of extra cost estimation Time consuming Ends with tradeoff decision
Resource Leveling . Resource leveling takes overloaded resources and attempts to bring everyone back to 100% allocation. The problem here is that the end date of the project may be severely impacted and it may be worthwhile compensating the overtime. . Resource leveling is a technique for resolving resource conflicts by delaying tasks. RESOURCE LEVELING – is the process of spreading out the balance of the early start schedule so that the maximum number of a particular resource required can be reduced. Tasks that only use the resources that are available can be stretched out until the necessary resources become obtainable. If the number of tasks scheduled exceeds the needed resources, then those tasks will have to be put off until a later date One or the other of the activities sharing the common resource would have to be delayed.
Resource Leveling unleveled leveled
Resource Leveling Resource leveling deals with both time (starting and ending date) and resources, including manpower and budge. Resource leveling tries to balance the conflicting interests of projects with the available resources. Resource leveling generally breaks things down into two categories: time and available resources. Some projects need to be finished within a certain timeframe. These projects will use all the available resources (money and manpower) to complete the project by a certain date This leveling often works for specific activities, but complicated even more when resources shared
Resource Leveling Methods Split up work. Eliminate some activities (subcontract) Assign a different resource (hire spot work programmers) Delay certain tasks. Change task dependencies
Resource Smoothing Resource smoothing means the uniform distribution of resource allocation over the project. It typically does not affect project schedule, because the total allocation of a certain resource remains the same. Let's say that you have a resource working 30 hours this week, 10 hours next week, and 20 hours the week after next week. When you apply resource smoothing, the resource will work 20 hours this week, 20 hours next week, and 20 hours the week after. The total amount of hours remains 60 hours, but is more uniformly distributed over the weeks. The process of rescheduling activities such that the requirement for resources on the project do not exceed resource limits. In smoothing, as opposed to resource leveling, the project completion date may not be delayed. Activities may only be delayed within their float. Focus on adjusting schedule to obtain a level amount of work for a given resource, this is include extension or compression of activities to make work volume more even. (no PEAK overscheduled and no VALLEY no activities to do) . A smooth schedule is one in which a resource is working the same level of activity each time period. Adjust schedules to level workload expand duration for peak load compress durations where load low Fill in gaps of work Requires balancing resources for activities with heavier load, use multiple crews
Resource Loading Resource loading is the process of assigning tasks. You typically add tasks until the resource is 100% allocated for each day. Resource loading helps project mangers develop a general understanding of the demands a project will make on the organization’s resources. With resource loading, a project manager can predict an employee's hours for the year and see how tasks can be assigned. This also allows the project manager to decide whether or not additional employees or contractors are needed to complete the scheduled projects. Smoothing sacrificing minimum time for a more even load. MUST schedule activities to not over schedule critical resource If there is only one training room, and it includes the only delivery system can’t speed up training can’t conduct two training activities at once LINEAR PROGRAMMING
Smoothing vs Leveling The terms "smoothing" and "leveling" used interchangeably. If there's a difference, most people probably don't know it. Yes, smoothing can affect the schedule and finish. Imagine if you and I were the only two staff on a project, and to get it done on time you had to work 60 hours a week and I had to work 50 hours a week. If we backed down to a standard 40 hour week and didn't add any other resources, it would push out the completion date.
Criticisms of CPM Rarely to activities proceed as planned, and in practice the original plan usually modified significantly, so: critical path therefore very volatile options to speed some activities available crashing The CPM assumes unlimited resources, which it is not true resource leveling as a means of analyzing the effects of a limited resources. schedule likely to be very lumpy resource smoothing
Summary Critical path provides managers valuable information What activities interfere with project completion Estimate of project duration Buffers a means to manage risk Crashing a means to analyze cost/time tradeoff Resource management Leveling smoothing