36
CERN EUROPEAN ORGANIZATION FOR NUCLEAR RESEARCH Eloy Reguero Fuentes http://cern.ch/ais April 2013 Kanban A Toyota´s manufacturing system for Software Development Wednesday, April 24, 13

Kanban - ais-grid-2013.jinr.ruais-grid-2013.jinr.ru/docs/22/5-E. Reguero.Kanban... · Kanban A Toyota´s manufacturing system for Software Development Wednesday, April 24, 13. CERN

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

CERNEUROPEAN  ORGANIZATION  FOR  NUCLEAR  RESEARCH

Eloy Reguero Fuentes http://cern.ch/aisApril 2013

Kanban A Toyota´s manufacturing system

for Software Development

Wednesday, April 24, 13

CERN

EUROPEAN  ORGANIZATION  FOR  NUCLEAR  RESEARCH

http://cern.ch/aisEloy Reguero Fuentes April 2013

Who am I?• Eloy  Reguero  Fuentes  (Spain)

• Computer  Science  Engineer  (Universidad  de  Oviedo  2007)

• SoIware  Engineer  at  CERN  (2007)

• Project  Associate  (2007-­‐2009)

• Fellowship  (2009-­‐2011)

• Staff  (2011)

• Associate’s  IT  Project  Managementby  The  George  Washington  University(2013)

Wednesday, April 24, 13

CERN

EUROPEAN  ORGANIZATION  FOR  NUCLEAR  RESEARCH

http://cern.ch/aisEloy Reguero Fuentes April 2013

• Introduc*on...

• Kanban

• One  Day  in  Kanban  land

• Agile  approaches

• Benefits

• Myths

• Bibliography

Summary

Wednesday, April 24, 13

It´s hard to optimize something that you can´t see !

Wednesday, April 24, 13

Wednesday, April 24, 13

CERN

EUROPEAN  ORGANIZATION  FOR  NUCLEAR  RESEARCH

http://cern.ch/aisEloy Reguero Fuentes April 2013

Introduction• Kanban  (看板)

• Japanese  word  which  means  literally  “Visual  Card”

• Scheduling  system  for  lean  and  Just-­‐In-­‐Time  produc[on

• Developed  by  Taiichi  Ohno  at  Toyota  in  the  late  1940s  to  improve  produc[on

• He  is  considered  to  be  the  father  of  the  Toyota  Produc[on  System  (TPS)

• Toyota  was  able  to  reduce  lead-­‐[me  and  cost  while  improving  quality

• TPS´s  6  rules

1. Do  not  send  defec[ve  products  to  the  subsequent  process.

2. The  subsequent  process  comes  to  withdraw  only  what  is  needed.

3. Produce  only  the  exact  quan[ty  that  was  withdrawn  by  the  subsequent  process.

4. Level  the  produc[on.

5. Kanban  is  a  means  of  fine  tuning.

6. Stabilize  and  ra[onalize  the  process.

Wednesday, April 24, 13

CERN

EUROPEAN  ORGANIZATION  FOR  NUCLEAR  RESEARCH

http://cern.ch/aisEloy Reguero Fuentes April 2013

Introduction II• Lean  /  Just-­‐In-­‐Time  in  Industry

• Lean  

• It´s  the  western  term  for  Toyota  Produc[on  System  

• Maximize  customer  value  while  minimizing  waste

• Elimina[ng  waste  creates  processes  than  needs  less  human  effort,  less  space,  less  capital  and  less  [me  compared  with  tradi[onal  systems

• Companies  are  able  to  respond  to  change  requests  with  high  quality,  low  cost  and  fast

• JIT

• Pull  system  of  produc[on

• An  order  provides  a  signal  for  when  the  product  should  be  manufactured

• Enables  a  company  to  produce  only  what  is  required,in  the  right  quan[ty  and  at  the  correct  [me

Wednesday, April 24, 13

CERN

EUROPEAN  ORGANIZATION  FOR  NUCLEAR  RESEARCH

http://cern.ch/aisEloy Reguero Fuentes April 2013

Introduction III

Never45%

Rarely19%

Sometimes16%

Often13%

Always7%

Half of the features we build are

never used!

Wednesday, April 24, 13

CERN

EUROPEAN  ORGANIZATION  FOR  NUCLEAR  RESEARCH

http://cern.ch/aisEloy Reguero Fuentes April 2013

Introduction IV• Kanban  in  SoGware

• Lean  approach  to  Agile  soIware  development

• Rules  in  Kanban  are  simple

• Visualize  the  workflow

• Limit  work  in  progress  (WIP)

• Measure  and  manage  cycle  [me.  Lead  [me

• Explicit  policies  (defini[on  of  Done,  WIP  limits,  etc)

• While  Scrum  focuses  on  structure  and  communica[on  and  XP  adds  engineer-­‐ing  prac[ces,  Kanban  focuses  on  visualizing  flow  and  managing  boklenecks.

(2) (4) (1) (3)

Lead time

Cycle time

Wednesday, April 24, 13

CERN

EUROPEAN  ORGANIZATION  FOR  NUCLEAR  RESEARCH

http://cern.ch/aisEloy Reguero Fuentes April 2013

Visualization

看板Visual  card

Admission Ticketplease return this ticket at

the exit

Wednesday, April 24, 13

CERN

EUROPEAN  ORGANIZATION  FOR  NUCLEAR  RESEARCH

http://cern.ch/aisEloy Reguero Fuentes April 2013

Visualization II• Cards

• Unique  Iden[fier

• Descrip[on

• Size  :  S    M    L• Kanban  boards

• Define  a  workflow

• Named  columns  and  transac[ons

• work  states

• wait  states

• Define  WIP

Create service to

retrieve students

JINR-CERN-12

Wednesday, April 24, 13

CERN

EUROPEAN  ORGANIZATION  FOR  NUCLEAR  RESEARCH

http://cern.ch/aisEloy Reguero Fuentes April 2013

Visualization III

Buffer Buffer Buffer Buffer

Wednesday, April 24, 13

CERN

EUROPEAN  ORGANIZATION  FOR  NUCLEAR  RESEARCH

http://cern.ch/aisEloy Reguero Fuentes April 2013

Visualization IVFirst Line Support

Wednesday, April 24, 13

CERN

EUROPEAN  ORGANIZATION  FOR  NUCLEAR  RESEARCH

http://cern.ch/aisEloy Reguero Fuentes April 2013

Visualization V

Wednesday, April 24, 13

CERN

EUROPEAN  ORGANIZATION  FOR  NUCLEAR  RESEARCH

http://cern.ch/aisEloy Reguero Fuentes April 2013

Work In Progress

Wednesday, April 24, 13

CERN

EUROPEAN  ORGANIZATION  FOR  NUCLEAR  RESEARCH

http://cern.ch/aisEloy Reguero Fuentes April 2013

Work In Progress• WIP

• Capacity  of  workflow  state

• Indirectly  we  are  se7ng  a  limita:on  in  the  flow

• Visualize  WIP  in  Kanban  board

• The  purpose  of  WIP  limits  is  to  avoid  too  much  mul:tasking  and  overloading  a  downstream  process

• WIP  acts  as  an  alert  to  highlight  problems  before  it  gets  out  of  control

• Some  cases

• Too  low  WIP                  Idle  people                    bad  produc:vity

• Too  high  WIP                Idle  tasks                  bad  lead  :me  

• If  you  no:ce  that  many  items  are  s:ll  for  a  long  :me  without  being  worked  on,  that  is  an  indica:on  that  the  Kanban  limit  might  be  too  high

Experiment! Or, as the Scrumologists say....Inspect & Adapt!

Wednesday, April 24, 13

CERN

EUROPEAN  ORGANIZATION  FOR  NUCLEAR  RESEARCH

http://cern.ch/aisEloy Reguero Fuentes April 2013

Cumulative Flow Diagram

• Produc*on  Flow

• Movement  of  products  within  the  shop  during  each  stage  of  the  parts  manufacturing  process.

Wednesday, April 24, 13

CERN

EUROPEAN  ORGANIZATION  FOR  NUCLEAR  RESEARCH

http://cern.ch/aisEloy Reguero Fuentes April 2013

Cumulative Flow Diagram II

Wednesday, April 24, 13

CERN

EUROPEAN  ORGANIZATION  FOR  NUCLEAR  RESEARCH

http://cern.ch/aisEloy Reguero Fuentes April 2013

Cumulative Flow Diagram III

Wednesday, April 24, 13

CERN

EUROPEAN  ORGANIZATION  FOR  NUCLEAR  RESEARCH

http://cern.ch/aisEloy Reguero Fuentes April 2013

Agile Approaches

Kanban

XP

Scrum

Wednesday, April 24, 13

CERN

EUROPEAN  ORGANIZATION  FOR  NUCLEAR  RESEARCH

http://cern.ch/aisEloy Reguero Fuentes April 2013

Agile Approaches

0"

20"

40"

60"

80"

100"

120"

140"

RUP" XP" Scrum" Kanban" Do"Whatever"

More prescriptive More adaptive

Wednesday, April 24, 13

CERN

EUROPEAN  ORGANIZATION  FOR  NUCLEAR  RESEARCH

http://cern.ch/aisEloy Reguero Fuentes April 2013

XP in 2 minutes• Extreme  Programming  (XP)  it´s  based  on

• simplicity

• communica[on

• feedback

• courage

• respect

• Internal  XP  prac[ces

• Con[nuous  integra[on

• Pair  programming

• Test-­‐driven  development

• Collec[ve  code  ownership

• Incremental  design  improvement

Wednesday, April 24, 13

CERN

EUROPEAN  ORGANIZATION  FOR  NUCLEAR  RESEARCH

http://cern.ch/aisEloy Reguero Fuentes April 2013

Scrum in 2 minutes• Scrum  in  a  nutshell

• Split  your  organiza[on  into  small,  cross-­‐func[onal,  self-­‐organizing  teams:  Scrum  teams

• Split  your  work  into  a  list  of  small,  concrete  deliverables.

• Sort  the  list  by  priority

• Es[mate  the  effort  of  each  item

• Split  [me  into  shot-­‐fixed  itera[ons  (1-­‐4  weeks).  Sprints

• Op[mize  the  release  plan  and  update  priori[es  in  collabora[on  with  customers  aIer  each  itera[on

• Op[mize  the  process  by  having  a  retrospec[ve  aIer  each  itera[on

Instead of large group spending a long time building a big thing, we have a small team spending a short time building

a small thing. But integrating regularly to see the whole

Wednesday, April 24, 13

CERN

EUROPEAN  ORGANIZATION  FOR  NUCLEAR  RESEARCH

http://cern.ch/aisEloy Reguero Fuentes April 2013

Kanban in 2 minutes• Kanban  in  a  nutshell

• Visualize  the  flow

• Split  the  work  into  pieces,  write  each  piece  item  on  a  card  and  put  on  the  wall

• Use  named  columns  to  illustrate  where  each  item  is  in  the  workflow

• Limit  WIP

• assign  explicit  limits  to  how  many  items  may  be  in  progress  at  each  workflow  state

• Measure  the  lead  [me.  Average  [me  to  complete  one  item  “cycle  [me”

• lead  [me  as  small  and  predictable  as  possible

Wednesday, April 24, 13

CERN

EUROPEAN  ORGANIZATION  FOR  NUCLEAR  RESEARCH

http://cern.ch/aisEloy Reguero Fuentes April 2013

And the winner is...?

Scrum XP Kanban

Wednesday, April 24, 13

CERN

EUROPEAN  ORGANIZATION  FOR  NUCLEAR  RESEARCH

http://cern.ch/aisEloy Reguero Fuentes April 2013

And the winner is...?

Scrum XP Kanban

Wednesday, April 24, 13

CERN

EUROPEAN  ORGANIZATION  FOR  NUCLEAR  RESEARCH

http://cern.ch/aisEloy Reguero Fuentes April 2013

And the winner is...?

Scrum XP Kanban

Wednesday, April 24, 13

CERN

EUROPEAN  ORGANIZATION  FOR  NUCLEAR  RESEARCH

http://cern.ch/aisEloy Reguero Fuentes April 2013

And the winner is...?• Mix  and  match  the  tools  as  you  need

• Scrum  -­‐  XP

• Kanban  -­‐  Scrum

• Daily  mee[ngs

• Scrum  -­‐  Kanban

• Limit  the  queue  size

• Scrum  -­‐  RUP

• Write  backlog  as  Use  Cases  

Wednesday, April 24, 13

CERN

EUROPEAN  ORGANIZATION  FOR  NUCLEAR  RESEARCH

http://cern.ch/aisEloy Reguero Fuentes April 2013

Scrum vs Kanban• WIP:

• Kanban  limits  WIP  per  Workflow  State

• Scrum  limits  WIP  per  itera[on  (sprint)

Scrum Board Kanban Board

Wednesday, April 24, 13

CERN

EUROPEAN  ORGANIZATION  FOR  NUCLEAR  RESEARCH

http://cern.ch/aisEloy Reguero Fuentes April 2013

Scrum vs Kanban II• Scrum  resists  change  within  an  itera*on

• Typical  Answer  for  a  change  request:  “No,  sorry,  we’ve  commiked  to  do  A,B,C&E,  but  feel  free  to  add  it  to  the  backlog”

• What  would  happen  in  Kanban?• Check  limits...

To  Do  is  blocked.  You  can  add  E  if  you  liberates  a  task  from  To  Do  list  of  you  wait...  

Response  Time:

In  Scrum  is  half  the  sprint  length  in  average.

In  Kanban  is  the  :me  the  capacity  becomes  available.

Wednesday, April 24, 13

CERN

EUROPEAN  ORGANIZATION  FOR  NUCLEAR  RESEARCH

http://cern.ch/aisEloy Reguero Fuentes April 2013

Scrum vs Kanban III

Wednesday, April 24, 13

CERN

EUROPEAN  ORGANIZATION  FOR  NUCLEAR  RESEARCH

http://cern.ch/aisEloy Reguero Fuentes April 2013

Scrum vs Kanban III

Wednesday, April 24, 13

CERN

EUROPEAN  ORGANIZATION  FOR  NUCLEAR  RESEARCH

http://cern.ch/aisEloy Reguero Fuentes April 2013

Benefits• Boklenecks  become  clearly  visible  in  real-­‐[me.  

• This  leads  people  to  collaborate  to  op[mize  the  whole  value  chain  rather  than  just  their  part.

• Provides  a  more  gradual  evolu[on  path  from  waterfall  to  agile  soIware  development.

• Provides  a  way  to  do  agile  soIware  development  without  necessarily  having  to  use  [me-­‐boxed  fixed-­‐commitment  itera[ons  such  as  Scrum  sprints.  

• Useful  for  situa[ons  where  sprints  don’t  make  much  sense,  such  as  opera[ons  and  support  teams  with  a  high  rate  of  uncertainty  and  variability.

• Tends  to  naturally  spread  throughout  the  organiza[on  to  other  departments  such  as  HR  and  sales.

Wednesday, April 24, 13

CERN

EUROPEAN  ORGANIZATION  FOR  NUCLEAR  RESEARCH

http://cern.ch/aisEloy Reguero Fuentes April 2013

Common Myths• Myth:  With  Kanban  you  don’t  use  itera*ons

• Fact:  With  Kanban  itera[ons  are  op[onal.  Do  it  only  if  you  have  a  need  for  it  in  your  context.

• Myth:  With  Kanban  you  don’t  es*mate

• Fact:  With  Kanban  es[ma[on  is  op[onal.  Do  it  only  if  you  have  a  need  for  it  in  your  context.

• Myth:  Kanban  is  beQer  than  Scrum/XP/RUP/whatever

• Fact:  Kanban  is  just  a  process  tool,  and  there  is  no  such  thing  as  a  universally  good  or  bad  tool.  It  all  depends  on  your  context.

• Myth:  Kanban  is  a  drop-­‐in  replacement  to  Scrum/XP/RUP/whatever

• Fact:  Kanban  is  just  about  managing  workflow.  It  hardly  replaces  anything.  What  it  does  do,  however,  is  drive  change.  In  Kanban  you  start  with  whatever  process  you  have,  visualize  it,  introduce  WIP  limits,  and  then  evolve  from  there.

Wednesday, April 24, 13

CERN

EUROPEAN  ORGANIZATION  FOR  NUCLEAR  RESEARCH

http://cern.ch/aisEloy Reguero Fuentes April 2013

To take-away• Know  your  goal

• Never  blame  the  tool

• Don´t  limit  yourself  to  one  tool

• Experiment  &  Enjoy  the  ride

Wednesday, April 24, 13

CERN

EUROPEAN  ORGANIZATION  FOR  NUCLEAR  RESEARCH

http://cern.ch/aisEloy Reguero Fuentes April 2013

Bibliography• “Kanban:  Successful  Evolu*onary  Change  for  Your  Technology  

Business”

• David  J.  Anderson

• Henrik  Kniberg

• hkp://blog.crisp.se/author/henrikkniberg

• Mar*n  Fowler

• hkp://mar[nfowler.com/agile.html

• InfoQ

• hkp://www.infoq.com/agile_techniques

Wednesday, April 24, 13