1 / 98

User Stories & Planning Game

User Stories & Planning Game. XP Immersion Vernon Hills, IL Ron Jeffries [Ann Anderson (in spirit)] [Chet Hendrickson (in spirit)]. User Stories & Planning Game. Learn by Doing Release Planning 3 hr Acceptance Tests 45 min Estimating 45min Writing Stories 45 min

Download Presentation

User Stories & Planning Game

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. User Stories & Planning Game • XP Immersion • Vernon Hills, IL • Ron Jeffries • [Ann Anderson (in spirit)] • [Chet Hendrickson (in spirit)] User Stories & Planning Game

  2. User Stories & Planning Game • Learn by Doing • Release Planning 3 hr • Acceptance Tests 45 min • Estimating 45min • Writing Stories 45 min • Release Plan 45 min (???) • Iteration Plan 45 min User Stories & Planning Game

  3. Business Value • Extreme Programming • Delivers and • Steers by • Business Value • Business Value belongs to the customer! User Stories & Planning Game

  4. Cards, Cards, nothing but Cards • Stories on cards • Estimates on cards • Release planning with cards • Iteration planning with cards • Designing with cards User Stories & Planning Game

  5. Why Cards • Tangible • Non-threatening • Modular • Replaceable • Biodegradable • Provide fiber User Stories & Planning Game

  6. Card Issues • Losing them • Distributing them across the world • Paper cuts User Stories & Planning Game

  7. Process Overview • Customer writes stories on cards • Customer defines acceptance test for story • Programmer estimates stories • Customer selects stories for release • Customer selects story for iteration • Programmer defines tasks for story • Programmer signs up and estimates tasks • Programmer does tasks (with partner) • Customer accepts completed stories User Stories & Planning Game

  8. Exercise – Release Planning • Simulate a project several times • There will be a score for each team • But there will be no prizes  User Stories & Planning Game

  9. Exercise – Release Planning • Important new project • Executive Visibility • 45 Features • Six Months • Plan the Project month by month • Do the Project User Stories & Planning Game

  10. What you may experience • Confusion or Fear • This is something new • Frustration • This isn’t my job! • But it is • Too many stories, not enough time • Pay attention to what you feel as you go. User Stories & Planning Game

  11. Release Plan Discussion • What have we learned? • Stories have varying costs • Team can only do so much per month • Stories have varying value • Value lost if you never release • Value maximized if you release often • Highest value is not always highest priority • What else? User Stories & Planning Game

  12. Exercise – Acceptance Tests • You have been picked by the executives (us) to build our new ATM software. • Elect a Customer • Read and understand stories • Define acceptance tests • Make decisions within your team, but we have important needs. Check with us wisely. User Stories & Planning Game

  13. What you may experience • Confusion or Fear • This is something new • Frustration • This isn’t my job! • But it is • Too many stories, not enough time • Pay attention to what you feel as you go. User Stories & Planning Game

  14. Acceptance Test Discussion User Stories & Planning Game

  15. Exercise - Estimation • Now we senior executives need to know how long the ATM will take to complete. • System Design (as a group?) • Estimate each story • Read and discuss tasks • Estimate time to complete • Write on card with Pencil User Stories & Planning Game

  16. What you may experience • Confusion, fear • Too many stories, not enough time • Pay attention to what you experience User Stories & Planning Game

  17. Estimation Discussion User Stories & Planning Game

  18. Estimating Stories • What is the best way to know how long something will take? • Do it and pay attention to how long it took. • But that’s not possible ... • Or is it? User Stories & Planning Game

  19. Estimating Stories • Break stories down until you reach ... • Programs you have already written • Experiment where you have no experience • Exploration must precede estimation! User Stories & Planning Game

  20. Standard Algorithms • Reports • record layout • selection • headers • footers • summaries • ==> 1/2, 1, 2 days User Stories & Planning Game

  21. Standard Algorithm • GUI • Sketch Screen • Number of widgets • Number of data sources • Number of actions • ==> 1/2, 1, 2 days User Stories & Planning Game

  22. Estimating Stories • Assume Simplicity • Trust your refactoring • Split when more than two weeks • Split when part seems difficult • Easy cards • Hard cards • Unknown cards - Explore!! User Stories & Planning Game

  23. Estimating Stories • TRAP: Should we do X, or Y? • Doesn’t change the estimate? • Just estimate. • Changes the estimate? • Pick simpler and estimate User Stories & Planning Game

  24. Estimating Stories • What if one way of implementing offers some real benefit? • Make it a story. • Trust the customer • Trust refactoring User Stories & Planning Game

  25. Estimating Stories • Estimating is a team process • Deal with any story in 3 minutes or less • estimate • min/max estimate • split • schedule exploration • Become an estimating machine! User Stories & Planning Game

  26. Estimating Stories • Estimate based on experience • Don’t engineer. • Don’t OVER-engineer. • You MUST be prepared! User Stories & Planning Game

  27. Estimating Stories • Programmers split into groups • Estimate all stories • Lower any estimate unilaterally • Discuss estimates that seem too low • Try not to raise them User Stories & Planning Game

  28. Exercise – Writing Stories • You are to define our new course registration system. • Split into two groups of about 4 • Write all the stories for this application • Take turns: one story per person • Non-writing members help • ask questions • estimatable • acceptance test User Stories & Planning Game

  29. What you may experience • It’s too easy • It’s too hard • It’s too phony • Tendency to over-specify • Tendency to specify implementation • Pay attention to what happens and what you experience User Stories & Planning Game

  30. Writing Stories Discussion User Stories & Planning Game

  31. Getting Stories • Stories • must belong to customer • must have business value • must make sense to programmer • must be estimatable • Stories must belong to customer User Stories & Planning Game

  32. Story Parts • Card • text describing the story • Conversation • the real understanding • Confirmation • the acceptance test User Stories & Planning Game

  33. Example Story • Cost of Living Allowance (COLA) • EEs may receive COLA. Some unions pay a fixed $ amount per pay. Some pay a percentage of base. Amount or percentage varies by union and location. COLA rates change at specified times for different unions. • Each EE receives COLA in each check. User Stories & Planning Game

  34. COLA Confirmation • Acceptance Test • Provide EEs from each union and from no union. Pay each EE for three pay periods, test whether COLA amount properly calculated. • Determine whether COLA amount properly displayed on check or EFT stub. User Stories & Planning Game

  35. Employee GUI Story • Change obligation printout in EE GUI to look like the check stub. Copy attached. User Stories & Planning Game

  36. Union Dues • Biweekly bargaining unit EEs are charged union dues automatically. Dues vary by union, location, time in grade, and by SSN (10 EEs). • Dues are taken ONLY in first pay of month. User Stories & Planning Game

  37. Getting Stories • Joint effort, programmers and customers • Don’t outnumber them • Get customers writing • Help customers focus on value • Help customers keep stories estimatable • Stories belong to customer!! User Stories & Planning Game

  38. Getting Stories • Customer writes stories • don’t create • don’t translate into tech talk • just UNDERSTAND • Therefore • educate customer on issues • don’t take responsibility back • Listen, don’t tell • Tell me about ... User Stories & Planning Game

  39. Getting Stories • Offer flexibility when easier • Withhold flexibility when harder User Stories & Planning Game

  40. Getting Stories • Offer flexibility when easier • Instead of just four adjustment entries, how about we accept any number, in a scrolling list? User Stories & Planning Game

  41. Getting Stories • Withhold flexibility when harder • Do you want to be able to sort and search on all combinations of all fields? User Stories & Planning Game

  42. Getting Stories • Split stories that are too big to estimate • We want to be able to query the database and find any record based on any attribute. We need reports with summaries on all major dimensions, and two- and three-dimensional graphs. We need faster-than-light communication and the ability to walk on water. User Stories & Planning Game

  43. Getting Stories • Split parts with different priorities • In this story with the display and the sorting and the filtering, is each of those features equally important? No? How about if we break them out? User Stories & Planning Game

  44. Exercise – Release Plan • Produce a release plan for your course system • Two customers move to next table • Explain stories to programmers. Use acceptance test as necessary. • Programmers estimate stories • Plan against calendar. Ask instructors for velocity. User Stories & Planning Game

  45. What you may experience • Time pressure • Not enough to do • Pay attention to what you experience User Stories & Planning Game

  46. Exercise – Release Plan Again User Stories & Planning Game

  47. Release Plan Discussion User Stories & Planning Game

  48. Release Plan • Exploration • Commitment • Steering User Stories & Planning Game

  49. Release Plan • You MUST be prepared! • Have the stories • Be familiar with them • Spikes and explorations • Metaphor • You MUST be ready to estimate! User Stories & Planning Game

  50. Metaphor • Common vision • how the program works • what it is “like” • Lack of metaphor • MUCH reduced communication • weaker plan • slower progress User Stories & Planning Game

More Related