51
welcome to Agile Learning Labs Understanding Kanban

Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

  • Upload
    others

  • View
    7

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

welcome to

Agile Learning Labs

Understanding Kanban

Page 2: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

Nikos Batsios

Agile Coach

personal thoughts: https://escapelocaloptimum.wordpress.com

Page 3: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

A Kanban Bitamin Injection start from where you are right now

Page 4: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help
Page 5: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

If we have nothing to look at, we have nothing to act on

Visual systems like Kanban, draw their power from our preference for visual information

Page 6: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

Once we see our work and the process related to it, we create and build a

shared understanding for Business and IT people

Page 7: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

Understanding Kanban

Page 8: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

Principles or Practices call them as you want :-) ★ Visualize ★ Limit Work In Process ★ Manage Flow ★ Make Process Policies Explicit ★ Implement Feedback Loops ★ Improve Collaboratively, Evolve Experimentally

Page 9: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

✤ Visualising your work

Page 10: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

Visualising the work

Make all necessary information visible when people need it, enabling effective

collaboration and improvement through understanding how work works.

To achieve this you have to make polices explicit and make use of information

radiators

Page 11: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

Information Radiators

✤ Big visible displays ✤ Keep them easy to update ✤ Keep them big ✤ Use them or lose them ✤ For you and other interested parties

Page 12: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

The Kanban Boarddifferent colour could indicate different types of work (classes of services), could help to decide how to prioritise

different stages of your workflow shown as columns

the actual work item. add just enough information required to understand the status of the work item

swim lanes can be used to split up the board to handle different types of work on the same board. as example here is a swim lane to indicate expedite, urgent work items

Page 13: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

The Kanban Board

✤ things to know when working as a team ✴ who is working on what? ✴ are we focused on highest priority items? ✴ are there any blocked items remaining

unresolved? ✴ are there place where queues are created

due to bottlenecks?

Page 14: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

The Kanban Board

✤ Use a big board to radiate information about your work

✤ Physical or electronic board can serve different purposes. try to make the most out of them

✤ Use daily standup meetings in front of the board to collaborate and learn together

Page 15: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

Workflow Mapping✤ Let the board reflect your ACTUAL workflow

✤ Learn by using examples

✤ Do not think too much. be prepared for changes

use abstract names for stages to fit your different

types of work not all types of work go through all the stages.. and

that is ok! (e.g bugs!)

Page 16: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

Queues

✤ Examples of Queues ✴ Todo: fist column ✴ Ready for Development: things that have been

analysed and are ready to be picked by developers ✴ Development Done: items that have been developed

and now are ready for testing ✴ To Test: stuff that is ready to be tested

queues, can help you manage handoffs, get more even flow of work, give visual signals

when work can start!

Page 17: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

Queues

which criteria need to be met in order for me to move a work item from one

column to another?

Entry and Exit Criteria

keep in mind that criteria and policies are incrementally changing and improved! review them at retro, RCAs, always ask: did we

follow the criteria?

Page 18: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

✤ Work Items

Page 19: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

overview

show a blocker

show progress on a work item

gather data for check in and check out!

mark an important deadline that you

cannot miss!

reference to an electronic tracking

system

estimated size of the work item

who is working on that

work item description

RED = defect indicate the type of work

Page 20: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

Types of Work

✤ Different colours for different types of work

✤ Helps prioritization

✤ Avoid yellow sea

✤ Use colours for a reason

Page 21: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

✤ Work In Process

Page 22: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

What is Work in Process

✤ All the work that you have going on right now.

✤ Work that you actually working on, work that is waiting to be verified or deployed, and also work not started yet.

✤ It is all the work that you need to do to deliver value to your customers

it does not mean to do less work, it means do less work at

the same time. limiting WIP helps you complete more work in total more

quickly

Page 23: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

Little’s Law

time through the process for each item

number of items you work on at the same time

average time it takes to complete each item

✤ Little says that the more things you have going on at the same time, the longer each thing will take

example 1 example II example III

Page 24: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

Effects of too much WIP✤ Context switching (keep your own WIP minimum!, finish

one prior starting another)

✤ Delay causes extra work due to long feedback loops (think of a bug introduced in the past and you learn about it quite late!)

✤ Increased RISK (high WIPs -> increased lead times -> market loss?, obsolete features? e.t.c

✤ More overhead (need for coordination, reporting, tracking, planning e.t.c)

✤ Lower Quality due to long lead times, prolonged feedback loops

✤ Decreased Motivation

Page 25: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

✤ Limiting Work in Process

Page 26: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

Searching for WIP limitswhat is the right

WIP for your and your time right now?

well, depends! how much pressure there is to improve your

organization? which is the number of people in your team/org and which is their

availability? which is the same and size of your work items?

..

✤ Lower is better than higher

✤ People idle or work idle

✤ No limits it is not the answer

Page 27: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

Lower is Better than Higher

✤ Lower WIP -> Better lead times -> Faster feedback -> Force you see and remove impediments -> Improve the flow of work items

✤ Too low WIP -> will surface too many problems -> you might end up resolving problems more than delivering value

Page 28: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

No Limits it’s not an Answer

removing your WIP limits will remove your willing to improve. without WIP limits nothing triggers us to get

better!

unused boards, no flow

Page 29: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

Principles for WIP limits

✤ Stop Starting, Start Finishing

✤ One is not the answer

the more you finish the more you finish,

John Seddon

Page 30: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

Limiting WIP per column

✤ Start from the bottleneck ✴ A bottleneck is a step in your

workflow that slows your flow down ✴ Limit the step feeding the bottleneck

to keep it from being flooded ✴ Drive the team to resolve the

bottleneck

increase the throughput from the upstream, will create

queue!

increase the throughput from the downstream, useless, since

there will be no work!

but what about developers? what they should work on?

Page 31: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

Limiting WIP per column

✤ Pick a column that will help you improve ✴ example ✴ pick the development column ✴ add a limit

1. 1.5 the number of developers 2. double your current items and reduce

them 20%-30% periodically 3. just pick a number!..(avoid paralysis by

analysis) ✴ collaborate to finish fewer items faster

Page 32: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

Limiting WIP per column

Imagine John, the guy that build an app and he is the one that every decision related to this app should go through him! ✴ What will happen if John is on vacations? ✴ Are there any work items that do not require John

involvement? ✴ Do you think that autonomy and mastery might increase if

more people of the team could get into this app? ✴ If we free up some time from John wouldn’t be great for him

to work on more complex stuff that might be the only one to know?

Page 33: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

✤ Managing Flow

Page 34: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

FLOW✤ One-Piece continuous flow means

✴ no waiting, delays, handoffs, over-production ✴ just value-adding activities

✤ Waste is something that stops work from flowing

✤ Examples of waste ✴ Partially done work, extra features, relearning,

and handoffs

✤ Do not become obsessed with removing waste, instead look at the Return of Time Invested

all we are doing is looking at the time from the

moment the customer gives us an order to the point when we collect the cash. and we

are reducing that time line by removing the non value-added wastes

Taiichi Ohno

what is stopping the work from flowing? What does the customer want from this

process? (end customer, internal customer e.g in the next

phase of productions e.t.c)

there is no greater waste than overproduction,

Taiichi Ohno

Page 35: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

Helping the Work to Flow✤ Limit Work in Process (resource efficiency versus flow efficiency, MRI or fire department)

✤ Reduce Waiting Time (measure waiting time, make work ready for next stages)

✤ Remove Blockers - Never been blocked! The Prime directive of Agile Development (swarming, demonstrate shared ownerships and responsibility, work outside of your specialization, reflect on your blockers, keep data, avoid starting new work if you are blocked)

✤ Avoid Rework (build quality-in from the start, avoid doing the wrong things right- failure demand)

✤ Use Cross Functional Teams (all skills, less handovers & dependencies

✤ Use Service Layer Agreements (define cycle time for items) and time box your work (review & adapt work)

Page 36: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

Helping the Work to Flow

✤ As David Joyce suggested: ✴ Can you help finish work that is already in process? Do that!

✴ Do you have the skills needed for that? Look for bottlenecks or other things that slow down your flow, and help resolve them

✴ Do you not have the right skills to help resolve a bottleneck or remove a blocker? Pull new work into the system, as long as you do not exceed the WIP

✴ If you still find yourself without work, find something interesting that you think will help the team, and do that

✴ Too much idle time. Start cooperating more, pair more, learn more

Page 37: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

Metrics

Throughput

Page 38: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help

✤ One day in Kanban Land

Page 39: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help
Page 40: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help
Page 41: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help
Page 42: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help
Page 43: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help
Page 44: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help
Page 45: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help
Page 46: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help
Page 47: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help
Page 48: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help
Page 49: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help
Page 50: Agile Learning Labs - Meetupfiles.meetup.com/9788192/agileMeetup-Kanban.pdfThe Kanban Board different colour could indicate different types of work (classes of services), could help