evolving a process for product development - from "x" to "x-ban" #lkuk14

23
X-Ban the process! (How a Product Team is improving value delivery rate with Kanban) Dr Andy Carmichael Head of Agile Services, Clearvision-CM.com @andycarmich - #lkuk14

Upload: andy-carmichael

Post on 13-Jul-2015

499 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: Evolving a process for product development - from "X" to "X-ban" #lkuk14

X-Ban the process!

(How a Product Team is improving value delivery rate with Kanban)

Dr Andy Carmichael

Head of Agile Services, Clearvision-CM.com

@andycarmich - #lkuk14

Page 2: Evolving a process for product development - from "X" to "X-ban" #lkuk14

Why is this relevant to me?

• Job title: Head of Agile Services, Clearvision (since May 2013)

• Role: Development Manager; Product Owner for Spectrum ALM*

• Nominally a Scrum development process when I arrived

• Spectrum 1.0 released January 2014

• Spectrum 1.2 released Autumn 2014

We needed a process that would allow us to deliver the next most important product feature to quality… faster

*spectrumALM.com

Page 3: Evolving a process for product development - from "X" to "X-ban" #lkuk14

SpectrumALM.com

Page 4: Evolving a process for product development - from "X" to "X-ban" #lkuk14

Key concern over this time…

How do we improve our development processes to meet the business imperatives?

• Speed

• Agility

• Efficiency

• Responsiveness

• Forecasting

Two typical approaches to improving process

1. Pick a new one … migrate to it

2. Start here … improve (x-ban) it!

Page 5: Evolving a process for product development - from "X" to "X-ban" #lkuk14

Identify the problems

• Retrospectives and reflection

• Feedback loops

• Purpose & Focus

Page 6: Evolving a process for product development - from "X" to "X-ban" #lkuk14

Improvement

• Improvements suffer the J-Curve syndrome

• Small step improvements (Kaizen) may alleviate deep dips in performance

• Radical change might also be needed (Kaikaku) but may not “stick”

• Kanban is an IMPROVEMENTmethod based on the Lean flow paradigm

Page 7: Evolving a process for product development - from "X" to "X-ban" #lkuk14

E.G.

– Scrumban

– Xanpan (XP-ban)

– Princeban?

– DSDMban?

What does ‘X’ban mean

• Is it a “pick and mix”?

• Is it a specific set of practices from both sources?

• Is it the same in every implementation?

Page 8: Evolving a process for product development - from "X" to "X-ban" #lkuk14

What is Scrum?

Source:

http://www.controlchaos.com

Max

1 month

Potentially shippable

increment every Sprint

Page 9: Evolving a process for product development - from "X" to "X-ban" #lkuk14

• Rules (Scrum Guide)

• Roles(Scrum Master, Product Owner, Dev Team)

• Rites(Planning, Stand-up, Retro, Review, Sprint)

• Artifacts – The evolving “Increment”

– The Backlog

• The rules are “immutable”

• If it’s not all Scrum,

it’s not Scrum (Scrum-but)*

• Not specific about technical

practice but …

• Requires “potentially shippable

increment” every Sprint (< 1

month)

Scrum: an “Empirical Process Framework”

* “There are no flavours of Scrum” Jem D’jelal

Page 10: Evolving a process for product development - from "X" to "X-ban" #lkuk14

What is Kanban?

Page 11: Evolving a process for product development - from "X" to "X-ban" #lkuk14

A framework for process change (a metaprocess?)

1. See work as FLOW (Kanban Lens)

2. Start from here (roles, responsibilities, process)

3. Make work and policies visible (e.g. board, WIP limits)

Make validated changes (e.g. change WIP limits or DoD)

What is the Kanban Method*?

*cf. a kanban; a kanban system; the Kanban Method

Viewpoint

Principles

Practices

Page 12: Evolving a process for product development - from "X" to "X-ban" #lkuk14

• Where did we start?

• Visibility of work (and policies)

• Awareness of interruptions

Make work and policies visible

Page 13: Evolving a process for product development - from "X" to "X-ban" #lkuk14

• Portmanteau word coined by Corey Ladas

(Scrumban, Modus Cooperandi Lean Series, 2008)

• The evolution of a process that would take place

if a team was using Scrum and adopted Kanban

Also used in the community to mean a method made from

aspects of Scrum and Kanban (less usefully!)

So what is Scrumban?

Page 14: Evolving a process for product development - from "X" to "X-ban" #lkuk14

Some of Ladas’s expectations of what could

happen to a Scrum process…

• Specialisation in teams

• efficiency without loss of focus in continuous delivery of features

• balance between self-organisation and workflow specialisation

• Relaxation / disappearance of the time-boxed iteration (Sprint)

• varying cadences for different functions according to need

• “batch and queue buys you nothing”

• Scope of the workflow expands

• not just development/test but “concept to cash”

• Limiting WIP with small buffers

• towards the ideal of one piece flow

• defined workflows, flexible hand-over – the “bucket brigade”

Page 15: Evolving a process for product development - from "X" to "X-ban" #lkuk14

Single piece flow… variable handover

Page 16: Evolving a process for product development - from "X" to "X-ban" #lkuk14

A recent tweet from @corey_ladas

Page 17: Evolving a process for product development - from "X" to "X-ban" #lkuk14

Understanding flow… and lack of it

Page 18: Evolving a process for product development - from "X" to "X-ban" #lkuk14

How has our process evolved?

• From “user stories” to “epics and stories” (above the epic?)

• Limits on WIP – less, more, less

• Staff liquidity and roles

• Emphasis on cadence

• Reviews with stakeholders (monthly – queue replenishment)

• Retrospectives monthly (moving to the other fortnight!)

• Deliveries – moving from batches to “when ready” as CI/CD

improves

• Forecasting still elusive… why? does it matter??

Page 19: Evolving a process for product development - from "X" to "X-ban" #lkuk14

From “Scrum-BUT” to quite Scrum-like?

• Cadence –

• renewed emphasis on the monthly cycle (was 4 weekly)

• Roles –

• Product Owner role clearer,

• still no Scrum Master

• Staff Liquidity emphasis

• rather than cross-functional team members

• Potentially shippable increment

• on the completion of any Epic

• moving to Octopus builds

Page 20: Evolving a process for product development - from "X" to "X-ban" #lkuk14

Change did not come quickly!

• Reflection

• Consensus

• Shared understanding

• More courage required (just do it... undo it if necessary)

• Change based on evidence sticks better

• Saying is not communicating

Page 21: Evolving a process for product development - from "X" to "X-ban" #lkuk14

How can you x-ban your process?

Page 22: Evolving a process for product development - from "X" to "X-ban" #lkuk14

Kanban: Twitter Version

Essence of Kanban

see flow

start here

with visible work & policies

validate improvements

Also see: "How to Adopt Kanban" @andycarmich

Page 23: Evolving a process for product development - from "X" to "X-ban" #lkuk14

X-Ban the process!

(How a Product Team is improving

value delivery rate with Kanban)

Dr Andy CarmichaelHead of Agile Services, Clearvision-cm.com

@andycarmich - #lkuk14