executing an uncertain schedule:

27
Executing an Uncertain Schedule: Adapting to Reality to Maximize Target Completion Attainment Annaka Kalton Stottler Henke Associates, Inc. www.stottlerhenke.com

Upload: london

Post on 23-Jan-2016

35 views

Category:

Documents


0 download

DESCRIPTION

Executing an Uncertain Schedule:. Adapting to Reality to Maximize Target Completion Attainment. Annaka Kalton Stottler Henke Associates, Inc. www.stottlerhenke.com. Orientation. Background Executing a schedule – the problem Possible approaches, CCPM overview Simulation framework - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Executing an Uncertain Schedule:

Executing an Uncertain Schedule:

Adapting to Reality to Maximize Target Completion Attainment

Annaka KaltonStottler Henke Associates, Inc.

www.stottlerhenke.com

Page 2: Executing an Uncertain Schedule:

PMI College of Scheduling“PMI” is a registered trade and service mark of the Project Management Institute, Inc.

2

Orientation

• Background• Executing a schedule – the problem• Possible approaches, CCPM overview• Simulation framework• Empirical simulation results• Conclusions• Questions

Page 3: Executing an Uncertain Schedule:

PMI College of Scheduling“PMI” is a registered trade and service mark of the Project Management Institute, Inc.

3

Executing to a Schedule: Challenges

• A schedule allows for planning, but is brittle

• The more the resource contentions impact a schedule, the more brittle it becomes

• It is easier to go over than under for most jobs

• Following a schedule minimizes the likelihood of catching up

• Ambitious schedules and high-variance jobs aggravate these attributes

Page 4: Executing an Uncertain Schedule:

PMI College of Scheduling“PMI” is a registered trade and service mark of the Project Management Institute, Inc.

4

Possible Solutions

• Reschedule frequently to maximize responsiveness– Pros: Highly responsive– Cons: Difficult to plan for

• Build contingency time into the schedule– Pros: Increases likelihood of meeting schedule– Cons: Potentially wasteful

• Consolidate contingency time (e.g. CCPM)– Pros: Flexible, dynamic, ambitious– Cons: Difficult to plan for, limited in handling of

high-density schedules

Page 5: Executing an Uncertain Schedule:

PMI College of Scheduling“PMI” is a registered trade and service mark of the Project Management Institute, Inc.

5

Topic for Exploration

• Empirically consider what combinations work best for a specific domain

• Posit extrapolations from that domain • Consider possible improvements based

on performance

Page 6: Executing an Uncertain Schedule:

PMI College of Scheduling“PMI” is a registered trade and service mark of the Project Management Institute, Inc.

6

Execution Methodologies

• Schedule-Based Methodologies– Work to the schedule or a schedule

derivative– Strong planning advantage

Psychological Practical

• Analysis-Based Methodologies– Work based on properties derived from the

schedule– Robust and flexible in the face of change

Abstraction reduces brittleness Abstraction allows broader comparisons

– Focus on CCPM methodologies

Page 7: Executing an Uncertain Schedule:

PMI College of Scheduling“PMI” is a registered trade and service mark of the Project Management Institute, Inc.

7

Introduction to CCPM

• Developed by Eliyahu M. Goldratt– Introduced in 1997

• Derived from the Theory of Constraints• Differs from CPM in focus on resource

requirements• Focuses on protecting the project’s

critical chain• Gathers contingency time into pooled

buffers protecting the critical chain

Page 8: Executing an Uncertain Schedule:

PMI College of Scheduling“PMI” is a registered trade and service mark of the Project Management Institute, Inc.

8

Critical Chain: Nature and Importance

• The shortest causal path through a schedule

• Takes resource requirements, contention into account

• Slippage in the critical chain causes slippage in the delivery date

1

2

3 4

56 7

8

PERT w ith critical path

1 2

3 4

56 7

8

Partial Order PERT w ith cp/cc

Page 9: Executing an Uncertain Schedule:

PMI College of Scheduling“PMI” is a registered trade and service mark of the Project Management Institute, Inc.

9

Critical Chain: Example

1

2

3 4

56 7

8

PERT

1 2

3 4

56 7

8

Partial Order Schedule

1 2

6

3 54

8

Schedule

R

R

7R

1 2

6

3 54

8

Schedule w ith Critical Chain

7

Page 10: Executing an Uncertain Schedule:

PMI College of Scheduling“PMI” is a registered trade and service mark of the Project Management Institute, Inc.

10

Buffering the Critical Chain

1 2

6

3 54

8 7

Contingency time

1 2

6

3 54

8 7

Combined contingency time

1 2

6

3 54

8 7

Buffer placement schedule

1 2

6

3 54

8 7

CCPM schedule

Page 11: Executing an Uncertain Schedule:

PMI College of Scheduling“PMI” is a registered trade and service mark of the Project Management Institute, Inc.

11

Execution Methodologies: Schedule-Based

• 1. Work to aggressive schedule– Each job duration set such that it can be

completed in the time specified 50% of the time

– Very aggressive, very brittle

• 2. Work to safe schedule– Each job duration set such that it can be

completed in the time specified 85% of the time

– Potentially wasteful, still somewhat brittle, people involved in later jobs will not be ready

Page 12: Executing an Uncertain Schedule:

PMI College of Scheduling“PMI” is a registered trade and service mark of the Project Management Institute, Inc.

12

Schedule-Based Prioritization: Detail

1 2

1

1 32

1

W orking to a schedule (best case)

R

R

2R

4 6

1

3 87

2

W orking to a schedule (standard)

R

R

5R

4 6

1

3 87

2

Result of slippage in job 4's start

R

5R

46

1

3 87

2

Preferred result (requires reschedule)

5R

Page 13: Executing an Uncertain Schedule:

PMI College of Scheduling“PMI” is a registered trade and service mark of the Project Management Institute, Inc.

13

Execution Methodologies: Analysis-Based

• 3. Prioritize based on scheduled slack• 4. Prioritize based on standard CCPM,

default buffer placement• 5. Prioritize based on standard CCPM,

fenced buffer placement• 6. Prioritize based on projected

completion CCPM

Page 14: Executing an Uncertain Schedule:

PMI College of Scheduling“PMI” is a registered trade and service mark of the Project Management Institute, Inc.

14

Slack-based Prioritization: Detail

• Slack reflects how much a job could shift without impacting the schedule

• Slack can consider temporal constraints, or actual schedule position (i.e. resource contention)

• For this test, we used schedule-based slack, rather than abstract slack (see below)

1 1

3

0 00

2

Prioritization based on slack

R

R

2R

Page 15: Executing an Uncertain Schedule:

PMI College of Scheduling“PMI” is a registered trade and service mark of the Project Management Institute, Inc.

15

CCPM-Based Prioritization: Detail

• Gives highest priority to jobs projected to cause buffer incursion

• Project buffer incursion trumps feeder buffer incursion

• Feeder buffer incursion is compared as a proportion of the buffer available

• The whole incurring chain may have the same priority, unless post-processed

1 1

4

3 13

2 2

CCPM prioritization

Page 16: Executing an Uncertain Schedule:

PMI College of Scheduling“PMI” is a registered trade and service mark of the Project Management Institute, Inc.

16

Projected Completion CCPM: Detail

• Traditional CCPM prioritization does not reflect how much work is left vs. how much buffer is left

• In some cases this can result in work that has sufficient buffer to finish in time being prioritized ahead of work that does not (see below)

• Projected completion CCPM recalculates the buffer needed for the remaining work

1 1

4

3 33

2 2

CCPM prioritization

2 2

4

3 33

1 1

Projected completion CCPM prioritization

Page 17: Executing an Uncertain Schedule:

PMI College of Scheduling“PMI” is a registered trade and service mark of the Project Management Institute, Inc.

17

Simulation Framework

1. Generate a schedule2. Derive a prioritization based on the schedule3. Assign current set of randomly generated

durations to all active activities 4. Using that prioritization, simulate the execution

for a given time span by scheduling in priority order, taking resource requirements into account.

5. Record resulting actuals for those activities within the current update time frame (e.g. 48 hours)

6. Remove the priorities and revert the durations to standard for all activities beyond the current update timeframe

7. If all of the activities have been completed, report results; otherwise, return to step 1 and repeat.

Page 18: Executing an Uncertain Schedule:

PMI College of Scheduling“PMI” is a registered trade and service mark of the Project Management Institute, Inc.

18

Simulation Detail

1 1

3

0 00

2

Produce a schedule and prioritize

R

R

2R

1 1

3

0 00

2

Assign durations and reschedule

R

R

2R

Record actuals, revert, schedule

01

0

Beta distribution for generation

Page 19: Executing an Uncertain Schedule:

PMI College of Scheduling“PMI” is a registered trade and service mark of the Project Management Institute, Inc.

19

File Details

• File 1 (Airplane assembly preparation):– 106 jobs– 525 resource requirements– 214 constraints– 2.1% resource-driven scheduling decisions

• File 2 (Final assembly):– 1,763 jobs– 7,451 resource requirements– 4,839 constraints– 36.4% resource-driven scheduling decisions– Dense: 21% of the jobs within three hours of

the critical chain, 42% within 6 hours and 59% are within ten hours

Page 20: Executing an Uncertain Schedule:

PMI College of Scheduling“PMI” is a registered trade and service mark of the Project Management Institute, Inc.

20

Empirical Results: File 1

File 1 Results

0.8

0.82

0.84

0.86

0.88

0.9

0.92

0.94

0.96

0.98

6 12 24

Hours Between Updates

% o

f S

afe

Du

rati

on

Sch

edu

le

model 1

model 2

model 3 aggressive

model 3 safe

model 4

model 5

model 6

Page 21: Executing an Uncertain Schedule:

PMI College of Scheduling“PMI” is a registered trade and service mark of the Project Management Institute, Inc.

21

File 1 Commentary

• Statistically insignificant differences between method 3 safe (slack determined in safe mode), method 4 (CCPM), and method 6 (projected completion)

• 10% variance in quality – all approaches did reasonably well

• Update period had minimal impact• All results reflect the fact that file 1 is a

fairly lean, temporally-driven model

Page 22: Executing an Uncertain Schedule:

PMI College of Scheduling“PMI” is a registered trade and service mark of the Project Management Institute, Inc.

22

Empirical Results: File 2

File 1 Results

0.95

1

1.05

1.1

1.15

1.2

1.25

1.3

6 12 24

Hours Between Updates

% o

f S

afe

Du

rati

on

Sch

edu

le

model 1

model 2

model 3 aggressive

model 3 safe

model 4

model 5

model 6

2 Results

Page 23: Executing an Uncertain Schedule:

PMI College of Scheduling“PMI” is a registered trade and service mark of the Project Management Institute, Inc.

23

File 2 Commentary

• Method 6 (projected completion) performed the best, although method 3 safe (slack determined in safe mode) determined quite well for such a simple methodology

• Much higher variation in quality based on method and update period

• All execution strategies produced results longer than the safe schedule

Page 24: Executing an Uncertain Schedule:

PMI College of Scheduling“PMI” is a registered trade and service mark of the Project Management Institute, Inc.

24

Results summaryMethod

Description File 1 Rank

File 2 Rank

1 Work to agg. schedule

2 4

2 Work to safe schedule

4 6

3 safe Prioritize by safe schedule slack

1 2

3 agg Prioritize by aggressive schedule slack

5 5

4 Prioritize by standard CCPM

1 4

5 Prioritize by fenced CCPM

3 3

6 Prioritize by projected completion CCPM

1 1

Page 25: Executing an Uncertain Schedule:

PMI College of Scheduling“PMI” is a registered trade and service mark of the Project Management Institute, Inc.

25

For Further Exploration

• Even the best performer did not meet the schedule for file 2– Dense schedules are a general execution challenge– Deeper buffering or buffering to reflect the

schedule’s density might produce better results

• Slack-based prioritization did surprisingly well– Explicitly taking job variance into account might

improve results further– Could be a useful approach in domains reluctant to

try CCPM methodologies

• All methodologies improved with higher period– Tradeoffs between dynamism and practical

considerations

Page 26: Executing an Uncertain Schedule:

PMI College of Scheduling“PMI” is a registered trade and service mark of the Project Management Institute, Inc.

26

Final Notes

• Schedule execution is a major problem• Appropriate execution strategies are

likely to vary across domains• Simulation gives a good option for

determining the best strategy and its weak points

• Estimated project completion appears to operate better than standard CCPM in at least some complex domains

• Slack-based prioritization gives a very simple but effective method, in spite of its lack of sophistication

Page 27: Executing an Uncertain Schedule:

PMI College of Scheduling“PMI” is a registered trade and service mark of the Project Management Institute, Inc.

27

Annaka KaltonStottler Henke Associates, Inc.

951 Mariner’s Island Blvd, Suite 360San Mateo, CA 94404

(650) [email protected]

Devin ClineStottler Henke Associates, Inc.

(650) [email protected]

The Authors