agile management and scrum - crisp · scrum (9) kanban (3) do whatever (0) rup (120+) •...

33
Experimenting with Kanban principles NDC 2010 2010-06-17 Mattias Skarin

Upload: others

Post on 21-May-2020

16 views

Category:

Documents


0 download

TRANSCRIPT

Experimenting with Kanban principles

NDC 2010

2010-06-17

Mattias Skarin

2

2010-06-17

Mattias Skarin 2

3

9 years software dev

Acting CTO

Who am I?

Coach

Help IT companies stay competitive

Entrepreneur

Extreme Solutions

Bizplant

3

Engineer

[email protected]

+46 733 66 88 08

Book: ”Kanban and Scrum –making the most of both”

4

Goal for today

Discover kanban principles

Have some fun

2010-06-17

Mattias Skarin 4

Whaat...

5

The STCC challenge

2010-06-17

Mattias Skarin 5

NTCC

6

Who should you help first?

2010-06-17

Mattias Skarin 6

Business analyst

CEO – New strategy

Other teams

New deals

Testers

???

.. ”it depends”

7

It’s hard to optimize something that you can’t see

8

Kanban principles

1. Visualize workflow

2. Limit Work In Progress

3. Measure and manage flow

4. Make process policies explicit

5. Use models to recognize improvement possibilities

2010-06-17

Mattias Skarin 8

9

Kanban in SW development

Henrik Kniberg

Backlog Dev Done

orem ipsum dolor sit amet, co nse

ctetur

orem ipsum dolor sit amet, co nse

cteturorem ipsum dolor sit amet, co nse

ctetur

orem ipsum dolor sit amet, co nse

ctetur

orem ipsum dolor sit amet, co nse

ctetur

UAT Deploy5 3 2 3

FLOW Avg lead time: days 12

orem ipsum dolor sit amet, co nse

ctetur

orem ipsum dolor sit amet, co nse

ctetur

orem ipsum dolor sit amet, co nse

ctetur

Pioneered byDavid Anderson

in 2004

10

Start from where you are

2010-06-17

Mattias Skarin 10

ArchitectureBusiness

NeedDev intern.

Func.test

Dev outsourced

System test

Drift

Architecture Dev. Func. test

Systemtest

Req.

Intern

Outsourc.

Prod Done

Flöde

11

Optimize the whole

Henrik Kniberg

11

DaveJoe Lisa

Dave

Joe

Lisa

January February March April May June July

6 months

3 months

Done!

Done!

We’re alot faster!

I’m a bitslower

We’re slow!

I’m fast!

12

Visibility to invisible work

Mattias Skarin

12

FLOW

13

We can allow both specialists & generalists

13

Backlog Design

orem ipsum dolor sit amet, co nse

ctetur

Fold Tape

orem ipsum dolor sit amet, co nse

ctetur

orem ipsum dolor sit amet, co nse

ctetur

orem ipsum dolor sit amet, co nse

ctetur

orem ipsum dolor sit amet, co nse

ctetur

orem ipsum dolor sit amet, co nse

ctetur

Trim Draw

3 2 2 1 4 3

orem ipsum dolor sit amet, co nse

cteturorem ipsum dolor sit amet, co nse

ctetur

14

More prescriptive More adaptive

Process tools

Henrik Kniberg

14

XP(13)

Scrum(9)

Kanban(3)

Do Whatever(0)

RUP(120+)

• Architecture Reviewer• Business Designer

• Business-Model Reviewer• Business-Process Analyst

• Capsule Designer• Change Control Manager

• Code Reviewer• Configuration Manager

• Course Developer• Database Designer

• Deployment Manager• Design Reviewer

• Designer• Graphic Artist• Implementer• Integrator

• Process Engineer• Project Manager• Project Reviewer

• Requirements Reviewer• Requirements Specifier

• Software Architect• Stakeholder

• System Administrator• System Analyst• Technical Writer

• Test Analyst• Test Designer• Test Manager

• Tester• Tool Specialist

• User-Interface Designer• Architectural analysis

• Assess Viability of architectural proof-of-concept

• Capsule design• Class design

• Construct architectural proof-of-concept

• Database design• Describe distribution

• Describe the run-time architecture• Design test packages and classes

• Develop design guidelines• Develop programming guidelines

• Identify design elements• Identify design mechanisms• Incorporate design elements

• Prioritize use cases• Review the architecture

• Review the design• Structure the implementation

model• Subsystem design• Use-case analysis• Use-case design• Analysis model

• Architectural proof-of-concept• Bill of materials

• Business architecture document• Business case

• Business glossary• Business modeling guidelines

• Business object model• Business rules

• Business use case

• Whole team• Coding standard

• TDD• Collective ownership

• Customer tests• Pair programming

• Refactoring• Planning game

• Continuous integration• Simple design

• Sustainable pace• Metaphor

• Small releases

• Scrum Master• Product Owner

• Team• Sprint planning meeting

• Daily Scrum• Sprint review

• Product backlogt• Sprint backlog

• BUrndown chart

• Visualize the workflow• Limit WIP

• Measure and optimize lead time

Miyamoto Musashi17th century samurai

Do not develop an attachmentto any one weapon

or any one school of fighting

• Business use case realization• Business use-case model

• Business vision• Change request

• Configuration audit findings• Configuration management plan

• Data model• Deployment model• Deployment plan• Design guidelines

• Design model• Development case

• Development-organization assessment

• End-user support mateirla• Glossary

• Implementation model• Installation artifacts

• Integration build plan• Issues list

• Iteration assessment• Iteration plan

• Manual styleguide• Programming guidelines• Quality assurance plan• Reference architecture

• Release notes• Requirements attributes

• Requirementsmanagement plan

• Review record• Risk list

• Risk management plan• Software architecture

document• Software development

plan• Software requirements

specification• Stakeholder requests• Status assessment

• Supplementary business specification

• Supplementary specification• Target organization assessment

• Test automation architecture• Test cases

• Test environment configuration• Test evaluation summary

• Test guidelines• Test ideas list

• Test interface specification• Test plan• Test suite

• Tool guidelines• Training materials• Use case model

• Use case package• Use-case modeling guidelines

• Use-case realization• Use-case storyboard

• User-interface guidelines• User-interface prototype

• Vision• Work order

• Workload analysis model

Henrik Kniberg, 2009

15

Exercise: Chair game

2010-06-17

Mattias Skarin 15

16

Kanban principles

1. Visualize workflow

2. Limit Work In Progress

3. Measure and manage flow

4. Make process policies explicit

5. Use models to recognize improvement possibilities

2010-06-17

Mattias Skarin 16

17

Making process policies explicit

2010-06-17

Mattias Skarin 17

Examples:• Definition of done• Work in progress limits• Branch policies

18

Exercise: Pass the pennies

Tomas Björkholm

18

19

Kanban principles

1. Visualize workflow

2. Limit Work In Progress

3. Measure and manage flow

4. Make process policies explicitUse models to recognize improvement possibilities

2010-06-17

Mattias Skarin 19

20

Kanban principles

1. Visualize workflow

2. Limit Work In Progress

3. Measure and manage flow

4. Make process policies explicit

5. Use models to recognize improvement possibilities

2010-06-17

Mattias Skarin 20

21

Quality chain effects

Henrik Kniberg

21

Failure demand

Value demand

Defects per unit of valued work

22

Value demand

I want to order... Where is my order?

Failure demand

Demand caused by failure to do something right for the customer

A demand from which there is no hope of making money

..I need... ..you didn’t...

Demand for service from customers

Examples

I want to be able to... It doesn’t work!

23

Real world example

0%

10%

20%

30%

40%

50%

60%

70%

80%

90%

100%

Sprint 1 Sprint 2 Sprint 3 Sprint 4 Sprint 5 Sprint 6 Sprint 7

Value demand

Failure Demand

Average 28 %

2010-06-17

Mattias Skarin 23

Data development team 2009

24

Improve upstream quality

2010-06-17

Mattias Skarin 24

Team A

Team B

Add training• Stop half finished work

25

Theory of constraints

1. Make the goal of the system explicit

2. Find the constraint

3. Exploit

4. Subordinate

5. Elevate

2010-06-17

Mattias Skarin 25

These are free!

The five focusing steps:

26

How to spot your bottleneck

Next Dev

orem ipsum dolor sit amet, co nse

ctetur

orem ipsum dolor sit amet, co nse

ctetur

Test Deploy

orem ipsum dolor sit amet, co nse

ctetur

orem ipsum dolor sit amet, co nse

ctetur

orem ipsum dolor sit amet, co nse

ctetur

Integrate

orem ipsum dolor sit amet, co nse

ctetur

orem ipsum dolor sit amet, co nse

ctetur

orem ipsum dolor sit amet, co nse

ctetur

orem ipsum dolor sit amet, co nse

ctetur

orem ipsum dolor sit amet, co nse

ctetur

orem ipsum dolor sit amet, co nse

ctetur

orem ipsum dolor sit amet, co nse

ctetur

orem ipsum dolor sit amet, co nse

ctetur

orem ipsum dolor sit amet, co nse

ctetur

• Busy at bottleneck• Slack downstream• Queue upstream

27

1- Exploit the constraint

Make sure bottleneck operates at full capacity

Remove non productive work (task switching)

Careful prioritize what the bottneck works on

Ensure there is always something to work on (not idle)

Ensure it has high quality input

2010-06-17

Mattias Skarin 27

28

2- Subordinate

There is always slack around the bottleneck

Use it to take away work of the bottleneck

Train people to do bottleneck work

Let them fix defects

Make the system march the pace of the bottleneck

2010-06-17

Mattias Skarin 28

Here Here

29

3- Elevate

Invest time and resources to improve the performance of the bottleneck

2010-06-17

Mattias Skarin 29

Hint: Better tools before more people!

30

The bottleneck game

2010-06-17

Mattias Skarin 30

I’m not a bottleneck, I’m a free man!

Source:Pascal Van CauwenberghePortia Tung

31

Expand your toolkit!www.crisp.se/utbildning

Henrik Kniberg

Kanban Coach CampNov 10-11

David Anderson & Mattias Skarin

Kanban AppliedSept 27-29

Henrik Kniberg & Mattias Skarin

Kanban starting points on the web:http://www.crisp.se/kanban

http://www.limitedwipsociety.com

Leading LeanSoftware Development

Sept 4-5

Tom & Mary Poppendieck & Henrik Kniberg

32

Thanks for listening!

2010-06-17

Mattias Skarin 32

[email protected]

Blog:

http://blog.crisp.se/mattiasskarin

33

2010-06-17

Mattias Skarin 33