How to write good user stories

6,756 views

Published on

Published in: Technology

How to write good user stories

  1. 1. Writing better user stories José E. Rodríguez Huerta (@jrhuerta)
  2. 2. Disclaimer Not a single original thought in this presentation. Although there is some first hand experience
  3. 3. What this talk is about •  Why use user stories at all? •  Some guidelines on how to improve •  Identifying common “user story smells…”
  4. 4. Why use User stories at all?
  5. 5. Requirements gathering is an integral part of software development
  6. 6. Common pitfalls •  Lack of context •  Fail to deliver value •  Overly specified •  User/Client doesnt know what they want. •  No priorization •  Hard to build incrementaly •  Difficult to estimate •  Too long… Didn’t read. •  Too technical… Didn’t read. •  Long time to market cycle •  Not always clear who the users are and what they expect from the software. •  Long feedback loops from users/stakeholders •  Acceptance criteria is: everything is implemented. •  Hard to maintain
  7. 7. User stories to the rescue!
  8. 8. Yes, they are still a requirements document, but…
  9. 9. They are cool
  10. 10. How do User Stories address those problems? •  Provide Context => Aligment •  End user/customer language, makes it easy to read/understand bridges the gap between technical and business •  Focus on Delivering Value •  User/Customer centered •  Small, Cheap •  Easily priorizable and re- priorizable •  Versatile •  Switch the focus to communication instead of a detailed specification. •  Shortens Time to Market.
  11. 11. What is a user story? three critical parts: – Card – Conversation – Confirmation (“conversation placeholders”)
  12. 12. What is a “Good” USER STORY?  
  13. 13. It helps YOU to solve your problem
  14. 14. Defining a “good” u.s. •  follows the INVEST acronym (by Bill Wake) •  Defines conditions FOR “satisfaction” (in DoD) •  Defines conditions FOR “readyness” (in DoR)
  15. 15. Defining a “good” U.S. •  Uses the customer’s language •  has the Who, the What and Why •  Everyone participates in defining/refining
  16. 16. I.N.V.E.S.T. •  Independent •  Negotiable •  Value •  Estimable •  Size/Small •  Testable
  17. 17. I for Independent Independent also means it can be built incrementaly and iteratively
  18. 18. Incremental Art  by  Jeff  Pa,on  
  19. 19. Iterative Art  by  Jeff    Pa,on  
  20. 20. Incremental-Interative Art  by  Steven  Thomas  
  21. 21. I for Independent Ok… maybe, some dependency
  22. 22. N for Negotiable •  Avoid implementation details – It says the What, not the How. •  Its not carved in stone – Until its part of an iteration it can still be rewritten
  23. 23. V for Value Provide value to your customer with every story
  24. 24. V for Value
  25. 25. V for Value
  26. 26. V for Value
  27. 27. E for Estimable Otherwise you can’t know when it will be done (or if it will ever be…)
  28. 28. S for Size/Small •  If its too big, split it. –  Learn how. •  If it too small, maybe its not a user story –  I smell micromanagement!
  29. 29. T for Testable If it’s not worth testing it… Is it worth writting it?
  30. 30. Not everything is a User Story
  31. 31. What? •  The process context: –  Definition of Done –  Definition of Ready •  Non functional requirements: –  Requirements that extend through the whole project
  32. 32. Use aids to “Power Up” •  Wireframes •  Navigation maps •  Color tags •  Personas •  User Story maps •  Anything else you may find useful
  33. 33. Use aids to “Power Up” •  Wireframes •  Navigation maps •  Color tags •  Personas •  User Story maps •  Anything else you may find useful
  34. 34. Revise and Refine and even Re-do •  User stories are alive, they: –  Are Born –  Grow –  Reproduce –  Die •  Make time to groom your backlog with the team and client
  35. 35. user story smells
  36. 36. User Story smells… •  Too much detail or too little detail •  No conditions of satisfaction •  A story per page/component or sliced in ways that don’t deliver value •  Technical tasks masqueraded as user stories •  Skipping the conversation
  37. 37. 15m is not a lot of time so…
  38. 38. Where DO I get more info? •  Agile Barcelona community (@agilebcn) •  Books: –  User stories applied: For Agile Software Development by Mike Cohn –  Lean UX: Applying Lean Principles to Improve User Experience by Jeff Gothelf & Josh Seiden •  The Mountain Goat Software: http://www.mountaingoatsoftware.com/ •  Google
  39. 39.   Thanks Any questions? (@jrhuerta)

×