Writing Great User Stories


Published on

User stories are very popular for a simple reason: It's easy to write stories. But writing great user stories is hard. This presentation introduces ten tips for writing great stories including focusing on the user, collaboratively writing stories, and progressively decomposing them.

Published in: Business

Writing Great User Stories

  1. 1. Ten Tips for WritingGreat User Stories Roman Pichler romanpichler.com @romanpichler
  2. 2. Contact details:+44 (0) 7974 203772roman.pichler@romanpichler.com@romanpichlerwww.romanpichler.comwww.allthingsproductowner.com
  3. 3. Story  Time • A  user  story  describes   func3onality  that  is   valuable  to  a  user  or  a     customer.   • It  tells  a  story  about  how   someone  uses  the  product.©  2011  Pichler  Consul3ng  Limited 3 3
  4. 4. A  Sample  User  Story Acceptance Criteria o I won’t fall asleep or play with As a conference visitor, my iPhone. o By the end of the talk, I can I want to attend a talk to correctly answer three acquire new knowledge. question about the subject. o The talk should be no longer than 45 min.©  2011  Pichler  Consul3ng  Limited 4 4
  5. 5. Focus  on  the  User • Describe  the  product   from  the  perspec3ve  of   your  target  users  and   customers • Use  user  roles  in  your   stories • You  may  find  it  helpful  to   do  some  lightweight   modeling©  2011  Pichler  Consul3ng  Limited 5 5
  6. 6. Engage  in  a  Conversa3on • Use  stories  to  facilitate  a  dialogue  between  the   team  and  the  users,  the  customers  and  the   other  stakeholders • A  story  is  not  a  specifica3on  but  captures  the   essence  of  a  conversa3on  about  the  features   of  a  product • This  encourages  crea3vity©  2011  Pichler  Consul3ng  Limited 6 6
  7. 7. Story  Wri3ng  is  Teamwork • Collaborate  to  discover  and  describe  your  user   stories • Leverage  the  crea3vity  and  knowledge  of  the   team  and  the  stakeholders   • Have  regular  product  backlog  grooming   workshop  to  jointly  refine  your  user  stories©  2011  Pichler  Consul3ng  Limited 7 7
  8. 8. Keep  it  Simple • Use  language  that  is  easy  to  understand – Avoid  confusing  and  ambiguous  terms – Use  ac3ve  voice • Focus  on  what’s  important,  and  leave  out    non-­‐ essen3al  informa3on – Rewrite  your  stories  to  improve  them – Wri3ng  is  an  inherently  itera3ve  process©  2011  Pichler  Consul3ng  Limited 8 8
  9. 9. Progressively  Refine  your  Stories State Subject As an enterprise user, I want to Select Recipient state a subject As an enterprise user, I want to select one or more recipients Compose email State Recipient from my contact listAs an enterprise user, As an enterpriseI want to compose user, I want to statean email one or more Enter Recipient recipients As an enterprise user, I want to enter Set Importance a recipient As an enterprise user, I want to set the importance©  2011  Pichler  Consul3ng  Limited 9 9
  10. 10. Use  Acceptance  Criteria • Add  acceptance  criteria  to  your  user  stories  as   you  break  epics  into  detailed  stories • Acceptance  criteria  complement  the  story’s   narra3ve,  state  when  the  story  is  complete,   and  ensure  that  it  is  testable • My  rule  of  thumb:  Detailed  stories  should  have   three  to  five  acceptance  criteria©  2011  Pichler  Consul3ng  Limited 10 10
  11. 11. Group  Stories  into  Themes • Each  theme  represents  a  product  capability  or   a  goal;  it  groups  related  stories   • Themes  have  several  benefits – It  is  easier  to  check  for  completeness  and   consistency – We  can  first  priori3se  the  themes,  then  the  stories – Find  the  right  stories  is  easier©  2011  Pichler  Consul3ng  Limited 11 11
  12. 12. Use  Paper  Cards • Paper  cards  facilitate  collabora3on:  Everyone  can   grab  a  card  and  write  down  an  idea • They  can  be  easily  grouped  on  the  table  or  wall  to   check  for  consistency  and  completeness • If  you  have  to  use  an  electronic  tool,  print  out   stories  on  cards  for  your  story  wri3ng  workshops;   transfer  the  new  informa3on  back  into  the  tool©  2011  Pichler  Consul3ng  Limited 12 12
  13. 13. Visualise  your  Stories • Stories  want  to  communicate – Put  them  up  on  the  wall  so  that  everyone  can  see   them – Don’t  hide  them  on  a  network  drive  or  in  the   corporate  intranet  jungle! • If  you  are  short  of  wall  space – Ask  yourself  if  all  your  stories  are  really  necessary   to  create  a  successful  product – Consider  displaying  only  the  high  priority  ones  ©  2011  Pichler  Consul3ng  Limited 13 13
  14. 14. Some  Things  aren’t  Stories • Use  prototypes  or  sketches   to  capture  user  interface   requirements • Use  constraint  cards  to  describe  opera3onal  quali3es Performance Constraint Acceptance Criteria • 10 000 concurrent read and The system must answer any write transactions take place request in less than one • Each transaction has a data second size of 500 KB • The system configuration is “small enterprise “©  2011  Pichler  Consul3ng  Limited 14 14
  15. 15. Famous  Last  Words “Storytelling  reveals  meaning   without  commi5ng  the  error   of  defining  it.” Hannah  Arendt©  2011  Pichler  Consul3ng  Limited 15 15
  16. 16. More  Informa3on Cohn,  Mike.  2004.  User  Stories  Applied:  For  Agile  So@ware   Development.  Addison-­‐Wesley Jeffries,  Ron.  2001.  EssenCal  XP:  Card  ConversaCon,  ConfirmaCon.   xprogramming.com/ar3cles/ expcardconversa3onconfirma3on/ Pichler,  Roman.  2010.  Agile  Product  Management  with  Scrum.   Addison-­‐Wesley Pichler,  Roman.  2010.  Wri3ng  Good  User  Stories.                                                         www.romanpichler.com/blog/user-­‐stories/wri3ng-­‐good-­‐user-­‐ stories/ Wake,  Bill.  2003.  INVEST  in  Good  Stories,  and  SMART  Tasks.   www.xp123.com/xplor/xp0308/index.shtml©  2011  Pichler  Consul3ng  Limited 16 16