taking kanban to the masses - agile cambridge
DESCRIPTION
My experiences when coaching teams through adoption of agile techniques, specifically the rational and benefits of taking a kanban approach to managing work.TRANSCRIPT
©LeanAgileMachineCreative Commons License
Taking kanban to the masses
John StevensonLean Agile Machine
©LeanAgileMachineCreative Commons License
Who is John Stevenson
● Runs Limited WIP Society in London● Coach ● Atlassian ambassador in UK● Community geek
London Java, Graduate Devs, London Scala, London Clojurians, etc.
● Dabbles with Clojure
©LeanAgileMachineCreative Commons License
Motivation
©LeanAgileMachineCreative Commons License
My inspiration / motivation
● The Journey of Po to become the Dragon warrior
Asperation Passion Needs a goal and motivation
©LeanAgileMachineCreative Commons License
A long journey of discovery
©LeanAgileMachineCreative Commons License
The right motivation
©LeanAgileMachineCreative Commons License
Po reaches his goal
©LeanAgileMachineCreative Commons License
My Journey
● Started with Personal Kanban● Applied kanban to projects● Learn about a lot of barriers ● Coached receptive teams and
individuals● Sharing experiences with
conferences and Limited WIP Society talks
©LeanAgileMachineCreative Commons License
Typical approach to kanban
● Workshop format discuss the purpose of kanban give people a situation it interact with - MAFIA roleplay games – negative and positive outcomes
● Encourage personal kanban helps with adoption and practice
©LeanAgileMachineCreative Commons License
Why adopt kanban
©LeanAgileMachineCreative Commons License
Lessons learnt in corporate kanban
A case study in pain and dissapointment
©LeanAgileMachineCreative Commons License
Everything is fine
©LeanAgileMachineCreative Commons License
Economic downturn
©LeanAgileMachineCreative Commons License
Things not what they used to be
©LeanAgileMachineCreative Commons License
Competition gaining / overtaking
©LeanAgileMachineCreative Commons License
Shareholders arent happy
©LeanAgileMachineCreative Commons License
Customers a little unhappy
©LeanAgileMachineCreative Commons License
Frustrated staff
©LeanAgileMachineCreative Commons License
”This is not a blame cluture”
©LeanAgileMachineCreative Commons License
Running out of ideas...
©LeanAgileMachineCreative Commons License
Loosership over leadership
©LeanAgileMachineCreative Commons License
CxO decrees
You must work harder – make your targetsYou must work harder – make your targets
©LeanAgileMachineCreative Commons License
Just fix it
● Take out the competition
● Outsourcing / insourcing
● Hire more consultants
● Efficiency improvements
©LeanAgileMachineCreative Commons License
Competition now overtaking
©LeanAgileMachineCreative Commons License
Shareholders ”sending the boys round” for a friendly
visit
©LeanAgileMachineCreative Commons License
Really angry customers
©LeanAgileMachineCreative Commons License
Staff even more frustrated
©LeanAgileMachineCreative Commons License
Rest of Org in a bad way
● Confused, demotivated, undervalued● In-fighting● Barriers between
people and teams● High staff turn around● High number of consultants getting training● Outsourcing / insourcing
©LeanAgileMachineCreative Commons License
Limited understanding of Value
● Table stakes – not just for dinner
● Differentiators – we dont need no stinking differentiators
● Spoilers – no time to watch TV● R&D – if the budget allows
● Where is the vision ??
©LeanAgileMachineCreative Commons License
Sink to survive...
©LeanAgileMachineCreative Commons License
So what's going on?
©LeanAgileMachineCreative Commons License
Disfunctional Org
● Finds it hard to look at itself● Too busy to step back and understand root
causes● Too focused on the bottom line and budgets● More ”command & control” put in place
©LeanAgileMachineCreative Commons License
Usual Suspects
● Ego driven devs● Empire builders
● ”The Management”● Budget driven PM's
©LeanAgileMachineCreative Commons License
Nicky ”the nose” Tagliano
● Overbearing & Combative IT Director Tells staff what to do, but not why Doesnt communicate well
Relies on his own experience more than others
”I knows whats best for you”
©LeanAgileMachineCreative Commons License
Fabiano Skankypants
● Ego driven developer Keeps everything to
himself Always ”the hero” Always in charge Always the loudest Always has to get his way
● Holding everyone to ramsom
©LeanAgileMachineCreative Commons License
Allycat Fabiano● Confused and overworked
DevOps Deploys lots of patches Deals with poor
deployment docs Re-writes lots of
deployment scripts Lots of work from all dev
teams Multiple high priorities No vision on actual value
of their work
©LeanAgileMachineCreative Commons License
MAFIA (toxic) Culture
©LeanAgileMachineCreative Commons License
In seach of Trust...
©LeanAgileMachineCreative Commons License
Kanban vs The MafiaKanban vs The Mafia
Give people a situation to explore
©LeanAgileMachineCreative Commons License
©LeanAgileMachineCreative Commons License
MAFIA ”organisation”
©LeanAgileMachineCreative Commons License
How would you make a change ?
● Big bang process improvement ? Prince2 / DSDM – takes time to adopt Scrum – only local improvements without buy-in XP – technical improvemets tiny compared to org
disfunction● More shouting ?● Achievement Culture ?
What are we trying to achive and how best should we do that?
©LeanAgileMachineCreative Commons License
Is there a better way to change ?
©LeanAgileMachineCreative Commons License
Introducing kanban
©LeanAgileMachineCreative Commons License
The first rule of kanban...
©LeanAgileMachineCreative Commons License
What is your goal?
©LeanAgileMachineCreative Commons License
Set valuable goals
©LeanAgileMachineCreative Commons License
The bare neccessities...
©LeanAgileMachineCreative Commons License
Understanding your goals
Table stakes / foundations
SpoilersDifferentiators
Accelerators
©LeanAgileMachineCreative Commons License
Next three goals
©LeanAgileMachineCreative Commons License
G.R.O.W your goals● Goal
Visualise and emote..● Reality
Honest view of situation...● Options
Scenarios to achieve the goal● Way forward
Take and option and evaluate
©LeanAgileMachineCreative Commons License
What outcome do you want?● You meet up with your friends a year from now
What do you want to tell them you have been doing?
©LeanAgileMachineCreative Commons License
Change seems scary...
”The only thing to fear it fear itself”
©LeanAgileMachineCreative Commons License
Explaining Kanban
Kanban board - Wall of Facts
©LeanAgileMachineCreative Commons License
Start with a simple approach
DoneDoing Planning
Current process is not always know, or often not understood or valued
- Start simple to get started, review and evolve - Standups & Retrospectives should include ”the process”
©LeanAgileMachineCreative Commons License
Or Map the existing process
Planning Analysis Development QA Release
If you have more buy-in, map your existing process – Value stream mapping
©LeanAgileMachineCreative Commons License
Let the board run...Planning Analysis Development QA Release
Let the problems reveal themselved, if not already apparent
©LeanAgileMachineCreative Commons License
Get People Interacting
● We learn best by doing● Use Kanban boards to run the workshop● Get people building a board
Introduce different aspects along the way ● Using roleplay and games to introduce further
concepts Limited WIP, Fast Feedback, consistent flow of
work
©LeanAgileMachineCreative Commons License
Opportunities to change
● Visualising work show opportunities
● Managing work load give you time to change
©LeanAgileMachineCreative Commons License
Let kanban help you learn
● Work on only on one thing at once● Everyone responsible for any priority changes
Even your manager● If forced to switch, record and reset task to
begining Review ”task switching” overload
©LeanAgileMachineCreative Commons License
Add WIP Limits
Planning Analysis Development QA Release (1)
● WIP limits show the constraints in the process Start to adjust work in other areas...
©LeanAgileMachineCreative Commons License
Show work ready
Planning Analysis Dev Release (1)Ready toRelease (2)
● Ready lanes give you options on what to work on next
©LeanAgileMachineCreative Commons License
Balance work to resources
Ready forAnalysis (4) Analysis (1)
Ready forDev(4) Release (1)
Ready toRelease (2)
● WIP limited to resources of the team Promotes faster feedback Helps identify areas that need more resources / change in practices
Dev (4)
©LeanAgileMachineCreative Commons License
Pull system
©LeanAgileMachineCreative Commons License
Be as creative as needed
©LeanAgileMachineCreative Commons License
Dont forget the card design
©LeanAgileMachineCreative Commons License
Beware being overworked
● Huge backlog is demoralising
● Everything is a priority
● Never seem to get anywhere
● Never sure what value you are delivering
©LeanAgileMachineCreative Commons License
Experditing
● Visualisation for a high priority task Big red sticker Experditing lane Record other tasks being blocked
● Review why you get high priority task Consider it a constraint / bottleneck
©LeanAgileMachineCreative Commons License
Experditing lane
©LeanAgileMachineCreative Commons License
Ask about Vision
● Step up and ask the difficult questions Five whys You wont be thanked for it because often no
answer is known Need to hightlight this as an issue
● Encourage the business to communicate its intent with you
Help them help you become more effective
©LeanAgileMachineCreative Commons License
Lessons learnt from Lean & System thinking
©LeanAgileMachineCreative Commons License
Explaining flow
● Flow gives you fast feedback Limited work on progress means low time between
roles – reduced overall cycle time
● Establish a regular cadence – consistent pace If you are cycling from London to Brigton, you dont set
off at top speed
● Small sized tasks help attain flow● WIP limits create a pull system, driving flow
Work is done at the speed of the slowest process eg. Boy scouts in ”The Goal”
©LeanAgileMachineCreative Commons License
Data dashboard effect
● Manager can instantly see what you are working on
● Manager can evaluate priorities easily Or go back and ask for clarification with business
● Gives data on issues Recording task swapping, time to work on tasks Data to review at retrospective on current
approach
©LeanAgileMachineCreative Commons License
Kanban effect
● Fast feedback between people Devs get fast feeback if problems releasing BA's improve requirements from dev feedback Business feeds back sooner to steer development
● Adapt to changing priorities easier Impact of changes easier to see
● Work effort becomes predictable and trust increases● Effort is converted into working software sooner
See results sooner – identify work with business benefit
©LeanAgileMachineCreative Commons License
Subtle ”Theory of Constraints”
● What is stopping you achieve your goals ? Identify all the current challenges
● Find how to work effectively With respect to the biggest challenge
● Incrementally improve around biggest challenge
● Review the challenges
©LeanAgileMachineCreative Commons License
Drop the Backlog
● The backlog is a omnipresent sign of overload
Useful for pushing back to the management
Bad for team moral Hide it away (eg. JIRA)
● When team are in tune with value, tasks flow more naturally – opportunities are not drowned out
©LeanAgileMachineCreative Commons License
Value stream mapping
● Weird name, important concept● The (often wide) path to getting things done● The activities that help get things done
effectively
©LeanAgileMachineCreative Commons License
Cost of Delay
● Value hard to assess● What if we dont do it● What if we dont
deliver when you want
● What else could you be doing ?
©LeanAgileMachineCreative Commons License
Predictability / Cadence
● Work towards smaller task
● Feedback from board helps you understand your capacity
● A 400Km cycle ride needs a good cadence to survive
©LeanAgileMachineCreative Commons License
Change at the speed of acceptance
● Effective change cannot be pushed
● kanban estoles pull, change should be pulled
● Odd that some many agile projects start and end with a big bang
©LeanAgileMachineCreative Commons License
Lean Startup
● Business canvas model● Real options● Last responsible moment● Least responsible change
©LeanAgileMachineCreative Commons License
Lessons from Service Desk
● Variation of personal kanban Sticky notes at the side of the keyboard One priority at once Need business reason to change priorities
Record reason and number of times you had to revisit the task
©LeanAgileMachineCreative Commons License
DevOps overload
● Lots of last minute patches
● Deployment like buses, nothing for a few days then three come at once for the same night
● DevOps have no time to script deployments
● Have to deal with long, boring deployment documents
● Repeatedly swiched from infrastructure work, vastly increasing time taken.
©LeanAgileMachineCreative Commons License
DevOps Goal keeper
● Team rotates people around role ● Goalkeeper fields all issues● Rest of team allowed to
focus on a (bigger) task● Use visual indicator to show
who is the Goalie
©LeanAgileMachineCreative Commons License
Summary of Kanban
● Visualse work● Manage WIP● Engage with business
Shared ownership● Encourage realistic
priorities
● Helps you stay sane
● Show you are productive
● Deal with micro-management
Final form of feed back
● Find a better company
● Start your own thing
©LeanAgileMachineCreative Commons License
Thank you
©LeanAgileMachineCreative Commons License
Feedback & Refs
● Website:
john.jr0cket.co.uk● Blog:
blog.jr0cket.co.uk● Email: