kruchten 130320 post agile handout - philippe kruchten · title: kruchten 130320 post agile...

33
"agile"? March 2013 Ph. Kruchten 1 What the heck is this thing they call “agile”? Philippe Kruchten UBC, March 20, 2013 Philippe Kruchten, Ph.D., P.Eng., CSDP Professor of So)ware Engineering NSERC Chair in Design Engineering Department of Electrical and Computer Engineering University of BriJsh Columbia Vancouver, BC Canada [email protected] Founder and president Kruchten Engineering Services Ltd Vancouver, BC Canada [email protected] 3 Copyright © 200513 by Philippe Kruchten

Upload: vuhuong

Post on 13-Nov-2018

221 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Kruchten 130320 post agile handout - Philippe Kruchten · Title: Kruchten 130320 post agile handout.pptx Author: Philippe Kruchten Created Date: 3/22/2013 5:18:05 PM

"agile"?   March  2013  

Ph.  Kruchten   1  

What  the  heck  is  this  thing    they  call  “agile”?  

Philippe  Kruchten    

UBC,  March  20,  2013  

Philippe  Kruchten,  Ph.D.,  P.Eng.,  CSDP  

Professor  of  So)ware  Engineering  NSERC  Chair  in  Design  Engineering  Department  of  Electrical  and  Computer  Engineering  

University  of  BriJsh  Columbia  Vancouver,  BC  Canada  [email protected]          

Founder  and  president  Kruchten  Engineering  Services  Ltd  Vancouver,  BC  Canada    [email protected]    

3 Copyright  ©  2005-­‐13  by  Philippe  Kruchten  

Page 2: Kruchten 130320 post agile handout - Philippe Kruchten · Title: Kruchten 130320 post agile handout.pptx Author: Philippe Kruchten Created Date: 3/22/2013 5:18:05 PM

"agile"?   March  2013  

Ph.  Kruchten   2  

SoRware  development  1990  

Copyright  ©  2005-­‐13  by  Philippe  Kruchten   4

Agile  Reviews  

Agile  Architecture  

Agile  Deployment  

Agile  MarkeJng  

Agile  Programming  Agile  Lifecycle  

Agile  Process  

Agile  TesJng  

Agile  Design  

Agile  Analysis  

Agile  Database  

Agile  Modeling  

Feb.  2013  

SoRware  development  2013  

Copyright  ©  2005-­‐13  by  Philippe  Kruchten   5

Agile  Reviews  

Agile  Architecture  

Agile  Deployment  

Agile  MarkeJng  

Agile  Programming  Agile  Lifecycle  

Agile  Process  

Agile  TesJng  

Agile  Design  

Agile  Analysis  

Agile  Database  

Agile  Modeling  

Feb.  2013  

Page 3: Kruchten 130320 post agile handout - Philippe Kruchten · Title: Kruchten 130320 post agile handout.pptx Author: Philippe Kruchten Created Date: 3/22/2013 5:18:05 PM

"agile"?   March  2013  

Ph.  Kruchten   3  

Agile  has  won  the  war  

Feb.  2013   Copyright  ©  2005-­‐13  by  Philippe  Kruchten   7  

Agile  has  won  the  war  

•  Really?  

•  What  war?  •  What  has  changed?  •  And  what  is  agile  or  Agile,  anyway?  

Feb.  2013   Copyright  ©  2005-­‐13  by  Philippe  Kruchten   9  

Page 4: Kruchten 130320 post agile handout - Philippe Kruchten · Title: Kruchten 130320 post agile handout.pptx Author: Philippe Kruchten Created Date: 3/22/2013 5:18:05 PM

"agile"?   March  2013  

Ph.  Kruchten   4  

From  Trust  to  Distrust  

•  A  short  history  of  soRware  development  

Feb.  2013   Copyright  ©  2005-­‐13  by  Philippe  Kruchten   10  

Four  stages  of  power  in  IT  projects  

•  Dark  age  (1960  –  late  70s)  •  Tokenism  (1970s  –  •  Payback  (1990s  –    •  Partnership  (2000  –  

Feb.  2013   Copyright  ©  2005-­‐13  by  Philippe  Kruchten   11

Source:  Rob  Thomseb  2002,  2007  

Page 5: Kruchten 130320 post agile handout - Philippe Kruchten · Title: Kruchten 130320 post agile handout.pptx Author: Philippe Kruchten Created Date: 3/22/2013 5:18:05 PM

"agile"?   March  2013  

Ph.  Kruchten   5  

1.  Dark  age  

•  1960  –  late  70s    •  “Engineered”  projects  •  “Trust  us,  we  know  what  is  good  for  you”  

Feb.  2013   Copyright  ©  2005-­‐13  by  Philippe  Kruchten   12

2.  Tokenism  •  1970s  –  …  •  Redevelopment  of    original  systems  

•  DeregulaJon  •  CompeJJveness  •  More  disciplined  approaches  •  Control  of  cost,  quality,  Jme  •  Outsourcing  starts  

•  The  techies  have  the  lead  

Feb.  2013   Copyright  ©  2005-­‐13  by  Philippe  Kruchten   13

Page 6: Kruchten 130320 post agile handout - Philippe Kruchten · Title: Kruchten 130320 post agile handout.pptx Author: Philippe Kruchten Created Date: 3/22/2013 5:18:05 PM

"agile"?   March  2013  

Ph.  Kruchten   6  

3.  Payback  Jme  

•  1990  -­‐  …  •  Pendulum  swings  back  to    the  business  side  

•  ROI  •  Business  re-­‐engineering  •  Porfolio  management  

•  Outsourcing  as  payback?  

Feb.  2013   Copyright  ©  2005-­‐13  by  Philippe  Kruchten   14

The  DestrucJon  of  Trust  

•  These  first  3  stages  achieved  a  destrucJon  of  trust  among  the  various  players.  

Feb.  2013   Copyright  ©  2005-­‐13  by  Philippe  Kruchten   15

Page 7: Kruchten 130320 post agile handout - Philippe Kruchten · Title: Kruchten 130320 post agile handout.pptx Author: Philippe Kruchten Created Date: 3/22/2013 5:18:05 PM

"agile"?   March  2013  

Ph.  Kruchten   7  

4.  Partnership  

•  2000  –  •  Open  negoJaJon  •  Joint  planning  sessions  •  Interdisciplinary  project  teams  •  Broader  range  of  experJse  and  educaJon  of  individuals  

•  Agile  and  lean  approaches  

Feb.  2013   Copyright  ©  2005-­‐13  by  Philippe  Kruchten   16

Tokenism Partnership

Engineered Traditional project management

Payback

Copyright  ©  2005-­‐13  by  Philippe  Kruchten   17

Business  control  

Project  con

trol  

Thomseb  2002,  2007  Feb.  2013  

Page 8: Kruchten 130320 post agile handout - Philippe Kruchten · Title: Kruchten 130320 post agile handout.pptx Author: Philippe Kruchten Created Date: 3/22/2013 5:18:05 PM

"agile"?   March  2013  

Ph.  Kruchten   8  

The  Raise  of  the  PrescripJve  Process  

•  IPO  (Input  Process  Output)  

•  CMMI  

Feb.  2013   Copyright  ©  2005-­‐13  by  Philippe  Kruchten   18

Level 1: Initial

Level 2: Repeatable

Level 3: Defined

Level 4: Managed

Level 5: Optimizing

…  and  more  

•  ISO  9000-­‐3  •  SoRware  process  improvement  •  Six  Sigma  (applied  to  soRware)  

•  IEEE  Standard  –  IEEE  adopts  the  PMBOK  as  its  soRware  preojct  management  framework  

Feb.  2013   Copyright  ©  2005-­‐13  by  Philippe  Kruchten   19  

Page 9: Kruchten 130320 post agile handout - Philippe Kruchten · Title: Kruchten 130320 post agile handout.pptx Author: Philippe Kruchten Created Date: 3/22/2013 5:18:05 PM

"agile"?   March  2013  

Ph.  Kruchten   9  

Copyright  ©  2005-­‐13  by  Philippe  Kruchten   20

•  “Most  companies  build  their  bureaucraJc  rules  to  manage  the  small  percentage  of  wrong  people  on  the  bus,  which  in  turn  drive  away  the  right  people  on  the  bus,  which  then  increases  the  need  for  more  bureaucracy  to  compensate  for  incompetence  and  lack  of  discipline,  which  then  further  drives  the  right  people  away  and  so  forth.”    

             Jim  Collins,  Good  to  Great  (2001)  

Feb.  2013  

The  nature  of  soRware  

1.  No  fundamental  laws  of  soRware  –  Cannot  validate  soRware  on  blueprints  –  Need  to  build  and  test  

2.  Extreme  modifiability  –  End-­‐user  &  customer  want  to  exploit  this  –  Constant  changes  

3.  No  manufacturing  costs,  no  border  –  All  costs  are  in  design,  no  economy  of  scale  

4.  Technology  churn  Feb.  2013   Copyright  ©  2005-­‐13  by  Philippe  Kruchten   21  

Page 10: Kruchten 130320 post agile handout - Philippe Kruchten · Title: Kruchten 130320 post agile handout.pptx Author: Philippe Kruchten Created Date: 3/22/2013 5:18:05 PM

"agile"?   March  2013  

Ph.  Kruchten   10  

Consequences  

•  A  creaJve  acJvity,  not  a  construcJon  acJvity  •  A  knowledge-­‐intensive  acJvity  •  High  level  of  risks  and  uncertainty  •  High  pace  

•  Hard  to  cast  in  more  tradiJonal  manufacturing  or  even  engineering  processes  

•  TradiJonal  project  management  approach  failed  

Feb.  2013   Copyright  ©  2005-­‐13  by  Philippe  Kruchten   22  

Agile  Manifesto  (2001)  We  have  come  to  value:  •  Individuals  and  interacJons  over  process  and  tools,  

•  Working  soRware  over  comprehensive  documents,  

•  Customer  collaboraJon  over  contract  negoJaJon,  

•  Responding  to  change  over  following  a  plan.  That  is,  while  there  is  value  in  the  items  on  the  right,  we  value  the  items  on  the  leR  more  

Feb.  2013   Copyright  ©  2005-­‐13  by  Philippe  Kruchten   23  

Page 11: Kruchten 130320 post agile handout - Philippe Kruchten · Title: Kruchten 130320 post agile handout.pptx Author: Philippe Kruchten Created Date: 3/22/2013 5:18:05 PM

"agile"?   March  2013  

Ph.  Kruchten   11  

Are  you  agile  ?  •  Yes!  We  follow  agile  method  XXX  and  implement  all  its  recommended  pracJces.  

•  Yes!  Our  process  is  strictly  conformant  to  the  agile  manifesto.    

•  Yes!  We  are  agile  because  this  is  what  we  say  we  are.  

•  Yes!  We  are  not  waterfall,  therefore  we  are  agile.  QED.  

•  Yes!  We  are  chaordic,  collaboraJve,  and  streamlined.  

Copyright  ©  2005-­‐13  by  Philippe  Kruchten   24  Feb.  2013  

Who  wants  to  not  be  agile?  

•  Or  an  agile  organizaJon  ??  – And  not  just  in  an  organizaJon  “using  agile”  

•  Is  there  some  metric,  a  unit  of  agility?  A  means  to  measure  the  level  of  agility?  

Copyright  ©  2005-­‐13  by  Philippe  Kruchten   25  Feb.  2013  

Page 12: Kruchten 130320 post agile handout - Philippe Kruchten · Title: Kruchten 130320 post agile handout.pptx Author: Philippe Kruchten Created Date: 3/22/2013 5:18:05 PM

"agile"?   March  2013  

Ph.  Kruchten   12  

False  Dichotomies:  Agile  versus  X  •  Agile  versus  Waterfall  •  Agile  versus  Discipline  ?!?!  •  Agile  versus  Plan-­‐driven  ?  •  Light-­‐weight  versus  Heavy-­‐weight  ?  •  Agility  versus  Architecture  !?  

•  More  likely:  

Adapta&on  versus  An&cipa&on          

•  And  this  is  a  conJnuum,  not  a  binary  state  Copyright  ©  2005-­‐13  by  Philippe  Kruchten   26  

Highsmith  2000  

Feb.  2013  

Agility  defined…  •  Jim  Highsmith  (2002):  

– Agility  is  the  ability  to  both  create  and  respond  to  change  in  order  to  profit  in  a  turbulent  business  environment.  

•  Sanjiv  AugusJne  (2004):  –  IteraJve  and  incremental  –  Small  release  –  CollocaJon  –  Release  plan/  feature  backlog  –  IteraJon  plan/task  backlog  

Copyright  ©  2005-­‐13  by  Philippe  Kruchten   27  Feb.  2013  

Page 13: Kruchten 130320 post agile handout - Philippe Kruchten · Title: Kruchten 130320 post agile handout.pptx Author: Philippe Kruchten Created Date: 3/22/2013 5:18:05 PM

"agile"?   March  2013  

Ph.  Kruchten   13  

Agile  Methods  •  XP  =  eXtreme  Programming    •  SCRUM              •  AdapJve  development  

process    •  Lean  SoRware  Development    •  Crystal                •  Feature  Driven  Development  •  Agile  Unified  Process      •  Scaled  Agile  Framework  •  Disciplined  Agile  Delivery  

K.  Beck  K.  Schwaber,  J.  Sutherland  J.  Highsmith    M.  Poppendieck  A.  Cockburn  S.  Palmer  S.  Ambler  D.  Leffingwell  S.  Ambler    

Feb.  2013   Copyright  ©  2005-­‐13  by  Philippe  Kruchten   28  

XP  PracJces  

29  Copyright  ©  2005-­‐13  by  Philippe  Kruchten  Feb.  2013  

Page 14: Kruchten 130320 post agile handout - Philippe Kruchten · Title: Kruchten 130320 post agile handout.pptx Author: Philippe Kruchten Created Date: 3/22/2013 5:18:05 PM

"agile"?   March  2013  

Ph.  Kruchten   14  

Scrum  

30  Copyright  ©  2005-­‐13  by  Philippe  Kruchten  Feb.  2013  

Lean  Principles  (for  SoRware  Development)  

•  Eliminate  waste  •  Amplify  learning  •  Decide  as  late  as  possible  •  Deliver  as  fast  as  possible  •  Empower  the  team  •  Build  integrity  in  •  See  the  whole  

Copyright  ©  2005-­‐13  by  Philippe  Kruchten   31  Feb.  2013  

Page 15: Kruchten 130320 post agile handout - Philippe Kruchten · Title: Kruchten 130320 post agile handout.pptx Author: Philippe Kruchten Created Date: 3/22/2013 5:18:05 PM

"agile"?   March  2013  

Ph.  Kruchten   15  

Different  methods  for  different  issues  

Copyright  ©  2005-­‐13  by  Philippe  Kruchten  

XP    prac<ces  

Scrum  management  

Lean  principles  

32  Feb.  2013  

SoRware  development  now:  

Copyright  ©  2005-­‐13  by  Philippe  Kruchten   33

Agile  Reviews  

Agile  Architecture  

Agile  Deployment  

Agile  MarkeJng  

Agile  Programming  Agile  Lifecycle  

Agile  Process  

Agile  TesJng  

Agile  Design  

Agile  Analysis  

Agile  Database  

Agile  Modeling  

Feb.  2013  

Page 16: Kruchten 130320 post agile handout - Philippe Kruchten · Title: Kruchten 130320 post agile handout.pptx Author: Philippe Kruchten Created Date: 3/22/2013 5:18:05 PM

"agile"?   March  2013  

Ph.  Kruchten   16  

Agility  as  a  Memeplex  •  Meme:  a  replicaJng    “chunk”  of  culture,  a    unit  of  informaJon  residing  in  a  brain,  a  unit  of  cultural  transmission,  a  basic  building  block  in  cultural  evoluJon.  

•  Memeplex:  meme  complex  -­‐-­‐  sets  of  memes  that  replicate  beber  as  a  group  

•  Examples:    –  the  50  or  so  memes  that  consJtute  agile  pracJces    –  the  12  or  so  memes  that  consJtute  XP  

Copyright  ©  2005-­‐13  by  Philippe  Kruchten   36  Feb.  2013  

Meme  PropagaJon  •  If  a  meme  can  get  itself  successfully  copied,    it  will.  

•  EffecJve  memes  will  be  those  that  cause  high  fidelity,  long  lasJng  memory.    Susan  Blackmore,  1999  

•  When  a  populaJon  of  imitators  start  imitaJng  one  another,  the  emergent  result  is  culture.                      R.  Aunger,  2002    

•  Memes  (unlike  genes)  :  –  Replicate  imperfectly  -­‐>  rapid  driR  –  No  natural  selecJon  of  the  fibest  

Copyright  ©  2005-­‐13  by  Philippe  Kruchten   37  Feb.  2013  

Page 17: Kruchten 130320 post agile handout - Philippe Kruchten · Title: Kruchten 130320 post agile handout.pptx Author: Philippe Kruchten Created Date: 3/22/2013 5:18:05 PM

"agile"?   March  2013  

Ph.  Kruchten   17  

DecontextualizaJon  =  cut  out  the  relaJonships    with  it  natural  or  original    environment  

•  Pabern:  •  Experience  a  couple  of  success  with  a  pracJce  •  Describe  it  •  Simplify  it  (slogan,  cute  name)  •  Pass  it  on,  pass  it  on,  (write    a  book),  pass  it  on  • Without  the  original  context  where  it  was  successful  

•  This  lack  of  context  hampers  adaptaJon  – AmplificaJon  or  dampening  

M

Copyright  ©  2005-­‐13  by  Philippe  Kruchten   38  Feb.  2013  

Agilism,  Bigotry,  Act  of  Faith,  …  

•  “You’re  not  agile  because  you  are  not  doing  this  or  that”  

•  Scrumbuts  •  “This  is  so  ‘waterfall’!”  •  “Agile  projects  have  2  week  iteraJons  (if  not,  then  they  are  not  agile).”  

•  “My  agile  is  more  agile  than  your  agile…”  

Copyright  ©  2005-­‐13  by  Philippe  Kruchten   39  Feb.  2013  

Page 18: Kruchten 130320 post agile handout - Philippe Kruchten · Title: Kruchten 130320 post agile handout.pptx Author: Philippe Kruchten Created Date: 3/22/2013 5:18:05 PM

"agile"?   March  2013  

Ph.  Kruchten   18  

Viruses  of  the  Mind  (1)  

•  “The  paJent  typically  finds  himself  impelled  by  some  deep,  inner  convicJon  that  something  is  true,  or  right,  or  virtuous:  a  convicJon  that  doesn't  seem  to  owe  anything  to  evidence  or  reason,  but  which,  nevertheless,  he  feels  as  totally  compelling  and  convincing.  We  doctors  refer  to  such  a  belief  as  ‘faith’.”  

•  SoRware  development  is  not  natural  science!  Dawkins  1995  

Copyright  ©  2005-­‐13  by  Philippe  Kruchten   40  Feb.  2013  

Viruses  of  the  Mind  (2)  

•  “PaJents  typically  make  a  posiJve  virtue  of  faith’s  being  strong  and  unshakable,  in  spite  of  not  being  based  upon  evidence.  Indeed,  they  may  feel  that  the  less  evidence  there  is,  the  more  virtuous  the  belief.”  

•  For  many  pracJces  we  have  only  sporadic  evidence  of  effecJveness,  or  in  a  limited  context.  

Copyright  ©  2005-­‐13  by  Philippe  Kruchten   41  Feb.  2013  

Page 19: Kruchten 130320 post agile handout - Philippe Kruchten · Title: Kruchten 130320 post agile handout.pptx Author: Philippe Kruchten Created Date: 3/22/2013 5:18:05 PM

"agile"?   March  2013  

Ph.  Kruchten   19  

Viruses  of  the  Mind  (3)  •  “The  sufferer  may  find  himself    behaving  intolerantly  towards    vectors  of  rival  faiths,  in  extreme    cases  even  killing  them  or  advo-­‐  caJng  their  deaths.  He  may  be  similarly  violent  in  his  disposiJon  towards  apostates  (people  who  once  held  the  faith  but  have  renounced  it);  or  towards  hereJcs  (people  who  espouse  a  different  —oRen,  perhaps  significantly,  only  very  slightly  different—version  of  the  faith).  He  may  also  feel  hosJle  towards  other  modes  of  thought  that  are  potenJally  inimical  to  his  faith,  such  as  the  method  of  scienJfic  reason  which  may  funcJon  rather  like  a  piece  of  anJ-­‐viral  soRware.”  

Copyright  ©  2005-­‐13  by  Philippe  Kruchten   42  Feb.  2013  

What  does  it  mean  to  be  agile?  

•  The  answer  is  oRen:  “It  depends…”  …  Depends  on  what?    •  Your  context…  

Copyright  ©  2005-­‐13  by  Philippe  Kruchten   43  Feb.  2013  

Page 20: Kruchten 130320 post agile handout - Philippe Kruchten · Title: Kruchten 130320 post agile handout.pptx Author: Philippe Kruchten Created Date: 3/22/2013 5:18:05 PM

"agile"?   March  2013  

Ph.  Kruchten   20  

Context-­‐driven  School  of  TesJng  

1.  The  value  of  any  pracJce  depends  on  its  context.    

2.  There  are  good  pracJces  in  context,  but  there  are  no  best  pracJces.    

3.  People,  working  together,  are  the  most  important  part  of  any  project's  context.    

4.  Projects  unfold  over  Jme  in  ways  that  are  oRen  not  predictable.  

5.  …            See  h8p://www.context-­‐driven-­‐tes&ng.com/  

Copyright  ©  2005-­‐13  by  Philippe  Kruchten   44  Feb.  2013  

 Agility  does  not  come  in  a  can.  One  size  does  not  fit  all.  There  are  no  five  common  steps  to  achievement  …  

         Rick  Dove,  Response  Ability  (2001)  

Copyright  ©  2005-­‐13  by  Philippe  Kruchten   45  Feb.  2013  

Page 21: Kruchten 130320 post agile handout - Philippe Kruchten · Title: Kruchten 130320 post agile handout.pptx Author: Philippe Kruchten Created Date: 3/22/2013 5:18:05 PM

"agile"?   March  2013  

Ph.  Kruchten   21  

Agile  “sweet  spot”  •  7-­‐15  people  •  Collocated  •  Dedicated  •  Socio-­‐technical  system  •  Defined  system  /  soRware  architecture  

•  Low  to  medium  safety  •  Friendly  management  environment  

•  New  development  Copyright  ©  2005-­‐13  by  Philippe  Kruchten   46  Feb.  2013  

Agility  in  Context  

•  LocaJon,  LocaJon,  LocaJon  

•  Context,  Context,  Context  

Copyright  ©  2005-­‐13  by  Philippe  Kruchten   47  Feb.  2013  

Page 22: Kruchten 130320 post agile handout - Philippe Kruchten · Title: Kruchten 130320 post agile handout.pptx Author: Philippe Kruchten Created Date: 3/22/2013 5:18:05 PM

"agile"?   March  2013  

Ph.  Kruchten   22  

Feb.  2013   Copyright  ©  2005-­‐13  by  Philippe  Kruchten   48

Frog:  “All  projects  are  the  same”  

TimeQualityRisk

Intent

TimeQualityRisk

Product

TimeQualityRisk

Work

TimeQualityRisk

People

Value   Value  

Cost   Cost  

Octopus:  “All  projects  are  different!”  

Copyright  ©  2005-­‐13  by  Philippe  Kruchten   49  

Context  

Size  CriJcality  

Business  model  

Stable  architecture  Team  

distribuJon  

Governance  

Rate  of  change  

Age  of  the  

system  

Feb.  2013  

Domain,  Industry  

Corporate  &  Na&onal  Culture  

Organiza&onal  Maturity  

Degree  of    Innova&on  

Page 23: Kruchten 130320 post agile handout - Philippe Kruchten · Title: Kruchten 130320 post agile handout.pptx Author: Philippe Kruchten Created Date: 3/22/2013 5:18:05 PM

"agile"?   March  2013  

Ph.  Kruchten   23  

Environment  °  Context  °  PracJce  

Copyright  ©  2005-­‐13  by  Philippe  Kruchten  

Business  domain  Number  of  instances  Maturity  of  organizaJon  Level  of  innovaJon  Culture  

System  size  CriJcality  System  age  Rate  of  change  Business  model  Stable  architecture  Team  distribuJon  Governance  

Good  Prac&ces:  •   Planning  •   Rate  of  iteraJon  •   Release  early,  oRen  •   Backlog  •   ConJnuous  IntegraJon  •   DocumentaJon    •   Quality  •   Risk  Management    •   Daily  stand-­‐up  meeJng  •   TDD  •   Pair  programming  •   “Customer  on  site”  •   AdaptaJon  • …  etc.  

50  Feb.  2013  

Daily  Standup  MeeJng  

•  Daily  •  Standup  •  MeeJng  

Copyright  ©  2005-­‐13  by  Philippe  Kruchten   52  

Context  

Size  

CriJcality  

Business  model  

Stable  architect

ure  Team  

distribuJon  

Governance  

Rate  of  change  

Age  of  the  

system  

?  

Feb.  2013  

Page 24: Kruchten 130320 post agile handout - Philippe Kruchten · Title: Kruchten 130320 post agile handout.pptx Author: Philippe Kruchten Created Date: 3/22/2013 5:18:05 PM

"agile"?   March  2013  

Ph.  Kruchten   24  

Ganb  chart  

•  Bar  chart  to  show  progress  relaJve  to  a  WBS  

Copyright  ©  2005-­‐13  by  Philippe  Kruchten   53  

Context  

Size  

CriJcality  

Business  model  

Stable  architect

ure  Team  distribuJ

on  

Governance  

Rate  of  change  

Age  of  the  system  

Feb.  2013  

Going  outside  of  the  “sweet  spot”?  •  7-­‐15  people  •  Collocated  •  Dedicated  •  Socio-­‐technical  system  •  Defined  system  /  soRware  architecture  

•  Low  to  medium  safety  •  Friendly  management  environment  

•  New  development  Copyright  ©  2005-­‐13  by  Philippe  Kruchten   54  Feb.  2013  

Page 25: Kruchten 130320 post agile handout - Philippe Kruchten · Title: Kruchten 130320 post agile handout.pptx Author: Philippe Kruchten Created Date: 3/22/2013 5:18:05 PM

"agile"?   March  2013  

Ph.  Kruchten   25  

What  is  agility?    

       Agility  is  the  ability  of  a  an    organiza&on  to  react  and  adapt    to  changes  in  its  environment    faster  than  the  rate  of  these  changes.  

– With  thanks  to  Steve  Adolph  

Copyright  ©  2005-­‐13  by  Philippe  Kruchten   55  Feb.  2013  

Agility  Not  defined  as  

…  conformance  to  the  Agile  Manifesto  …  a  rigid  set  of  pracJces  to  follow  …  a  defined  set  of  roles  …  a  branded  method  …  the  anJthesis  of  “waterfall”,…  or  old,  or  bad  

Feb.  2013   Copyright  ©  2005-­‐13  by  Philippe  Kruchten   56  

Page 26: Kruchten 130320 post agile handout - Philippe Kruchten · Title: Kruchten 130320 post agile handout.pptx Author: Philippe Kruchten Created Date: 3/22/2013 5:18:05 PM

"agile"?   March  2013  

Ph.  Kruchten   26  

Key  principles  

•  Feedback  loop  -­‐>  –  reflect  on  business,  requirements,    risks,  process,  people,  technology  

•  CommunicaJon  and  collaboraJon  -­‐>  – Building  trust  

57  Copyright  ©  2005-­‐13  by  Philippe  Kruchten  Feb.  2013  

An&cipa&on  versus  Adapta&on  

•  Scheduling  •  Architecture  •  Minimizing  cost  •  Efficiency  

•  Push  

•  Time-­‐boxing  •  Emergence  •  Maximizing  value  •  EffecJveness  

•  Pull  

Feb.  2013   Copyright  ©  2005-­‐13  by  Philippe  Kruchten   59  

Page 27: Kruchten 130320 post agile handout - Philippe Kruchten · Title: Kruchten 130320 post agile handout.pptx Author: Philippe Kruchten Created Date: 3/22/2013 5:18:05 PM

"agile"?   March  2013  

Ph.  Kruchten   27  

Kanban  board  

Feb.  2013   Copyright  ©  2005-­‐13  by  Philippe  Kruchten   60  

Feb.  2013   Copyright  ©  2005-­‐13  by  Philippe  Kruchten   61

Value  and  Cost  

TimeQualityRisk

Intent

TimeQualityRisk

Product

TimeQualityRisk

Work

TimeQualityRisk

People

Value   Value  

Cost   Cost  

Page 28: Kruchten 130320 post agile handout - Philippe Kruchten · Title: Kruchten 130320 post agile handout.pptx Author: Philippe Kruchten Created Date: 3/22/2013 5:18:05 PM

"agile"?   March  2013  

Ph.  Kruchten   28  

Agility  as  Culture?  

Culture  is  a  fuzzy  set  of  a�tudes,  beliefs,  behavioural  norms,  and  basic  assumpJons  and  values  that  are  shared  by  a  group  of  people,  and  that  influence  each  member’s  behaviour  and  his/her  interpretaJons  of  the  ‘meaning’  of  other  people’s  behaviour.                        Helen  Spencer-­‐Oatey  (2000)  

Copyright  ©  2005-­‐13  by  Philippe  Kruchten   62  Feb.  2013  

Culture  

R.  Thomse8  2007  

Culture  Beliefs,  Norms  

Values  Reflect  beliefs  

Behaviours  Reflect  values  

Copyright  ©  2005-­‐13  by  Philippe  Kruchten   63  Feb.  2013  

Page 29: Kruchten 130320 post agile handout - Philippe Kruchten · Title: Kruchten 130320 post agile handout.pptx Author: Philippe Kruchten Created Date: 3/22/2013 5:18:05 PM

"agile"?   March  2013  

Ph.  Kruchten   29  

Agility  as  Culture  

Agility  is  a  fuzzy  set  of  a�tudes,  beliefs,  behavioural  norms,  and  basic  assumpJons  and  values  that  are  shared  by  a  group  of  people,  and  that  influence  each  member’s  behaviour  and  his/her  interpretaJons  of  the  ‘meaning’  of  other  people’s  behaviour.                        Kruchten  (2005)  

Copyright  ©  2005-­‐13  by  Philippe  Kruchten   64  Feb.  2013  

So,  agile…  

…  is  a  fuzzy  concept  …  is  not  a  panacea  …  is  not  working  for  everyone  …  is  not  new  …  is  a  passing  fad      Where  do  we  go  from  here?  

Feb.  2013   Copyright  ©  2005-­‐13  by  Philippe  Kruchten   65  

Page 30: Kruchten 130320 post agile handout - Philippe Kruchten · Title: Kruchten 130320 post agile handout.pptx Author: Philippe Kruchten Created Date: 3/22/2013 5:18:05 PM

"agile"?   March  2013  

Ph.  Kruchten   30  

I  would  claim  that…  

•  Agile  pracJces  are  good  in  a  specific  context,  to  solve  a  specific  problem.  

•  AdopJng  a  pracJce  without  knowing  this  context,  or  what  issues  it  solve  is  like  voodoo,  or  cargo  cult.  

•  A  branded  method  will  rarely  be  the  best  answer.  

•  We  want  to  replace  rhetoric  by  evidence.  

Feb.  2013   Copyright  ©  2005-­‐13  by  Philippe  Kruchten   66  

Right  pracJce,  right  Jme,  right  fit  

•  Choose  pracJces  based  upon  project  context,  not  for  organizaJon  or  social  reasons  or  pressure  

•  Cultural  fit  is  as  important  as  technical  fit  

   

Feb.  2013   Copyright  ©  2005-­‐13  by  Philippe  Kruchten   67  

Page 31: Kruchten 130320 post agile handout - Philippe Kruchten · Title: Kruchten 130320 post agile handout.pptx Author: Philippe Kruchten Created Date: 3/22/2013 5:18:05 PM

"agile"?   March  2013  

Ph.  Kruchten   31  

Step  by  step:  

•  What  value  do  we  deliver?    •  What  are  the  pain  points  (for  us)?  •  Which  pracJces  (agile  or  not)  address  our  pain  points?  

•  Adopt  one,  assess  its  impact.  •  Exploit  synergy  between  mulJple  pracJces  •  Go  slow  •  Change  is  hard  

Feb.  2013   Copyright  ©  2005-­‐13  by  Philippe  Kruchten   68  

Change  is  Hard  

•  Change  is  oRen  perceived  as  a  threat  •  Leads  to  “emoJonal  resistance”,  fear  •  Needs  to  be  overcome  by  a  stronger  emoJon:  desire  

•  But  the  iniJal  changes  beber  be  good,  or  they  would  condemn  for  a  long  Jme  any  future  changes  

Feb.  2013   Copyright  ©  2005-­‐13  by  Philippe  Kruchten   69

Page 32: Kruchten 130320 post agile handout - Philippe Kruchten · Title: Kruchten 130320 post agile handout.pptx Author: Philippe Kruchten Created Date: 3/22/2013 5:18:05 PM

"agile"?   March  2013  

Ph.  Kruchten   32  

Key  principles  

•  Feedback  loop  -­‐>  –  reflect  on  business,  requirements,    risks,  process,  people,  technology  

•  CommunicaJon  and  collaboraJon  -­‐>  – Building  trust  

70  Copyright  ©  2005-­‐13  by  Philippe  Kruchten  Feb.  2013  

Feedback  Loop  •  ORen:  stop  and  think  

–  Once  per  iteraJon  at  least  –  Are  we  doing  the  right  thing?    –  Are  we  doing  the  thing  right?  –  Can  we  do  beber?  –  Use  indicators:    

•  Quality  (defect  analysis)  •  Issues  and  risks  ge�ng  stale  (open  for  long  Jme)  •  ProducJvity  (velocity),  Burn  down  chart  •  Delays,  pushing  objecJves  down  the  Jme  line  

•  Post-­‐mortem,  retrospecJve,  debriefing  –  capture  lessons  learned  

Feb.  2013   Copyright  ©  2005-­‐13  by  Philippe  Kruchten   71  

Page 33: Kruchten 130320 post agile handout - Philippe Kruchten · Title: Kruchten 130320 post agile handout.pptx Author: Philippe Kruchten Created Date: 3/22/2013 5:18:05 PM

"agile"?   March  2013  

Ph.  Kruchten   33  

Summary  

•  Nature  of  soRware  •  Nature  of  soRware  development  •  Risks  and  uncertainty  •  Context  mabers,  a  lot  •  AdaptaJon  versus  anJcipaJon  •  Process:  one  size  does  not  fit  all  •  Building  trust  •  Don’t  do  agile,  be  agile  

Feb.  2013   Copyright  ©  2005-­‐13  by  Philippe  Kruchten   72  

Feb.  2013   Copyright  ©  2005-­‐13  by  Philippe  Kruchten   74  

www.agilevancouver.ca