Post on 24-Mar-2020
transcript
CSSE 372 Software Project Management:
Critical Chain Method
Shawn Bohner Office: Moench Room F212 Phone: (812) 877-8685 Email: bohner@rose-hulman.edu
Learning Outcomes: Schedule
Create and maintain a software project schedule. n Introduce Critical Chain n Examine Critical Chain
Project Management n Do Examples of Critical
Chain problems n Short discussion from
Justin Hutchings of Microsoft
Do you think that Critical Path Method is an optimistic or pessimistic determiner of schedule? Why?
n Think for 15.678 seconds… n Turn to a neighbor and
discuss it for a minute
Q1
Address Avoidance Parkinson Law (Avoidance) n Build schedule with tight
duration estimates that discourage diversion of attention/focus
n Get rid of task due dates!?!
n Get management to protect resources from disruptions
Address Protection Murphy Law (Protection) n Avoid distractions
and interruptions n Single focus when
possible n Account for working
on more than one project at a time
What is Critical Chain?
Critical chain is the longest duration path through the project, if you consider both task dependencies (precedence) and resource constraints n Based on Theory of
Constraints Eli Goldratt
Q2
An Insurance Analogy Consider fire insurance for five homes… n Critical Path Method way
¨ Assume each home will suffer a serious problem
¨ So, each home self-insures ¨ May not be enough $ to
cover a serious problem n Critical Chain Way
¨ Assume that not every home will get hit with a serious problem
¨ Pool the contingency resources ¨ Enough to cover a serious problem, possibly more
Q3
What’s Wrong with CPM?
n Buffer built into each individual estimate can be overkill and inefficient
n Tracking individual task due dates to indicate project health encourages: ¨ Estimates commitments (Protection) ¨ Work expands to fill time available (Avoidance)
n Encourages individual ownership of
individual commitments …rather than team ownership of the team commitment
Dilbert on Critical Path Method
What’s different about Critical Chain?
n Reorganizes risk into manageable safety buffers
n Focus on buffer utilization for project health
n Focus on start dates n Exploit early finishes n Focus on aggressive,
targeted completion of tasks
Q4
Step 1: Create the Early Schedule
Critical Path
Q5
5 mos. 2 mos.
10 mos.
Estimation Variation 50% confidence
90% confidence 10%
confidence
Safety
Confidence
Time Allocated
Step 2: Convert to Late Schedule with 50% Durations & Resources Added
Critical Path Now 8 days
Late Start Eliminates Slack
Note: 50% Duration Estimates
Ernie has Resource Conflict
1st Way to Resolve Resource Conflict
Late Start Eliminates Slack
Critical Path Now 9 days
Q6
2nd Way to Resolve Resource Conflict Late Start Eliminates Slack
Critical Path Now 8 days
Q7
Critical Chain Buffer Management Buffers are segments of time that are placed at the end of a sequence of tasks for the purpose of protecting the schedule of those tasks ¨ Feeding Buffer: Provides contingency to keep tasks
not on the critical path off the critical path ¨ Project Buffer: Provides contingency for the entire
project ¨ Resource Buffer: Provides a wakeup call to alert
resources to be ready to work on critical tasks ¨ Others include:
Capacity, Cost, and Drum Buffers
Q8
Project Schedule with Buffers Added
Optimistic 8 days (no risk realized), But, even Pessimistic is less than original 16 days
4.7 Days
( ) ( )∑= 2.... taskpath devstddevstd Variance Variance
2.8 Days
3.6 Days
Buffer Penetration and Action Decisions
Creating a Critical Chain Schedule 1. Build WBS 2. Identify dependencies 3. Gather estimates with 50% confidence 4. Build your project schedule using
Late Finish (rather than “early start”) 5. Resolve resource contentions (leveling) 6. Identify the critical chain 7. Exploit the critical chain to identify any
resequencing that can shorten the duration 8. Add the Project Buffer to the end of the critical chain 9. Add Feeding Buffers to all non-critical chains that
feed the critical chain 10. Resolve next most relevant resource contention
Critical Chain Exercise (if time) n WBS done, start with network below n Based on 50% estimate, determine late-finish schedule n Allocate resources and deal with resource contention n Add project and feeding buffers
Comparing CPM/PERT and CCPM CPM/PERT Critical Chain
Uses worst-case estimates Uses average-case estimates
Protects individual tasks with safety Protects project with buffers
Starts and finishes tasks at scheduled start and
finish times
Starts tasks as soon as predecessors are done,
finishes tasks as quickly as possible.
Individual ownership of task completion
Team ownership of project completion
Project health is based on individual task
completion
Project health is based on days used from the
project buffer
Homework and Reading Reminders n Complete Homework 5 – Software Schedule
¨ Due by 11:55pm, Tuesday, October 9th, 2012