board of directors henrik kniberg agile/lean coach the thinking tool called agile keynote,...

Post on 19-Jan-2016

230 Views

Category:

Documents

4 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Board of directors

Henrik KnibergAgile/Lean coach

www.crisp.se

The Thinking Toolcalled Agile

Keynote, Lean-Agile-Scrum conferenceZurich, Sep 7, 2010

henrik.kniberg@crisp.se

+46 70 4925284

Copyright notice

These slides are licensed under Creative Commons. Feel free to use these slides & pictures as you wish, as long as you leave my name and the Crisp logo somewhere.

For licensing details see: http://creativecommons.org/licenses/by/3.0/

All slides available at:http://www.crisp.se/henrik.kniberg/

2

Purpose of this presentation

To illustrate how Lean and Agile can fit together

Henrik Kniberg 2

3Henrik Kniberg 3

Lean

XPScrum

Agile

TDD

KanbanContinuous Integration

What is all this stuff?

Pair

programmin

g

Refactoring

Planning poker

4

Tools

Henrik Kniberg 4

5Henrik Kniberg 5

Pair programming

Product Owner role

Physical tools

Process toolsa.k.a. ”organizational patterns”

Thinking toolsa.k.a. ”mindsets” or ”philosophies”

Lean Agile Toolkitsa.k.a. ”frameworks”

Scrum XP

Visualize the workflow

To do Dev Release

H C

2Test

35Done!

3

D

G

K

A

B

FLOW

Kanban

Systems Thinking

Theory of ConstraintsRUP

Tool”anything used as a means of accomplishing a task or purpose.”- dictionary.com

6

Lean & Agile process toolkits

Henrik Kniberg 6

Kanban

Scrum

XP

Values & PrinciplesLean, Agile, Theory of Constraints, Systems Thinking, etc

Other lean tools(Value Stream Mapping, Root Cause Analysis, etc)

7Henrik Kniberg 7

KeypointCompare for

understanding, not judgement

Tools can be combined

8

What is ”un-agile”?

Henrik Kniberg 8

9

What is ”Agile”?

Henrik Kniberg 9

www.agilemanifesto.org

10

Waterfallitis

Henrik Kniberg 10

Waterfallitis (n)(a.k.a. Waterfall obsession syndrome)

The mistaken assumption that everything that isn’t Scrum is Waterfall.And that Waterfall always fails.

11

Toyota

Henrik Kniberg 11

12

Waterfall @ Toyota

Henrik Kniberg 12Source:We visited Toyota in Japan during our ”Lean Study Tour”, April 2009.

Requirements

Module design

Coding

Integration test

System test

Acceptance test

System design

Architecture

Unit test

… but they are moving towards Lean & Agile SW dev

13

What is ”waterfall” anyway?

Henrik Kniberg 13

“I believe in this concept, but the implementation described above is risky and invites failure”

The remainder of this discussion presents five additional features that must be added to the basic approach to eliminate most of the development risks

”Managing the development of large software projects”Dr Winston Royce, 1970

Step 5: Involve the customer – the involvement should be formal, in depth, and continuing

14Henrik Kniberg 14

KeypointThe borders

between Lean, Agile, and

Waterfall are fuzzy

15

The illusion of ”good” and ”bad” toolsHenrik Kniberg 15

16Henrik Kniberg

16

The illusion of a ”bad tool”

The old toolwas better!

Don’t blamethe tool!

17

The illusion of a ”good tool”

Henrik Kniberg 17

We succeeded thanks to Process X! Placebo effect

The tendency of any medication or treatment,even an inert or ineffective one, to exhibit results simply because the recipient believes that it will work.

Hawthorne effectA form of reactivity wherebysubjects improve an aspect of their behavior being experimentally measured,simply in response to the fact that they are being studied,not in response to any particular experimental manipulation.

Sources: http://en.wiktionary.org/wiki/placebo_effecthttp://en.wikipedia.org/wiki/Hawthorne_effect

“It was suggested that the productivity gain was due to the motivational effect of the interest being shown in them”

Really?

18

Are there no universallyGood or Bad tools?Probably not.But some are pretty close.

Almost always a good idea:Visualize the workflowLimit work in progressFocus on qualityPrioritizeShort feedback loops

Henrik Kniberg 18

Kanban

Jim JohnsonChairman of Standish Group

There is no silver bullet,but agile methods come very close

19Henrik Kniberg

19

Distinguish between…

Using the tool wrong Using the wrong tool

Neither of these problems are caused by the tool

20Henrik Kniberg 20

KeypointDon’t blame the

tool• Tools don’t succeed or fail, people

do.• People choose where, when, how,

and why to use which tool.

21

Know your goal

Henrik Kniberg 21

22

The Goal is the goal!A Tool is just a tool

Henrik Kniberg 22

How do we get Agile?

What is your goal?

We want to get Agile.

Why?

23

Sample goal - Toyota

Henrik Kniberg 23

Are you staying in business so you can earn money?

Or are you earning money so you can stay in business? (Toyota)

Source:ishii-san’s slides during our ”Lean Study Tour” to Toyota, April 2009.

24Henrik Kniberg

24

What is the goal?

25

Identify the goal& alternative ways to reach it

Henrik Kniberg 25

Chop down the tree

Get firewood

Heat

Buy firewood

Put on a sweater

Cozy

Virtual Fireplace DVD

Electric heater

Light fire

Gather deadwood

26Henrik Kniberg 26

Focus on Why first,then How

Keypoint

27

Solve the right problem

Henrik Kniberg 27

28Henrik Kniberg 28

Bail water

Water in boat

Hole in boat

Fix hole

Solve root causes, not symptoms

29Henrik Kniberg 29

Solve problems,not symptoms

Keypoint

30

Example:Evolving Scrum

Henrik Kniberg 30

31

Scrum Sprint

Henrik Kniberg 31

week 1 week 2 week 3 week 4 week 5 week 6 week 7 week 8

Sprint 1

Plan & commit Review(release?)

Sprint 2

Retrospective

a timeboxed, fixed-commitment iteration

32

Shu-Ha-Ri stages of learning

Shu = follow the rulesHa = change the rulesRi = never mind the rules

Henrik Kniberg 32

ScrumButophobia (n)See also: Scrumdamentalism

Fear of doing Scrum wrong

Symptom: Stuck in Shu

ScrumBag (n)A coach or consultant with a Scrumdamentalist streak

Symptom: Spread of ScrumButophobia

Scrumdamentalism (n)The mistaken belief that Pure Scrum always is the right solution.

33

Example: Middle of sprint 1

Henrik Kniberg 33

To Do Doing

Done

A

B

C

D

PO

I’d like to have E!

Wait until next sprint!

E

34

Example: Sprint 1 retrospective

Henrik Kniberg 34

PO

New policies:• Max 1 item in progress• Allow To Do items to be swapped out

35

Example:Middle of sprint 2

Henrik Kniberg 35

To Do Doing

Done

E

F

G

H

1PO

I’d like to have J!

or wait until next sprint!

JOK, swap out G or H

Policy• Max 1 item in progress• Allow To Do items to be swapped out

Is this still Scrum?

36

Example: Sprint 2 retrospective

Henrik Kniberg 36

PO

New policies:• Max 1 item in progress• Allow To Do items to be swapped out• Max 2 items in To Do• To Do items can be added at any

time(as long as limit isn’t exceeded)

37

Example:A few weeks later

Henrik Kniberg 37

To Do Doing

Done

K

L

M

N

1PO

I’d like to have P!

or wait until there is space

in To Do

POK, swap out M or N

2

Process changes:• Max 1 item in progress• Allow To Do items to be swapped out• Max 2 items in To Do• To Do items can be added at any

time (as long as limit isn’t exceeded)

Is this still Scrum?

38

Alternatives to Sprints

Sprints

Henrik Kniberg

week 1 week 2 week 3 week 4 week 5 week 6 week 7 week 8

Sprint 1

Plan & commit Review(release?)

Separate cadences

week 1 week 2 week 3 week 4 week 5 week 6 week 7 week 8

Planning cadence (2w)

Sprint 2

Retrospective

Release cadence (1w)

Retrospectives (4w)

Event-driven week 1 week 2 week 3 week 4 week 5 week 6 week 7 week 8

Planning (on demand)

Release (on demand)

Retrospectives (4w)

39Henrik Kniberg 39

Focus on process improvement rather than

process compliance

Keypoint

40

Example:Kanban

Henrik Kniberg 40

41

”One day in Kanban land”

Henrik Kniberg 41

http://blog.crisp.se/henrikkniberg/tags/kanban/

42

NextDev

Done

Backlog 32

In production :o)Ongoing

Scenario 1 – one piece flow

Henrik Kniberg 42

B

C

A

D

E

F

G

H I

J LKM

43

NextDev

Done

Backlog 32

In production :o)Ongoing

Scenario 1 – one piece flow

Henrik Kniberg 43

BC

A

D

E

F

G

H I

J LKM

44

NextDev

Done

Backlog 32

In production :o)Ongoing

Scenario 1 – one piece flow

Henrik Kniberg 44

BC

A

D

E

F

G

H I

J LKM

45

NextDev

Done

Backlog 32

In production :o)Ongoing

Scenario 1 – one piece flow

Henrik Kniberg 45

B

C A

D

E

F

G

H I

J LKM

46

NextDev

Done

Backlog 32

In production :o)Ongoing

Scenario 1 – one piece flow.

Henrik Kniberg 46

B

C A

D

E

F

G

H I

J LKM

47

NextDev

Done

Backlog 32

In production :o)Ongoing

Scenario 2 – Deployment problem

Henrik Kniberg 47

B

C

A

D

E

F

G

H I

J LKM

PO

48

NextDev

Done

Backlog 32

In production :o)Ongoing

Scenario 2 – Deployment problem

Henrik Kniberg 48

BC

A

D

E

F

G

H I

J LKM

PO

49

NextDev

Done

Backlog 32

In production :o)Ongoing

Scenario 2 – Deployment problem

Henrik Kniberg 49

B

C A

D

E

F

G

H I

J LKM

PO

50

NextDev

Done

Backlog 32

In production :o)Ongoing

Scenario 2 – Deployment problem

Henrik Kniberg 50

B

C A

D

E

F

G

H I

J LKM

PO

51

NextDev

Done

Backlog 32

In production :o)Ongoing

Scenario 2 – Deployment problem

Henrik Kniberg 51

B

C A

D

F

G

H I

J LKM

!?

E

PO

52

NextDev

Done

Backlog 32

In production :o)Ongoing

Scenario 2 – Deployment problem

Henrik Kniberg 52

B

C

A

D

EF

G

H I

J LKM

!?

PO

53

NextDev

Done

Backlog 32

In production :o)Ongoing

Scenario 2 – Deployment problem

Henrik Kniberg 53

B

C

A

D

EF

G

H I

J LKM

PO

54

NextDev

Done

Backlog 32

In production :o)Ongoing

Scenario 2 – Deployment problem

Henrik Kniberg 54

B

A

D

EF

G

H I

J LKM

C

PO

55

NextDev

Done

Backlog 32

In production :o)Ongoing

Scenario 2 – Deployment problem

Henrik Kniberg 55

B

AD

EF

G

H I

J LKM

C

PO

56

Example: Portfolio mgmt

Henrik Kniberg 56

57

Portfolio-level kanban board

Henrik Kniberg

Next

Develop

Bingo

1

FLOW Avg lead time: weeks12

Release

Done2Conce

ptPlayable

Features

Polish3

Zork

Pac man

Pong

Donkey Kong

Mine sweepe

r

DugoutDuck hunt

GameTeam

1

GameTeam

2

GameTeam

3

Solitaire

58

Game teams

Henrik Kniberg 58

Burndown

Unplanned items

Notchecked out Done! :o)

Write f ailing test

DAO

DB design

I ntegr test

Migration tool

Write f ailing test

GUI spec

Tapestry spikeI mpl.

migration

2d

Code

cleanup

Deposit

2d1d 0.5d1d

2d

8d

1d2d

2d

BackofficeLogin

BackofficeUser admin

Write f ailing test

3d

2d

1d2d

I mpl GUI

1dI ntegr. with

J Boss2d

Write f ailing test

3d

I mpl GUI

6d

Clarif y require-ments

2d

GUI design (CSS)

1d

Fix memory leak(J I RA 125)2d

Sales support

3d Write whitepaper

4d

SPRINT GOAL: Beta-ready release!

Next

WithdrawPerf testWithdraw

checked out

Write f ailing test

Game team 1Current game: Pac Man

Burndown

Unplanned items

Notchecked out Done! :o)

Write f ailing test

DAO

DB design

I ntegr test

Migration tool

Write f ailing test

GUI spec

Tapestry spikeI mpl.

migration

2d

Code

cleanup

Deposit

2d1d 0.5d1d

2d

8d

1d2d

2d

BackofficeLogin

BackofficeUser admin

Write f ailing test

3d

2d

1d2d

I mpl GUI

1dI ntegr. with

J Boss2d

Write f ailing test

3d

I mpl GUI

6d

Clarif y require-ments

2d

GUI design (CSS)

1d

Fix memory leak(J I RA 125)2d

Sales support

3d Write whitepaper

4d

SPRINT GOAL: Beta-ready release!

Next

WithdrawPerf testWithdraw

checked out

Write f ailing test

Game team 2Current game: Pong

Burndown

Unplanned items

Notchecked out Done! :o)

Write f ailing test

DAO

DB design

I ntegr test

Migration tool

Write f ailing test

GUI spec

Tapestry spikeI mpl.

migration

2d

Code

cleanup

Deposit

2d1d 0.5d1d

2d

8d

1d2d

2d

BackofficeLogin

BackofficeUser admin

Write f ailing test

3d

2d

1d2d

I mpl GUI

1dI ntegr. with

J Boss2d

Write f ailing test

3d

I mpl GUI

6d

Clarif y require-ments

2d

GUI design (CSS)

1d

Fix memory leak(J I RA 125)2d

Sales support

3d Write whitepaper

4d

SPRINT GOAL: Beta-ready release!

Next

WithdrawPerf testWithdraw

checked out

Write f ailing test

Game team 2Current game: Donkey Kong

59

Example: Connecting Scrum & Kanban

Henrik Kniberg 59

60

Operations / support team

Connecting Scrum & Kanban

Henrik Kniberg 60

Featureteam 1

Featureteam 2

Featureteam 2

Featureteam 1

Featureteam 2

Featureteam 2

Scrum Scrum Scrum Scrum Scrum Scrum

ScrumOperations / support team

Featureteam 1

Featureteam 2

Featureteam 2

Scrum Scrum Scrum

Kanban

Step 1 Step 2 Step 3

61

Wrapup

Henrik Kniberg 61

62

Agile is ”simple”

Henrik Kniberg

A few books on Agile...... and Scrum...

... and XP

... and maybe some on DSDM and Crystal and Lean while you’re at it.

63

Agile is Simple but Hard

Henrik Kniberg 63

... like chess

... and piano playing

64

Agile & Lean fit well together

Customer valueVisual managementBuild quality inContinuous improvementEmpirical approachEmpowerment

Henrik Kniberg 64

65

Essential skills neededregardless of process

Henrik Kniberg 65

Software craftsmanship

Splitting the system into useful pieces

Retrospectives

As a buyerI want to save my shopping cartso that I can continue shopping later

66

Don’t be dogmatic

Henrik Kniberg 66

Go away! Don’t talk to us!We’re in a sprint.

Come back in 3 weeks. Though Shalt

Limit WIP

67

Know your GoalFocus on Why

Agile/Lean are tools, not goalsTools don’t fail or succeed. People do. There is no such thing as a good or bad tool. Only good or bad decisions about when, where, how, and why to use which tool.

Don’t limit yourself to one toolMix & matchCompare for understanding, not judgement.

Experiment & enjoy the rideDon’t worry about getting it right from start. You won’t.The important thing isn’t your process.The important thing is your process for improving your process.

Henrik Kniberg 67

Take-away points

To do Dev Release

H C

2Test

35Done!

3

D

G

K

A

B

FLOW

68

Perfection is a direction, not a place

Henrik Kniberg

top related