60
Rounding out your backlog Armani Leli Italian Agile Day 2014

User Story Mapping

Embed Size (px)

DESCRIPTION

Scrum XP è sempre più la metodologia di riferimento per i team e alcuni concetti sono divenuti di uso comune per chiunque operi nel mondo dell’IT (sia piccole realtà sia grandi aziende). Tra questi spiccano termini come user story e Product Backlog. L’utilizzo delle user story ha sempre più spesso rimpiazzato i tradizionali documenti di specifiche funzionali e gli use case, mentre il Product Backlog è diventato lo strumento per tracciare tutto ciò che riguarda la realizzazione di un Prodotto. Eppure entrambi hanno una serie di punti deboli. In questo talk mi concentrerò da una parte sulla difficoltà di avere un quadro completo ed evoluto a partire dal Backlog che è aihme piatto e mono dimensionale e dall’altro parlerò di cosa vuol dire veramente avere un approccio iterativo e incrementale nello sviluppo di un sistema.

Citation preview

Page 1: User Story Mapping

Rounding  out  your  backlog  Armani  -­‐  Leli  

Italian  Agile  Day  2014  

Page 2: User Story Mapping
Page 3: User Story Mapping

User Story

Mapping

Why we need a Vision?

Vision Board

How to create them?

Why bother?

User Story

Learning Outcomes Vision

What is a User Story

User Story Slicing

Why we bother?

Page 4: User Story Mapping
Page 5: User Story Mapping

Vision

Why we need a Vision?

Vision Board

Page 6: User Story Mapping

Product  Idea  

Canvas  as  tools  to  sharing  vision  and  create  the  backlog  

Page 7: User Story Mapping

Canvas  as  tools  to  sharing  vision  and  create  the  backlog  

Product  Idea  

Product Vision board

Business Model / Lean Canvas

User Story Mapping Capture  and  validate  ini9al  assump9on  

Capture  and  validate  Business  Model  

Capture  and  validate  Product  features  

Canvas  as  tools  to  sharing  vision  and  create  the  backlog  Canvas  as  tools  to  sharing  vision  and  create  the  backlog  

Page 8: User Story Mapping

Vision Statement

Target Group Needs Product Business Value

Write  in  one  sentence  the  aim  of  the  product  

What  are  the  needs  that  this  product  will  sa=sfy?  

List  of  main  features  of  the  product  

What  are  the  values  that  this  product  will  generate  for  the  company?    Values  can  be  profit,  market  share,  cost  saving,  improve  KPIs  and  so  on..  

Barriers Impediments  to  sa=sfy  these  needs  

Impediments  to  reach  these  values  

Who is out?

List  eventually  who  is  not  the  target  

Barriers

List  people  who  are  the  target  of  the  product.    People  may  be  cutsomers,  end-­‐users,  internal  users  …  all  stakeholders  that  will  are  impacted  by  the  product.  Use  roles  to  iden=fy  them  

Product  Vision  Board    

Page 9: User Story Mapping

Il  piu’  grande  online  store  al  mondo  

Comprare  online  libri  e  altri  beni    Risparmiare    Avere  una  scelta  completa    Conoscere  i  pareri  di  chi  ha  comprato  la  stessa  cosa    Comprare  senza  recarsi  in  negozio    

Scheda  libri  e  altri  beni    Ricerca    Recensioni    Carrello  e  acquisto  on-­‐line  

Vendere  mol=  libri  (e  altri  beni)  in  tuTo  il  mondo    Eliminare  i  cos=  fissi  dei  negozi  

Consumatori  in  tuTo  il  mondo  con  connessione  a  Internet  e  Carta  di  Credito  

Product  Vision  Board  –  Amazon  2005  

Vision Statement

Target Group Needs Product Business Value

Page 10: User Story Mapping

Lets  go  with  our  Vision  Board!!!  

Page 11: User Story Mapping

How to create them?

Why bother?

User Story Mapping

Page 12: User Story Mapping

Silent  Brainstorming  

Page 13: User Story Mapping

Silent Brainstorming

Page 14: User Story Mapping

Silent  Brainstorming  

•  Decide  on  the  type  of  ques9on  •  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  vo9ng  •  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 15: User Story Mapping

Dimensional  Planning  

Page 16: User Story Mapping

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  mul9-­‐dimensional.  So,  we  probably  also  should  think  of  solving  our  problems  in  mul9ple  dimensions.  This  is  where  Dimensional  Planning  comes  in  handy  when  spli[ng  Product  Backlog  Items  in  your  Product  Backlog  during  the  Refinement  or  Grooming  mee9ngs.  

Page 17: User Story Mapping

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  mul9-­‐dimensional.  So,  we  probably  also  should  think  of  solving  our  problems  in  mul9ple  dimensions.  

•  This  is  where  Dimensional  Planning  comes  in  handy  when  spli[ng  Product  Backlog  Items  in  your  Product  Backlog  during  the  Refinement  or  Grooming  mee9ngs.  

Page 18: User Story Mapping

Dimensional Planning

Page 19: User Story Mapping
Page 20: User Story Mapping

Living  Charter  =  Chartering  

Page 21: User Story Mapping

How  to  create  a  User  Story  Map  

Page 22: User Story Mapping

Activity

Task

Activity

Task Task Task

Activity

Task Task

Page 23: User Story Mapping

Task Task Task Task Task Task

Page 24: User Story Mapping
Page 25: User Story Mapping

Backbone  

Page 26: User Story Mapping

Walking  Skeleton  

Page 27: User Story Mapping
Page 28: User Story Mapping

Some  defini9on  

•  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  applica9on.    

•  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  applica9on  goes  lec  to  right  (Time).  

 

Page 29: User Story Mapping

Lets  go  with  our  mapping!!!  

Page 30: User Story Mapping

How  to  priori9ze  a  User  Story  Map  

Page 31: User Story Mapping
Page 32: User Story Mapping

User Stories

What is a User Story

User Story Slicing

Page 33: User Story Mapping

What User Stories are not

Tasks •  Create user table •  Create password

encryption service •  Create login service •  Create CSS •  Create page template •  Add login button

Page 34: User Story Mapping

What User Stories are not

A document •  Login.docx

•  “this document, by its very size, ensures that it will never be read.” – Sir Winston Churchill

Page 35: User Story Mapping

What User Stories are…

A small piece of functionality that provides some value to a user

•  As a user, I want to login with my password, so that I can gain access to the site.

“A place holder for a conversation.”

Page 36: User Story Mapping

What User Stories are…

I Independent * N Negotiable (can be prioritized) V Valuable (to a user) E Estimable S Small T Testable

Page 37: User Story Mapping

Formats

By the book:

As a [role], I want to [some action], so that [goal]

As a [mom] I want to [login with my pwd] so that [I can gain access to the site]

Page 38: User Story Mapping

Formats

Who What Why

As a [mom] I want to [login with my pwd] so that [I can gain access to the site]

The “by the book” format is great for learning, but at its core, it is just Who/What/Why

Page 39: User Story Mapping

Why  

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

•  It  gives  you  a  beder  tool  for  making  decisions  about  grooming  and  priori9zing  your  backlog.    

•  It  promotes  silent  brainstorming  and  a  collabora9ve  approach  to  genera9ng  your  user  stories.  

Page 40: User Story Mapping

Why  

•  It  encourages  an  itera9ve  development  approach  where  your  early  deliveries  validate  your  architecture  and  solu9on.  

•  It  is  a  great  visual  alterna9ve  to  tradi9onal  project  plans.  

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

•  Allows  you  to  visualize  dimensional  planning  and  real  op9ons  for  your  project/product.    

Page 41: User Story Mapping

Story  …  

Story  1  

Story  2  

Story  3  

Sprint N

-1

Sprint N

Sprint N

+1

Story  3  

Page 42: User Story Mapping

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

Wri9ng    story  tests  

Automa9ng  story  tests  

Implemen9ng  the  user  story  

Page 43: User Story Mapping

Risk  &  Assump9ons  

•  Where  are  the  risky  stories?  •  Where  are  our  biggest  assump9ons?  

Page 44: User Story Mapping
Page 45: User Story Mapping

Why slice?

User Story Slices go here:

Page 46: User Story Mapping

How not to Slice?

Tasks •  Create user table •  Create password

encryption service •  Create login service •  Create CSS •  Create page template •  Add login button

Page 47: User Story Mapping

How to Slice? •  By screen (for basic screens

only)

•  By button •  By group of fields

•  By workflow step •  Optional workflow steps •  Validation •  Error handling * •  Admin functions (maintaining

drop downs, etc)

•  By priority •  By applying the INVEST

model •  By acceptance criteria •  By option •  By role

•  By Subjective quality (never by objective quality: always be defect free)

•  By value

Page 48: User Story Mapping

Other Tips

•  Keep them as stories! •  Slice them small when needed, but don’t

get silly •  Slice any time •  When you are fighting over your planning

poker estimates – slice away. •  Slice more liberally if the story is higher

priority

Page 49: User Story Mapping

User Tasks

User Activities

User Stories

Page 50: User Story Mapping

Time

Priorities

Releases

Page 51: User Story Mapping
Page 52: User Story Mapping
Page 53: User Story Mapping

Re-­‐priori3ze  o;en  

Page 54: User Story Mapping
Page 55: User Story Mapping

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  9me  (lec  to  

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

Page 56: User Story Mapping

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

Page 57: User Story Mapping

How to do it?

smithcdau  (@smithcdau)  11-­‐08-­‐11  2:12  PM  RT  @shanehas9e:  @jeffpadon  if  you're  arguing  about  sequence  it  probably  means  it  doesn't  mader.  #Agile2011  #yam

Page 58: User Story Mapping
Page 59: User Story Mapping

Our Final Map

Group

Task

Group

Task Task Task

Group

Task Task

Page 60: User Story Mapping

thanks