Kanban and Beyond

10 Components of a great Kanban System

Created by Roger Almeida / @roger4almeida

Expectations

Desired outputs of a Kanban System

  • Highlight the bottlenecks
  • Clarity on the process
  • Foster autonomy
  • Maximize the Output
  • Reduce the feedback loop

What Kanban IS NOT

  • Scrum without sprint planning
  • A board without “To Do, Doing, Done”
  • A blocker to use XP or other Agile Methodologies

Visual Workflow

Software Development?

QA Testing the mobile app?

Are we releasing the new version in July?

Is the feature X in Prod?

We cannot see the progress naturally

What is kanban?

  • Toyota way to signal the upstream department to produce more parts
  • Reduce waste

kanban vs Kanban?

  • kanban = card to send a signal
  • Kanban = system to reduce waste

Component 1:

Show the Workflow

To Do Doing Done
12
8
3
22
11
4
9
2
1
Backlog Dev Test Validated Deployed
12
8
3
10
16
22
11
4
15
14
9
2
18
23
1
13

Tips

  • Regular tasks normally become part of the process (columns)
  • Experiment. Don’t assume you will do it right the first time

Component 2:

Show the people

Backlog Dev Test Validated Deployed
12
8
3
10
16
22
11
4
15
14
9
2
18
23
1
13
Backlog Dev Test Validated Deployed
12
8
3
10
16
22
11
4
15
14
9
2
1
23
18
13

Component 3:

Queues

Dev Test Deployed
12
3
16
22
4
2
8
1
11
Backlog Dev Queue Test Queue Deployed
1
12
4
3
11
16
22
8
2

Some Concepts

Before moving on

Component 4:

Limit WIP

Backlog Dev Queue Test Queue Deployed
17
12
4
3
16
20
22
8
18
2
11
19
Backlog Dev Queue Test Queue Deployed
17
12
4
3
16
20
22
8
18
11
19
2
Backlog Dev Queue Test Queue Deployed
12
4
3
16
20
22
8
18
17
11
19
2
Backlog Dev Queue Test Queue Deployed
12
4
3
16
20
22
8
18
17
11
19
2
Backlog Dev Queue Test Queue Deployed
4
3
16
20
22
8
18
17
11
19
2
12
Backlog Dev Queue Test Queue Deployed
20
4
3
16
22
8
18
17
11
19
2
12
Backlog Dev Queue Test Queue Deployed
20
4
3
16
22
8
18
17
11
19
2
12

Add limits to the system to reduce the Lead Time

Little’s Law

“The average number of work items in a stable system is equal to their average completion rate, multiplied by their average time in the system.” John Little, 1961

WIP = Throughput X Lead Time

The goal is to Reduce Lead Time

Lead Time = WIP / Throughput
Backlog Dev Queue Test Queue Deployed
3
4
1
20
4
3
16
22
8
18
17
11
19
2
12

Component 5:

Improve the Flow

(or break the silos)

Backlog Dev Q 4 Test Test Done
5
3
3
1
12
8
3
10
16
22
11
9
2
Backlog Dev Q 4 Test Test Done
5
3
3
1
12
3
10
16
22
11
8
9
2
Backlog Dev Q 4 Test Test Done
5
3
3
1
12
3
10
16
22
11
8
9
2
Backlog Dev Q 4 Test Test Done
5
3
3
1
12
3
10
16
22
8
9
2
11

Queue is full!!!

One developer can pair with the tester

Backlog Dev Q 4 Test Test Done
5
3
3
1
12
3
10
16
22
8
9
2
11

Move the focus to test column

Backlog Dev Q 4 Test Test Done
5
3
3
1
12
10
16
22
2
8
3
9
11

Replenishment

Backlog Dev Q 4 Test Test Done
5
3
3
1
12
10
16
22
2
8
3
9
11

Replenishment

Backlog Dev Q 4 Test Test Done
5, 2
3
3, 1
1
12
10
16
22
2
8
3
9
11

Component 6:

Make Policies Explicit

Backlog Dev Test Validated Deployed
12
8
3
10
16
22
11
4
15
14
9
2
18
23
1
13

Component 7:

Highlight the Blockers

Backlog Dev Queue Test Queue Deployed
5
3
3
2
5
17
12
4
3
16
20
22
8
18
2
11
19
Backlog Dev Queue Test Queue Deployed
5
3
3
2
5
17
12
4
3
16
20
22
8
18
2
11
19
Backlog Dev Queue Test Queue Deployed
5
3
3
2
5
12
4
3
16
20
22
8
18
2
11
19
17
Backlog Dev Queue Test Queue Deployed
5
3
3
2
5
17
12
3
16
20
22
8
4
18
2
11
19

Component 8:

Classes Of Service

U.S.

Bugs

Tech. Debt
Backlog Dev Queue Test Queue Deployed
17
12
4
3
16
20
22
8
18
2
11
19

Component 9:

Track The Flow

Cumulative Flow Diagram (CFD)

How to read a CFD

Component 10:

Stop Starting Start Finishing

Finish > Start

How do you do your stand-up then?

Summary

  1. Show the workflow
  2. Show the people
  3. Use Queues
  4. Limit WIP
  5. Improve the Flow (or break the silos)
  6. Make policies explict
  7. Highlight the Blockers
  8. Use classes of service
  9. Track the flow
  10. Stop Starting - Start Finishing

Questions?


http://rogeralmeida.github.io/talks/kanban-and-beyond/