75
Making Changes That Matter Theory Of Constraints - A Fundamental Systems Thinking Principle Craig Strong @craigstrong [email protected] www.strongandagile.co.uk Daryn Holmes @darynholmes [email protected] http://darynholmes.wordpress.com 1

Theory Of Constraints - Agile Tour 2013 Craig Strong & Daryn Holmes

Embed Size (px)

DESCRIPTION

These slides are from the presentation at http://www.agiletourlondon.co.uk 1/11/2013. They are based on simulated results using a basic Kanban workflow. The goal of the presentation was to explain the Theory Of Constraints by example and show how this can be applied to make effective changes and to provoke thinking about the wider system we work within

Citation preview

Page 1: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Making Changes That Matter

Theory Of Constraints - A Fundamental Systems Thinking Principle!

Craig Strong!@craigstrong [email protected]

Daryn Holmes!@darynholmes [email protected]

http://darynholmes.wordpress.com!1

Page 2: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Goal Of Presentation

1. Explain the Theory Of Constraints by example and show how this can be applied to make effective changes

2. To provoke thinking about the wider system we work within

!

!2

Page 3: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Theory Of Constraints

1. Identify The Bottleneck

2. Exploit The Bottleneck

3. Subordinate Every Decision To The Bottleneck

4. Elevate The Bottleneck

5. And Again!

!3

Page 4: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

From Manufacturing To Software

!4

Page 5: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Lead Time ?

The elapsed time between starting and finishing a defined process

!5

Page 6: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Kanban Workflow

Story

Story

Story

Ready In Progress In Progress In ProgressDone Done Shipped

Design Development Test

Story

Story

Day 0 Output : 0

!6

00

System WIP = 2

Page 7: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Kanban Workflow

Story

Ready In Progress In Progress In ProgressDone Done Shipped

Design Development Test

Story

Story

Day 1 Output : 0

!7

11

Story

Story

System WIP = 2

Page 8: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Kanban Workflow

Ready In Progress In Progress In ProgressDone Done Shipped

Design Development Test

Day 1 Output : 0

!8

11

Story

00

Story

Story

System WIP = 4

Page 9: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Kanban Workflow

Ready In Progress In Progress In ProgressDone Done Shipped

Design Development Test

Day 1 Output : 0

!9

11

Story 00Story

Story

System WIP = 4

Page 10: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Kanban Workflow

Ready In Progress In Progress In ProgressDone Done Shipped

Design Development Test

Day 1 Output : 0

!10

11

Story 00Story

Story

Story

Story

System WIP = 4

Page 11: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Kanban Workflow

Ready In Progress In Progress In ProgressDone Done Shipped

Design Development Test

Day 2 Output : 0

!11

22

11

Story

Story

Story

00

System WIP = 6

Page 12: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Kanban Workflow

Ready In Progress In Progress In ProgressDone Done Shipped

Design Development Test

Day 2 Output : 0

!12

22

11

Story

Story

Story

00

System WIP = 6

Page 13: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Kanban Workflow

Ready In Progress In Progress In ProgressDone Done Shipped

Design Development Test

Day 2 Output : 0

!13

22

11

Story

Story

Story

00

Story

Story

System WIP = 6

Page 14: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Kanban Workflow

Ready In Progress In Progress In ProgressDone Done Shipped

Design Development Test

Day 3 Output : 0

!14

33

22

Story

11

Story

Story

00

System WIP = 8

Page 15: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Kanban Workflow

Ready In Progress In Progress In ProgressDone Done Shipped

Design Development Test

Day 3 Output : 0

!15

33

22

Story 11Story

Story

00

System WIP = 8

Page 16: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Kanban Workflow

Ready In Progress In Progress In ProgressDone Done Shipped

Design Development Test

Day 3 Output : 0

!16

33

22

Story 11Story

Story

00

Story

Story

System WIP = 8

Page 17: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Kanban Workflow

Ready In Progress In Progress In ProgressDone Done Shipped

Design Development Test

Day 4 Output : 0

!17

44

33

22

Story

11

Story

Story

00

System WIP = 10

Page 18: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Kanban Workflow

Ready In Progress In Progress In ProgressDone Done Shipped

Design Development Test

Day 4 Output : 0

!18

44

33

22

Story 11Story

Story

00

System WIP = 10

Page 19: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Kanban Workflow

Ready In Progress In Progress In ProgressDone Done Shipped

Design Development Test

Day 4 Output : 0

!19

44

33

22

Story 11Story

Story

00

Story

Story

System WIP = 10

Page 20: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Kanban Workflow

Ready In Progress In Progress In ProgressDone Done Shipped

Design Development Test

Day 5 Output : 2

!20

55

44

33

22

Story

11

Story

Story

00

System WIP = 10

Page 21: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Kanban Workflow

Ready In Progress In Progress In ProgressDone Done Shipped

Design Development Test

Day 5 Output : 2

!21

55

44

33

22

Story

11

Story

Story

00

System WIP = 10

Page 22: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Flow Explained

Day 5 Output : 2

Lead Time = 5 Days

Lead Time =WIP / Throughput

!22

5 Days = 10 / 2

Page 23: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

SimulatorTheory Of Constraints

!23

Matchstick Game Simulator

Page 24: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Goal

To deliver software more frequently at a sustainable pace without drastically increasing costs

!24

Page 25: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Common Limitations

• Limited financial resources

• Hiring more people often makes the problem worse

!25

Page 26: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Simulated Workflow

Story

Story

Story

Story

Story

Story

Story Story

Story

Story

Story

Story

Story Story Story

Story Story

Story

Ready In Progress In Progress In ProgressDone Done Shipped

Design Development Test

WIP LIMIT

!26

Page 27: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Initial System State

Backlog Design Development Testing

Min Output 1 1 1

Max Output 10 10 4

WIP 10 40 40 20

!27

Page 28: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

500 Cycles Later

!28

Page 29: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Results After 500 Cycles

Deployed UnitsAvg !

Throughput !(Per Cycle)

Avg !WIP

Avg!Lead Time

1237 2.47 105.67 41 Cycles

!29

Page 30: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Theory Of Constraints

1.Identify The Bottleneck

2.Exploit The Bottleneck

3.Subordinate Every Decision To The Bottleneck

4.Elevate The Bottleneck

5.And Again!

!30

Page 31: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Present CFD

!31

Page 32: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Underneath The Hood Lead Time

0

4

8

12

16

Design Backlog Design Doing Design Done Dev Doing Dev Done Test Doing

7.98

15.50

0.27

15.38

0.75

2.98

Lead Time

Design (LT = 3.73) Dev (LT = 15.65) Test (LT = 23.48)

!32

Page 33: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Bottlenecks

“Being the bottleneck is not bad, although some people hate being the focus of attention. Conversely being the bottleneck is not good, although some people like the attention”

http://www.agilecoach.net

!33

Page 34: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Theory Of Constraints

1.Identify The Bottleneck

2.Exploit The Bottleneck

3.Subordinate Every Decision To The Bottleneck

4.Elevate The Bottleneck

5.And Again!

!34

Page 35: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

How Can We Exploit The Bottleneck ?

• Shield the team from interruptions

• Reduce Task Switching & Introduce WIP (Max day capacity)

• Only work on throughput producing work (reduce personal admin e.g. reports, timesheets, meetings etc)

• Not done through overtime as bottleneck will burnout and slow down over time

!35

Page 36: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Lead Time And Feedback

Handoffs and approvals slow down the Build-Measure-Learn feedback loop and inhibit both learning and accountability

!36

The Lean Startup: How Constant Innovation Creates Radically Successful Businesses by Eric Ries

Page 37: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Backlog Design Development Testing

Min 1 1 1

Max 10 10 4

WIP 10 40 40 20

Exploit The Bottleneck

!37

Page 38: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Backlog Design Development Testing

Min 1 1 1

Max 10 10 6 (+2)

WIP 10 40 40 6 (max)

!38

Exploit The Bottleneck

Page 39: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

500 Cycles Later

!39

Page 40: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Results 500 Cycles

Deployed!Units Throughput Avg WIP Lead Time Improved

Lead Time

Original 1237 2.47 105.67 41 Cycles

Exploited Bottleneck 1727 3.45 90.86 26 Cycles 36%

!40

Page 41: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Theory Of Constraints

1.Identify The Bottleneck

2.Exploit The Bottleneck

3.Subordinate Every Decision To The Bottleneck

4.Elevate The Bottleneck

5.And Again!

!41

Page 42: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Subordinate Every Decision To The Bottleneck

• Reduce the backlog by introducing WIP upstream. Work to the rhythm of the bottleneck.

• The bottleneck should always be busy. Wasted effort on the bottleneck is a wasted effort for the entire system

!42

Page 43: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Backlog Design Development Testing

Min 1 1 1

Max 10 10 6

WIP 10 (40) Now 12 (40) Now 12 6

Subordinate Bottleneck

!43

Page 44: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

500 Cycles Later

!44

Page 45: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Results 500 Cycles

Deployed!Units Throughput Avg WIP Lead Time Improved

Lead Time

Original 1237 2.47 105.67 41 Cycles

Exploited Bottleneck 1727 3.45 90.86 26 Cycles 36%

Subordinate Everything 1750 3.49 36.25 10 Cycles 75.6%

!45

Page 46: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Subordinate Every Decision To The Bottleneck

• Other teams can help test when available and necessary (Cross Functional Team)

• If you switch away from your skill your input is reduced (Simulated up to 40% of effort)

!46

Page 47: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Subordinate Every Decision To The Bottleneck

Lean from the Trenches: Managing Large-Scale Projects with Kanban by Henrik Kniberg

!47

If the testers have too much work to do, we don’t want developers to keep building new features and adding to their workload— instead, they should focus on helping test. WIP limits act as an alert signal to highlight the problem before it gets out of hand.

Page 48: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Solving Problems Together

!48

Page 49: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Working Outside Strongest Skill Set

Job rotation shows people how their work impacts on others. Goedtel said, “When you get people rotating, they learn what defects they would send downstream; so when people rotate to upstream jobs, they don’t send as many problems down. When everyone knows what’s important downstream, they take care of it upstream.”

!Empowered work teams at Chrysler http://www.allpar.com/corporate/empowered-work-teams.html#ixzz2MwiV7cb4

!49

Page 50: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Backlog Design Development Testing

Min 1 1 1

Max 10 10 6

WIP 10 12 12 6

Subordinate Bottleneck

!50

Page 51: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

500 Cycles Later

!51

Page 52: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Cross Functional Distribution

Over 500 Cycles

0

50

100

150

200

Design Development Testing

0

191

38

10

121

1

13

0

Design Development Testing

!52

Page 53: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Results 500 CyclesDeployed

Units Avg TP Avg WIP Avg CT Change CT

Original 1237 2.47 105.67 41 Days

Exploited Bottleneck 1727 3.45 90.86 26 Days 36%

Subordinate

Everything1750 3.49 36.25 10 Days 75.6%

CFT 2184 4.36 35.27 8 Days 80.5%

Deployed!Units Throughput Avg WIP Lead Time Improved

Lead Time

!53

Page 54: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Theory Of Constraints

1.Identify The Bottleneck

2.Exploit The Bottleneck

3.Subordinate Every Decision To The Bottleneck

4.Elevate The Bottleneck

5.And Again!

!54

Page 55: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Better working Environments

Elevate the bottleneck!55

Page 56: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Better Tools

Elevate The Bottleneck

!56

Page 57: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Pairing - Team Work

!57

Elevate The Bottleneck

Page 58: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Backlog Design Development Testing

Min 1 1 1

Max 10 10 6

WIP 10 12 12 6

Elevate Bottleneck

!58

Page 59: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Backlog Design Development Testing

Min (+3) 4 (+3) 4 (+1) 2

Max (-4) 6 (-4) 6 (-2) 4

WIP 8 8 8 4

Elevate Bottleneck

!59

Page 60: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

500 Days Later

!60

Page 61: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Results 500 Cycles

Deployed!Units Throughput Avg WIP Lead Time Improved

Lead Time

Original 1237 2.47 105.67 41 Days

Exploited Bottleneck 1727 3.45 90.86 26 Days 36%

Subordinate Everything 1750 3.49 36.25 10 Days 75.6%

CFT 2184 4.36 35.27 8 Days 80.5%

Elevate Bottleneck 1926 3.84 23.78 6 Days 85.4%

!61

Page 62: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Lead Time And Feedback

Remember, if we’re building something that nobody wants, it doesn’t much matter if we’re doing it on time and on budget.

!62

The Lean Startup: How Constant Innovation Creates Radically Successful Businesses by Eric Ries

Page 63: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Lead Time And Feedback

The goal of a startup is to figure out the right thing to build—the thing customers want and will pay for—as quickly as possible.

!63

The Lean Startup: How Constant Innovation Creates Radically Successful Businesses by Eric Ries

Page 64: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Theory Of Constraints

1.Identify The Bottleneck

2.Exploit The Bottleneck

3.Subordinate Every Decision To The Bottleneck

4.Elevate The Bottleneck

5.And Again!

!64

Page 65: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Original CFD

!65

Page 66: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Present CFD

Original Capacity

Time & Cost

!66

Page 67: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Deviation Comparison

Original

!67

Elevate

Page 68: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Lead Time Built Into Scrum

Story

Story

Story

Story

Story

Story

Story

Story

Story

Story

Story

Story

Sprint 1 Sprint 2 Sprint 35

2

8

5

5

8

8

2

8

2

2

5

5 Stories/25 pts 3 Stories/12 pts 4 Stories/17 pts

5 Days 5 Days5 Days

Lead Time = WIP/Throughput

4 Stories/18 pts

Avg Velocity

5 Days = 4 Stories/0.8 Or

5 Days = 18 pts /3.6

Littles Law

!68

Page 69: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

ToC Example Applied

!69

http://www.strongandagile.co.uk/index.php/the-hourglass-scrumban-board/

Page 70: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

WorkflowThe bottleneck should always be busy. Wasted effort on the bottleneck is a wasted effort for the entire system

Design Dev Test

!70

Page 71: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

WorkflowThe bottleneck should always be busy. Wasted effort on the bottleneck is a wasted effort for the entire system

Design Dev Test

!71

Requirements

?

Page 72: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

WorkflowThe bottleneck should always be busy. Wasted effort on the bottleneck is a wasted effort for the entire system

Design Dev Test

!72

Requirements Release

? ?

Page 73: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Inventory

!73

Page 74: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Links & Books

• I’m not a bottleneck I’m a free man(http://www.agilecoach.net/coach-tools/bottleneck-game/)

• http://www.allpar.com/corporate/empowered-work-teams.html#ixzz2MwYdgDYk

!74

Page 75: Theory Of Constraints - Agile Tour 2013 Craig Strong &  Daryn Holmes

Thank You !

Questions ?

!75

Craig Strong!@craigstrong [email protected]

Daryn Holmes!@darynholmes [email protected]

http://darynholmes.wordpress.com!75