Top Banner
Evan Leybourn LEAN KANBAN PRACTITIONER A lean approach to efficient workflow management Starting with Value Stream Mapping and Kanban by Evan Leybourn is licensed under a Creative Commons Attribution-ShareAlike 3.0 Australia License <http://creativecommons.org/licenses/by-sa/3.0/au/ >
205
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Lean Kanban Practitioner

Evan Leybourn

LEAN KANBAN PRACTITIONERA lean approach to efficient workflow management

Starting with Value Stream Mapping and Kanban by Evan Leybourn is licensed under a Creative Commons Attribution-ShareAlike 3.0 Australia License <http://creativecommons.org/licenses/by-sa/3.0/au/>

Page 2: Lean Kanban Practitioner

Evan Leybournlean / agile business leader and authorSingapore@[email protected]://theagiledirector.com

CLICK TO DISCOVER MORE

Page 3: Lean Kanban Practitioner

lean, agile & kanban for software

part 1: history & core concepts

Page 4: Lean Kanban Practitioner

shu-ha-rithe stages of learning

Page 5: Lean Kanban Practitioner

守 : shu(beginner)follow precisely without modification

Page 6: Lean Kanban Practitioner

破 :ha (proficient)shifting between techniques

Page 7: Lean Kanban Practitioner

離 : ri (mastery)unconscious creation of new techniques

Page 8: Lean Kanban Practitioner

what does being “agile” actually mean?the agile manifesto

Page 9: Lean Kanban Practitioner

To what degree is the outcome knowable in advance?

To what degree can you coordinate and control all the players?

To what degree is the outcome dependent on intangible elements?

wate

rfall

ag

ile

Page 10: Lean Kanban Practitioner

Waterfall (Incrementing)

Agile (Iterating)Images with thanks from Jeff Patton: http://www.agileproductdesign.com/

Page 11: Lean Kanban Practitioner

individuals and interactionsover processes and tools

Page 12: Lean Kanban Practitioner

working software over comprehensive documentation

Page 13: Lean Kanban Practitioner

customer collaboration over contract negotiation

Page 14: Lean Kanban Practitioner

responding to change over following a plan

Page 15: Lean Kanban Practitioner

1. our highest priority is to satisfy the customer through early and continuous delivery of valuable software.

Page 16: Lean Kanban Practitioner

2. welcome changing requirements, even late in development. agile processes harness change for the customer's competitive advantage.

Page 17: Lean Kanban Practitioner

3. deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.

Page 18: Lean Kanban Practitioner

4. business people and developers must work together daily throughout the project.

Page 19: Lean Kanban Practitioner

5. build projects around motivated individuals. give them the environment and support they need, and trust them to get the job done.

Page 20: Lean Kanban Practitioner

6. the most efficient and effective method of conveying information to and within a development team is face-to-face conversation.

Page 21: Lean Kanban Practitioner

7. working software is the primary measure of progress.

Page 22: Lean Kanban Practitioner

8. agile processes promote sustainable development. the sponsors, developers, and users should be able to maintain a constant pace indefinitely.

Page 23: Lean Kanban Practitioner

9. continuous attention to technical excellence and good design enhances agility.

Page 24: Lean Kanban Practitioner

10. simplicity--the art of maximizing the amount of work not done--is essential.

Page 25: Lean Kanban Practitioner

11. the best architectures, requirements, and designs emerge from self-organizing teams.

Page 26: Lean Kanban Practitioner

12. at regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behaviour accordingly.

Page 27: Lean Kanban Practitioner

lean principles

1. eliminate waste

Page 28: Lean Kanban Practitioner

lean principles

2. amplify learning

Page 29: Lean Kanban Practitioner

lean principles

3. decide as late as possible

Page 30: Lean Kanban Practitioner

lean principles

4. deliver as fast as possible

Page 31: Lean Kanban Practitioner

lean principles

5. empower the team

Page 32: Lean Kanban Practitioner

lean principles

6. build integrity in

Page 33: Lean Kanban Practitioner

lean principles

7. see the whole

Page 34: Lean Kanban Practitioner

business change via sustained effort across the organisation

Change

Change

Change

Images shamelessly stolen from Ahmed Sidky (ICAgile)

Page 35: Lean Kanban Practitioner

workflow and project management

aup, crystal clear, dsdm, kanban, rup, scrum

Page 36: Lean Kanban Practitioner

kanban

1. visualise (card wall)2. limit wip3. manage flow4. make policies explicit5. feedback loops6. improve collaboratively

Page 37: Lean Kanban Practitioner

limit wip

reduce lead time, identify blocks & clear bottlenecks

Page 38: Lean Kanban Practitioner

scrum

* iterative product development* 1-4 week sprints* formal roles (product owner & scrum master)* timeboxed meetings

Page 39: Lean Kanban Practitioner

development methods

bdd, fdd, rad, lean software, xp

Page 40: Lean Kanban Practitioner

extreme programming

activitieswriting the softwaretesting the softwarelistening to the customer designing & refactoring

developmentpair programmingcommon code standardsclear system metaphor

Page 41: Lean Kanban Practitioner

quality methods

test driven development

Page 42: Lean Kanban Practitioner

test-driven development

1. create a test2. add the test to the test catalogue3. write the code4. run the tests (all of them)5. clean up the code as required. (refactor)

Page 43: Lean Kanban Practitioner

mura: unevennessmuri: overburdenmuda: wasteunderstanding waste

Page 44: Lean Kanban Practitioner

1. transportationthe 7 wastes

Page 45: Lean Kanban Practitioner

2. inventorythe 7 wastes

Page 46: Lean Kanban Practitioner

3. motionthe 7 wastes

Page 47: Lean Kanban Practitioner

4. waitingthe 7 wastes

Page 48: Lean Kanban Practitioner

5. over productionthe 7 wastes

Page 49: Lean Kanban Practitioner

6. over processingthe 7 wastes

Page 50: Lean Kanban Practitioner

7. defects the 7 wastes

Page 51: Lean Kanban Practitioner

agile means no documentationcommon agile mistakes

Page 52: Lean Kanban Practitioner

not measuring, monitoring or correctingcommon agile mistakes

Page 53: Lean Kanban Practitioner

common agile mistakes

assuming you can do more with less

Page 54: Lean Kanban Practitioner

common agile mistakes

skimping on training and education

Page 55: Lean Kanban Practitioner

common agile mistakes

lacking an executive sponsor

Page 56: Lean Kanban Practitioner

common agile mistakes

thinking agile is faster or easy

Page 57: Lean Kanban Practitioner

start with a toolcommon agile mistakes

Page 58: Lean Kanban Practitioner

failing to scalecommon agile mistakes

Page 59: Lean Kanban Practitioner

assuming agile = scrumcommon agile mistakes

Page 60: Lean Kanban Practitioner

evan [email protected]

questions???

Page 61: Lean Kanban Practitioner

lean, agile & kanban for software

part 2: roles & responsibilities

Page 62: Lean Kanban Practitioner

BUSINESS• USERS• CUSTOMER• CUSTOMER

REPRESENTATIVE

TECHNICAL• TEAM

FACILITATOR

• DEVELOPERS

• TESTERS

Page 63: Lean Kanban Practitioner

users will

use the software, identify issues & provide feedback

Page 64: Lean Kanban Practitioner

users can be

there are no typical users

Page 65: Lean Kanban Practitioner

users do not

set scope or test work

Page 66: Lean Kanban Practitioner

customers will

define, start& end the project

Page 67: Lean Kanban Practitioner

customers can be

internal managers or external clients

Page 68: Lean Kanban Practitioner

customers do not

direct work

Page 69: Lean Kanban Practitioner

the customer representative will

manage the product backlog, set the scope & approve releases

Page 70: Lean Kanban Practitioner

the customer representative can be

project manager, product manager or customer

Page 71: Lean Kanban Practitioner

the customer representative does not

manage the team

Page 72: Lean Kanban Practitioner

the team facilitator will

manage the agile process & report on progress

Page 73: Lean Kanban Practitioner

the team facilitator can be

project manager, team leader or team member

Page 74: Lean Kanban Practitioner

the team facilitator does not

prioritise features

Page 75: Lean Kanban Practitioner

developers will

develop features, and resolve issues

Page 76: Lean Kanban Practitioner

developers can be

developers, designers, writers, or administratorscross functional

Page 77: Lean Kanban Practitioner

developers do not

prioritise features

Page 78: Lean Kanban Practitioner

testers will

test, approve or reject features for release

Page 79: Lean Kanban Practitioner

testers can be

existing developers or dedicated testers

Page 80: Lean Kanban Practitioner

testers do not

test their own code

Page 81: Lean Kanban Practitioner

7 +/- 2typical team size

Page 82: Lean Kanban Practitioner

has an interest in the work & is kept up to dateinvolved parties (chickens)

Page 83: Lean Kanban Practitioner

committed parties (pigs)

"do" the work & are responsible for the release

Page 84: Lean Kanban Practitioner
Page 85: Lean Kanban Practitioner

evan [email protected]

questions???

Page 86: Lean Kanban Practitioner

lean, agile & kanban for software

part 3: project initiation

Page 87: Lean Kanban Practitioner

value stream mapping

defines the ‘as-is’ steps & roles for each task

Page 88: Lean Kanban Practitioner

value added

time spent on outcomes for the customer

Page 89: Lean Kanban Practitioner

non-value added

time spent between steps

Page 90: Lean Kanban Practitioner

1. gather preliminary information2. product quantity routing analysis3. group customers and materials4. sort product families by sequence5. choose one value stream to start

Page 91: Lean Kanban Practitioner

6. create an operations flow chart7. walk the shop floor8. collect the data9. construct the vsm10. summarize the data to get the big picture

Page 92: Lean Kanban Practitioner
Page 93: Lean Kanban Practitioner
Page 94: Lean Kanban Practitioner

reduce risk & uncertaintyby defining the high level scope

Page 95: Lean Kanban Practitioner

align to strategic goals, & technical frameworksskills gap analysis & recruitment

Page 96: Lean Kanban Practitioner

beginning the process

agile projects have minimal initiation

Page 97: Lean Kanban Practitioner

the development team should be

engaged during initiation

Page 98: Lean Kanban Practitioner

customer is fully aware of their responsibilitiescustomers share accountability for delivery

Page 99: Lean Kanban Practitioner

“friends don’t let friends use microsoft project”

Page 100: Lean Kanban Practitioner

- “how much is this going to cost?”- “as much as you’re willing to spend.”

Page 101: Lean Kanban Practitioner

- “how long is this going to take?”- “as long as is necessary.”

Page 102: Lean Kanban Practitioner

- “what am i going to get?”- “whatever you tell us you want.”

Page 103: Lean Kanban Practitioner

work in priority order, release quickly & monitor cycle timefixed cost

Page 104: Lean Kanban Practitioner

work in priority order fixed time

Page 105: Lean Kanban Practitioner

fixed scope

focus on backlog definition and estimation

Page 106: Lean Kanban Practitioner

fixed cost and time

calculate total cost against cycle time

Page 107: Lean Kanban Practitioner

fixed cost and scope

increase the estimate risk during initiation

Page 108: Lean Kanban Practitioner

fixed time and scope

allocation additional time into the schedule

Page 109: Lean Kanban Practitioner

fixed cost, time and scope

cancel the project

Page 110: Lean Kanban Practitioner

evan [email protected]

questions???

Page 111: Lean Kanban Practitioner

lean, agile & kanban for software

part 4: stories, tasks & the backlog

Page 112: Lean Kanban Practitioner

define user storiesas a ... i need ... so i can ...

Page 113: Lean Kanban Practitioner

invest characteristics

independent & self-contained

Page 114: Lean Kanban Practitioner

invest characteristics

negotiable & flexible

Page 115: Lean Kanban Practitioner

invest characteristics

valuable to the customer

Page 116: Lean Kanban Practitioner

invest characteristics

estimatable and clearly defined

Page 117: Lean Kanban Practitioner

invest characteristics

small – between ½ - 2 days

Page 118: Lean Kanban Practitioner

invest characteristics

testable with defined qc metrics

Page 119: Lean Kanban Practitioner

create an ordered product backlog (in low detail)allow customers to slowly define their needs

Page 120: Lean Kanban Practitioner

HIGH PRIORITY• SUMMARY• ESTIMATE• DETAIL• FUNCTION• ACCEPTANCE CRITERIA

LOW PRIORITY• SUMMARY• ESTIMATE

Page 121: Lean Kanban Practitioner

estimate the product backlogfirst order estimate - using story points

Page 122: Lean Kanban Practitioner
Page 123: Lean Kanban Practitioner

1, 2, 3, 5, 8, 13, 20, 40, 100fibonacci sequence

Page 124: Lean Kanban Practitioner

expert opinion

the team member with specific domain knowledgee.g. dba estimating database tasks

Page 125: Lean Kanban Practitioner

comparison

comparing a task to another, estimated, taske.g. task a is about twice the effort of task b

Page 126: Lean Kanban Practitioner

components

break a large task into small sub-taskse.g. break user management into interface, login, access control, etc.

Page 127: Lean Kanban Practitioner

planning poker

everyone plays a card representing their estimateeveryone participates to reach consensus

Page 128: Lean Kanban Practitioner

Estimates must not be mentioned during planning discussion to avoid anchoring

Page 129: Lean Kanban Practitioner

staff overhead: non project time

estimated leave, illness, breaks, meetings etc.generic industry modifier: 25%

Page 130: Lean Kanban Practitioner

duration calculation

story cost x (overhead + 1) x (estimate risk + 1)estimate risk is optional

Page 131: Lean Kanban Practitioner

for example

4 x (25% + 1) x (50%+ 1)= 4 x 1.25 x 1.5= 5 to 7.5 hours

Page 132: Lean Kanban Practitioner

regularly review the backlogto ensure relevance

Page 133: Lean Kanban Practitioner

evan [email protected]

questions???

Page 134: Lean Kanban Practitioner

lean, agile & kanban for software

part 5: continuous delivery

Page 135: Lean Kanban Practitioner

Select user story

Determine tasks to deliver user

story

Agree technical dependencies

and order

Estimate the effort required to complete each

task

Assess the risks associated with

the task estimate

Assign the task

Page 136: Lean Kanban Practitioner

plan, design & estimate taskstechnical specifications

Page 137: Lean Kanban Practitioner

Highest Priority Task

Test-Driven Development

BuildCommit

Continuous Integration

Done

Testing

Deploy

Page 138: Lean Kanban Practitioner

get highest priority featureallow developers to choose their tasks

Page 139: Lean Kanban Practitioner

1• Create a test

2• Add the test to the test catalogue

3• Write the code

4• Run the tests (all of them)

5• Clean up the code as required. (Refactor)

test–driven development

Page 140: Lean Kanban Practitioner

test coverage

functions, boundary cases, user interface & performance

Page 141: Lean Kanban Practitioner

test types

defect, usability, functionality & data

Page 142: Lean Kanban Practitioner

pair programming:coder + reviewerbuild

Page 143: Lean Kanban Practitioner

code standards: a common coding stylebuild

Page 144: Lean Kanban Practitioner

system metaphor:clear naming standardsbuild

Page 145: Lean Kanban Practitioner

regular commitsversion control

Page 146: Lean Kanban Practitioner

continuous build, testing & releasecontinuous integration

Page 147: Lean Kanban Practitioner

5s: seiri / sort

organise & clean the work area

Page 148: Lean Kanban Practitioner

5s: seiton / set in order

arrange for easy identification and accessibility

Page 149: Lean Kanban Practitioner

5s: seiso / shine

regular maintenance of the work area

Page 150: Lean Kanban Practitioner

5s: seiketsu / standardise

a consistent approach to development

Page 151: Lean Kanban Practitioner

5s: shitsuke / sustain

a commitment to maintain the previous 4s

Page 152: Lean Kanban Practitioner

what did you do yesterday?daily stand-up

Page 153: Lean Kanban Practitioner

what will you do today?daily stand-up

Page 154: Lean Kanban Practitioner

are there any issues?daily stand-up

Page 155: Lean Kanban Practitioner

summary stand-upfor large teams

Page 156: Lean Kanban Practitioner

differs by organisation

what does “done” mean?

Page 157: Lean Kanban Practitioner

definition of “done”

documentation?uat?built / compiled?

Page 158: Lean Kanban Practitioner

what does“not done”mean?the primary measure of progress

Page 159: Lean Kanban Practitioner

per story or at fixed intervalsdeploy

Page 160: Lean Kanban Practitioner

present & review completed work to the customer regular review

Page 161: Lean Kanban Practitioner

evan [email protected]

questions???

Page 162: Lean Kanban Practitioner

lean, agile & kanban for software

part 6: kanban

Page 163: Lean Kanban Practitioner

kanban (かんばん )workflow monitoring & visualisation

Page 164: Lean Kanban Practitioner

can be as simple or complex as requiredthe flow of value through the system

Page 165: Lean Kanban Practitioner

Backlog Build Test Done

Page 166: Lean Kanban Practitioner

Backlog

Analysis Build Test Stage Doc’ Releas

e Done

Page 167: Lean Kanban Practitioner

tasks with upstream dependenciesblocked

Page 168: Lean Kanban Practitioner
Page 169: Lean Kanban Practitioner

work in progress

limit concurrent work and promote workflow

Page 170: Lean Kanban Practitioner

“pull” all ready tasks to wip limitpull!!!

Page 171: Lean Kanban Practitioner
Page 172: Lean Kanban Practitioner
Page 173: Lean Kanban Practitioner
Page 174: Lean Kanban Practitioner
Page 175: Lean Kanban Practitioner

kanban: class of service

* expedite* fixed delivery * standard class* intangible class

Page 176: Lean Kanban Practitioner
Page 177: Lean Kanban Practitioner

identify & resolve bottlenecks

through low wip limits and strict process flow

Page 178: Lean Kanban Practitioner

production levelling

constant rate of flow through all states

Page 179: Lean Kanban Practitioner

customers can always see progresspromoting transparency

Page 180: Lean Kanban Practitioner

progress monitoring

cumulative flow statistical run

Page 181: Lean Kanban Practitioner

cycle time

average time to complete a task from start

Page 182: Lean Kanban Practitioner

lead time

average time to complete a task from request

Page 183: Lean Kanban Practitioner

plot delivered functionality against duration effort visualisation

Page 184: Lean Kanban Practitioner

cumulative flow diagram

Page 185: Lean Kanban Practitioner

don't manage by numbers

identify problem trends early

Page 186: Lean Kanban Practitioner

bottleneck

Page 187: Lean Kanban Practitioner

poor flow

Page 188: Lean Kanban Practitioner

large wip

Page 189: Lean Kanban Practitioner

long lead time

Page 190: Lean Kanban Practitioner

plateau

Page 191: Lean Kanban Practitioner

plot cycle time against average duration visualisation

Page 192: Lean Kanban Practitioner

cycle time run charts

Page 193: Lean Kanban Practitioner

don't manage by numbers

identify problem trends early

Page 194: Lean Kanban Practitioner

process trend

Page 195: Lean Kanban Practitioner

process shift

Page 196: Lean Kanban Practitioner

extreme process variation

Page 197: Lean Kanban Practitioner

evan [email protected]

questions???

Page 198: Lean Kanban Practitioner

lean, agile & kanban for software

part 8: kaizen ( 改善 )

Page 199: Lean Kanban Practitioner

inspect & adaptcontinuous improvement

Page 200: Lean Kanban Practitioner

what went well?retrospective / quality circle

Page 201: Lean Kanban Practitioner

add actionable tasks to the backlog

what could be improved?

Page 202: Lean Kanban Practitioner

kaizen emphasises

teamwork, discipline & morale

Page 203: Lean Kanban Practitioner

1. do not send defective products to the subsequent process2. the subsequent process comes to withdraw only what is needed3. produce only the exact quantity withdrawn by the subsequent process4. equalise, or level, the production5. kanban is a means to fine tuning6. stabilize and rationalize the process

Page 204: Lean Kanban Practitioner

http://agilebusinessmanagement.org

- Case Studies- Articles- Community

Join our Agile Journey

Page 205: Lean Kanban Practitioner

To learn more, check out

Directing the Agile Organisationby Evan Leybourn

available at Amazon and all good book stores

CLICK TO DISCOVER MORE