kanban

56
What It Is, and Why It Works Lorenzo Dee VP of Consulting, O&B

Upload: lorenzo-dee

Post on 13-Jul-2015

122 views

Category:

Technology


0 download

TRANSCRIPT

What It Is, and Why It Works

Lorenzo DeeVP of Consulting, O&B

#learningsession 2/56

#learningsession

Source: http://en.wikipedia.org/wiki/Tokyo_Imperial_Palace

4/56

#learningsession

Source: http://dessylovetravelling.wordpress.com/2013/10/10/imperial-palace-tokyo-japan/

5/56

#learningsession

Source: http://jumpingforjapan.blogspot.com/2012/08/the-ooku-land-of-gardens-and-sprouts-3.html

6/56

#learningsession 7/56

#learningsession

Source: What can traffic in stockholm teach you about your development process by Håkan Forss

8/56

Kanban is a method for managing knowledge work with an emphasis onjust-in-time delivery while not overloading the team members.

In this approach, the process, from definition of a task to its delivery to thecustomer, is displayed for participants to see and team members pull work froma queue.

#learningsession

Source: Wikipedia

9/56

Kanban is a method for managing knowledge work with an emphasis onjust-in-time delivery while not overloading the team members.

In this approach, the process, from definition of a task to its delivery to thecustomer, is displayed for participants to see and team members pullwork from a queue.

#learningsession

Source: Wikipedia

10/56

Kanban can be divided into two parts:

#learningsession

Kanban system (small "k") – A visual process management system thattells what to produce, when to produce it, and how much to produce.

The Kanban method – An approach to incremental, evolutionary processimprovement for organizations.

Source: Wikipedia

11/56

The word "kanban" (small "k") refers to (看板).

A "kanban system" (small "k") refers to a pull system implemented with (virtual).

The "Kanban Method" (capital "K") (as formulated by David J. Anderson) is anapproach to incremental, evolutionary process and systems change fororganizations. It uses a as the coremechanism to expose system operation (or process) problems and stimulatecollaboration to continuously improve the system.

#learningsession

Source: Kanban: Successful Evoluoutionary Change for Your Technology Business by David J. Anderson

12/56

To summarize, the Kanban method:

to continously improve the system.

#learningsession

uses a "pull" system,

limits work-in-process,

and exposes (or displays visually) the system operation (problems),

13/56

#learningsession

Why use a "pull" system?

Why limit WIP (Work-In-Process)?

Why expose the process for all participants to see? Why make it visible?

15/56

Source: http://www.funnystuff.today/2013/12/push-if-that-doesn-work-pull.html

#learningsession

Push System

Pull System

Resources are provided to the consumer based on forecasts or schedules.

Make all we can (just-in-case).

A method of controlling the flow of resources by replacing only what hasbeen consumed.

Make what's needed when we need it (just-in-time).

17/56

#learningsession

Balances demand against throughput

Eliminates (reduces) waste

18/56

If you are working on something exciting that

you really care about, you don't have to be

pushed. The vision pulls you.

Steve Jobs (1955 - 2011)

Apple

(emphasis added)

Little's Law:

L = average number of users in the system

λ = rate at which users arrive in the system

W = average waiting time that a user spends in the system

#learningsession 20/56

Little's Law:

Let's say, at a store, customers arrive at a rate of 10 per hour, and...

#learningsession 21/56

Little's Law:

Let's say, at a store, customers arrive at a rate of 10 per hour, and stay anaverage of 0.5 hours.

Based on Little's Law, we should find that the average number of customers inthe store at any time to be...

#learningsession 22/56

Little's Law:

Let's say, at a store, customers arrive at a rate of 10 per hour, and stay anaverage of 0.5 hours.

Based on Little's Law, we should find that the average number of customers in

the store at any time to be 5.

#learningsession 23/56

Little's Law:

L = average number of users in the system

λ = rate at which users arrive in the system

W = average waiting time that a user spends in the system

#learningsession 24/56

Little's Law:

L = average number of users in the system (work-in-process)

λ = rate at which users arrive in the system (throughput)

W = average waiting time (or cycle time) that a user spends in the system

#learningsession 25/56

#learningsession 26/56

/min

#learningsession 27/56

/min min

#learningsession 28/56

/min

#learningsession 29/56

/min min

#learningsession 30/56

/min

#learningsession 31/56

/min min

#learningsession 32/56

To improve cycle time, only two options are available:

#learningsession

Increase throughput

Reduce WIP

33/56

What does WIP reduction have to do with software development?

There is causation between quantity of WIP

and average lead time (or cycle time), and the

relationship is linear.

David J. Anderson, p. 27,

Kanban: Successful Evoluoutionary Change for Your Technology Business

Longer lead times seem to be associated with

significantly poorer quality.

David J. Anderson, p. 27,

Kanban: Successful Evoluoutionary Change for Your Technology Business

In fact, an approximately six-and-a-half times

increase in average lead time resulted in a

greater than 30-fold increase in initial defects.

David J. Anderson, p. 27,

Kanban: Successful Evoluoutionary Change for Your Technology Business

However, at the time of writing there is no

scientific evidence to back up this empirically

observed result.

David J. Anderson, p. 28,

Kanban: Successful Evoluoutionary Change for Your Technology Business

#learningsession 38/56

#learningsession 39/56

#learningsession

Source: http://blog.codinghorror.com/the-multi-tasking-myth/

40/56

#learningsession

Source: http://www.enmast.com/2013/12/effects-of-multitasking/

41/56

#learningsession 42/56

#learningsession

Source: Scrum and XP from the Trenches, by Henrik Kniberg

43/56

#learningsession

Source: Scrum team converts to Kanban

44/56

#learningsession

Source: www.crips.se/kanban/example

45/56

#learningsession 46/56

#learningsession 47/56

#learningsession 48/56

#learningsession 49/56

#learningsession

Source: Slack Time

50/56

#learningsession

Source: Slack Time

51/56

#learningsession

Source: Slack Time

52/56

#learningsession

Source: Slack Time

53/56

#learningsession

Allows everyone see the system (and its bottlenecks if any)

Allows the team to self-organize earlier

54/56

To summarize, the Kanban method works because:

to continously improve the system.

#learningsession

it uses a "pull" system,

limits work-in-process,

and exposes (or displays visually) the system operation (problems)

55/56

[email protected]

g+ gplus.to/lorenzo.deetwitter @lorenzodeewww lorenzo-dee.blogspot.comgithub github.com/lorenzodee