user story mapping - mini iad 2014 (armani, rodriguez)

46
Armani Rodriguez May 17 2014

Upload: fabio-armani

Post on 27-Aug-2014

562 views

Category:

Software


1 download

DESCRIPTION

Riteniamo, che non vi sia dubbio sul fatto le User Story (introdotte da eXtreme Programming) e il Product Backlog (definito in Scrum) rappresentino due portentosi strumenti per la gestione agile dei requisiti e delle specifiche sia funzionali che non funzionali. Ma … hanno alcuni limiti. Ad esempio, nonostante le notevoli caratteristiche del Product Backlog, la sua unidimensionalità non consente di creare un modello dei requisiti adatto a scalare e che consenta di gestire le dipendenze che possono essere presenti tra i vari elementi che lo costituiscono. In questo workshop presenteremo e utilizzeremo un altro potente strumento che spesso utilizziamo durante gli User Story Workshop sia in fase d’Inception, sia all’inizio di ogni nuova release di un prodotto. Si chiama “User Story Mapping”. Ci divertiremo con voi ad utilizzarlo in una simulazione che partendo dalla Vision di un prodotto ci consentirà di mappare i bisogni di un numero selezionato di utenti su un insieme di funzionalità organizzate in una mappa. Inoltre vedremo come sia possibile utilizzare questo strumento per gestire le diverse release di un prodotto a partire dal così detto “Walking Skeleton” fino alle successive MMF (Mininum Markatable Feature) Sapete cos’è il modello di Kano, FURPS+, o come il nome della capitale della Russia possa essere utilizzato per assegnare priorità alle diverse storie? Se vi abbiamo incuriosito, o se pensate che avere un nuovo strumento mentale da aggiungere alla vostra cassetta degli attrezzi potrebbe esservi utile, partecipate. Sarete certamente i benvenuti.

TRANSCRIPT

Page 1: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

Armani  -­‐  Rodriguez  May  17  2014  

Page 2: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

Fabio  Armani  [email protected],  @fabioarmani  

 Andrea  Torino  Rodriguez  

[email protected],  @agilerod  

Page 3: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

Why  

•  It  allows  you  to  see  the  big  picture  in  your  backlog.  

•  It  gives  you  a  be8er  tool  for  making  decisions  about  grooming  and  priori<zing  your  backlog.    

•  It  promotes  silent  brainstorming  and  a  collabora<ve  approach  to  genera<ng  your  user  stories.  

Page 4: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

Why  

•  It  encourages  an  itera<ve  development  approach  where  your  early  deliveries  validate  your  architecture  and  solu<on.  

•  It  is  a  great  visual  alterna<ve  to  tradi<onal  project  plans.  

•  It  is  a  useful  model  for  discussing  and  managing  scope.  

•  Allows  you  to  visualize  dimensional  planning  and  real  op<ons  for  your  project/product.    

Page 5: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

Silent  Brainstorming  

Page 6: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

Silent  Brainstorming  

Page 7: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

Silent  Brainstorming  

•  Decide  on  the  type  of  ques<on  •  Step  1:  generate  ideas  individually.  One  idea  per  post-­‐it  •  Step  2:  read  and  put  ideas  on  the  table  •  Step  3:  group  the  ideas  (clustering)  •  Step  4:  Name  each  group  •  Step  5:  prepare  for  vo<ng  •  Step  6:  each  person  votes  for  their  top  3  •  Step  7:  facilitator  tallies  the  votes    •  Step  8:  act  on  the  item(s)  with  the  highest  vote!  

Page 8: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

Dimensional  Planning  

Page 9: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

Dimensional  Planning  

•  In  Scrum  the  Product  Backlog  is  an  ordered  list  of  features.  Unfortunately  the  linearity  of  the  ordered  list  is  not  consistent  with  the  way  us  humans  think  about  problems.  

•  Problems  even  in  the  business  space  are  mul<-­‐dimensional.  So,  we  probably  also  should  think  of  solving  our  problems  in  mul<ple  dimensions.  This  is  where  Dimensional  Planning  comes  in  handy  when  spliXng  Product  Backlog  Items  in  your  Product  Backlog  during  the  Refinement  or  Grooming  mee<ngs.  

Page 10: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

Dimensional  Planning  

•  In  Scrum  the  Product  Backlog  is  an  ordered  list  of  features.  Unfortunately  the  linearity  of  the  ordered  list  is  not  consistent  with  the  way  us  humans  think  about  problems.  

•  Problems  even  in  the  business  space  are  mul<-­‐dimensional.  So,  we  probably  also  should  think  of  solving  our  problems  in  mul<ple  dimensions.  

•  This  is  where  Dimensional  Planning  comes  in  handy  when  spliXng  Product  Backlog  Items  in  your  Product  Backlog  during  the  Refinement  or  Grooming  mee<ngs.  

Page 11: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

Dimensional  Planning  

Page 12: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

Dimensional  Planning  

Page 13: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

Dimensional  Planning  

From  dirt  road  to  flying  cars  •  Dirt  road  •  Cobblestone  road  •  Asphalted  road  •  Highway  •  Flying  cars  

Page 14: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

Dimensional  Planning  

Page 15: User Story Mapping - mini iad 2014 (Armani, Rodriguez)
Page 16: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

Real  Op<ons  

•  How  and  when  (not)  to  make  decisions  •  Defer  commitments  

Page 17: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

Problem  

Customer   Supplier  

Implement  

Generate  op<ons  

Test  and  choose  op<ons  

Page 18: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

Don’t  try  to  decide  too  fast!  

Page 19: User Story Mapping - mini iad 2014 (Armani, Rodriguez)
Page 20: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

Real  Op<ons  

•  Have  a  value  •  Have  a  cost  (=  the  price  of  the  op<on)  •  Have  a  price  (“strike  price”)  when  we  exercise  the  op<on  

•  Have  an  expira<on  date/condi<on  ~  “Call  Op<on”    

An  op<on  is  not  an  obliga<on  

Page 21: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

Grooming  

Page 22: User Story Mapping - mini iad 2014 (Armani, Rodriguez)
Page 23: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

Living  Charter  =  Chartering  

Page 24: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

How  to  create  a  User  Story  Map  

Page 25: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

Group

Task

Group

Task Task Task

Group

Task Task

Page 26: User Story Mapping - mini iad 2014 (Armani, Rodriguez)
Page 27: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

Backbone  

Page 28: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

Walking  Skeleton  

Page 29: User Story Mapping - mini iad 2014 (Armani, Rodriguez)
Page 30: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

Some  defini<on  

•  The  post-­‐its  you  create  in  Step  2  are  the  User  Tasks  (blue  post-­‐its  in  the  diagram).    

•  The  groups  and  group  names  in  steps  3  and  4  are  the  User  Ac3vi3es  (orange  post-­‐its).  Jeff  calls  these  top  two  rows  the  backbone  and  walking  skeleton  of  your  applica<on.    

•  The  user  stories  (yellow  post-­‐its)  are  organized  under  each  User  Task  in  order  of  highest  to  lowest  priority  for  that  User  Task.    

•  The  chronological  order  of  how  users  will  typically  use  the  applica<on  goes  lej  to  right  (Time).  

 

Page 31: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

How  to  priori<ze  a  User  Story  Map  

Page 32: User Story Mapping - mini iad 2014 (Armani, Rodriguez)
Page 33: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

Story  …  

Story  1  

Story  2  

Story  3  

Sprint  N-­‐1  

Sprint  N  

Sprint  N+1  

Story  3  

Page 34: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

Story  Slicing  

Story  1  

Story  2  

Story  3  

Story  4  

Story  5  

Story  6  

Story  7  

Story  8  

Story  9  

Sprint  N-­‐1  

Sprint  N  

Sprint  N+1  

Wri<ng    story  tests  

Automa<ng  story  tests  

Implemen<ng  the  user  story  

Page 35: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

Risk  &  Assump<ons  

•  Where  are  the  risky  stories?  •  Where  are  our  biggest  assump<ons?  

Page 36: User Story Mapping - mini iad 2014 (Armani, Rodriguez)
Page 37: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

Applying  Cynefin  

•  A  way  to  understand  complexity  is  that  ac<ng  in  the  space  causes  the  space  to  change,  and  cause  and  effect  can  only  be  understood  in  retrospect.  

Page 38: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

Applying  Cynefin  

"When  you  start  wri<ng  tests,  or  having  discussions,  and  the  requirements  begin  changing  underneath  you  because  of  what  you  discover  as  a  result,  that’s  complex.  You  can  look  back  at  what  you  end  up  with  and  understand  that  it’s  much  be8er,  but  you  can’t  come  up  with  it  to  start  with,  nor  can  you  define  what  “be8er”  will  look  like  and  try  to  reach  it.  It  emerges  as  you  work."    "...  This  is  the  land  of  high-­‐feedback,  risk  and  innova<on:  generally  stuff  you’ve  never  done  before,  anything  that  the  business  are  unsure  about,  new  technologies,  etc."  

Page 39: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

Re-­‐priori3ze  o;en  

Page 40: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

How  to  do  it?  1.  Divide  into  groups  of  3-­‐5  people  2.  Start  by  gathering  “things  people  do”  –  the  tasks.  Write  them  

down  individually  and  then  read  them  aloud  to  your  group  –  Likely  they  start  with  a  verb.  –  These  are  high  level  user  stories  called  “Tasks”  (walking  skeleton)  –  This  forms  your  story  map  skeleton  

3.  Group  them  silently  (simply  because  it  is  faster)  4.  Name  the  groups  and  lay  them  out  in  order  of  <me  (lej  to  

right)  –  These  are  called  “User  Ac3vi3es”  (backbone)  

Page 41: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

How  to  do  it?  5.  Add  more  detailed  user  stories  below  the  main  tasks  6.  Priori<ze  top  to  bo8om  7.  Break  into  releases  8.  Assign  values  

Page 42: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

Itera<ve  1 2 3 4 5

Credit:  Jeff  Pa8on  

Incremental  

Page 43: User Story Mapping - mini iad 2014 (Armani, Rodriguez)
Page 44: User Story Mapping - mini iad 2014 (Armani, Rodriguez)
Page 45: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

thanks  

Page 46: User Story Mapping - mini iad 2014 (Armani, Rodriguez)

Fabio  Armani  www.open-­‐ware.org  

f.armani@open-­‐ware.org,  @fabioarmani    

Andrea  Torino  Rodriguez  [email protected],  @agilerod