2. What Are We Doing Tonight? Decomposing a vision into stories Vision -> Epics/Features -> Stories The use of story mapping to prioritize and plan a release Work through an example together Have fun
3. Do you use a Vision today? Do you find it valuable? How do you use it?
4. Vision Describes the problem being solved for a release Describe a product solution Provides a list of features delivered in the release Creates shared understanding of purpose
7. Epics Large initiatives delivering new products, solutions, or services to customers Comprised of a large collection of features which may span releases Represents a theme and are “fuzzy” requirements – at this point
8. Features Capabilities that the product owner is interested in Are delivered within releases Provides value to users Realized by some number of user stories
9. Features: ShipFlix Users can cancel their account Ten DVDs can be added to viewing queue Users can create an account with a valid CC Two DVDs can be out at any one time # DVDs out can be increased with higher fee Streaming will be supported in IE and Firefox …. Movies can be streamed to Windows computers
10. What is a story? Once upon a time there was a misunderstood wolf that…
12. User Stories A user story describes functionality that will be of value to a user Represents smallest increment of value Contained within a sprint or less
13.
14.
15. Story written as: Starts with a title Description: As a <role>, I want to <goal>, so that <benefit> Acceptance criteria to define when we’re done
16. INVEST Model for Stories There should be no dependencies between stories Independent Describes functionality to be negotiated between the customer and development Negotiable Valuable to the user or purchaser Valuable Have enough detail to estimate without being too detailed Estimatable They should be small, one sprint or less Small Worded in a way that they can be tested Testable
17. Stories: ShipFlix As a user, I want to keep 2 DVDs at any time, so I have viewing choices at home As a user, I want pre-paid envelopes for returning DVDs, so I don’t have extra costs. As a shipping clerk, I want to see how many disks are out, so I don’t send too many to a customer. As a warehouse receiver, I want to scan returned disks, so I can quickly credit the customer’s account
18. Benefits of Story Mapping Provides visibility of the workflow across the system Points out relationships between stories Helps to spotlight missing stories Provides a prioritization mechanism Release planning is improved by focusing on valuable slices
19. Story Mapping Usage Sequence Feature 3 Feature 1 Feature 4 Feature 2 Arrange features or activities in the order they are done.
20. Story Mapping Usage Sequence Feature 3 Feature 1 Feature 4 Feature 2 User Story User Story User Story User Story User Story User Story User Story User Story User Story Identify stories that support features or activities User Story
21. Prioritize stories Usage Sequence More important Feature 3 Feature 1 Feature 4 Feature 2 User Story User Story User Story User Story User Story User Story User Story User Story Less Important User Story Arrange stories so most necessary are at the top User Story
22. Create horizontal slice Usage Sequence More important Feature 3 Feature 1 Feature 4 Feature 2 User Story User Story User Story User Story User Story User Story User Story User Story Less Important User Story Pick necessary stories that are required for a first release User Story
23. A Skeleton Release Usage Sequence More important Feature 3 Feature 1 Feature 4 Feature 2 User Story User Story User Story User Story User Story User Story User Story User Story Less Important User Story Prioritization considers business workflow and value of stories within the context of the whole system User Story
27. Features Request money from another user Send money to another user Configure funding account Sign up for a P2P account Administer P2P system Manage money transfer disputes
28. Exercise – Features Goal: Based on the problem statement and product position, define a set of features Break into teams Choose someone in your team to present your features You have 10 minutes to define features
29. Review Features Each team will describe the features Place your “features” on the wall Other teams should listen for duplicates and remove them from their set of features Order features horizontally by usage
30. Exercise - Stories Each team will be given one or two features Create a set of stories for those features For each story think about: The kind of user who uses it How often it is used (often, sometimes, rarely) How valuable is it (high, medium, low) You have 15 minutes for this exercise
31. Features arranged by order Order of activities Send money to another user Sign up for a P2P account Request money from another user Configure funding account
32. Identify stories by feature Order of activities More important Send money to another user Sign up for a P2P account Request money from another user Configure funding account Sign into P2P Sign into P2P Sign into P2P Register for P2P Sign into P2P Configure bank account Send money to P2P user Send money request to P2P user Less Important Confirm bank account Configure credit card account
33. Create horizontal slice Order of activities More important Send money to another user Sign up for a P2P account Request money from another user Configure funding account Sign into P2P Sign into P2P Sign into P2P Register for P2P Sign into P2P Configure bank account Send money to P2P user Send money request to P2P user Less Important Confirm bank account Identifies a first release Configure credit card account
34. For Each Release: Give it a name or statement that describes the purpose Describe the benefits and goals for the business Describe the benefits or value the users get Release 1: Two DVDs out to customers Business Value: Begin creating a user base to offer more profitable capabilities User Value: Ability to have two DVDs out for viewing at home without the hassle of storefront rentals.
35. Exercise – Story Mapping Goal: Create a slice of the system for an initial release Arrange stories under each feature Order stories vertically by importance Identify missing stories and fill in Determine what stories must exist in an initial release – creating a slice
36. Story Mapping Wrap Up Sets an overall context for the backlog Targets business and user goals for delivery Prioritization capability for release roadmaps* Release N: the necessities (skeleton) Release N+1: more capabilities and flexibility Release N+x: comfort, performance, luxury * As described by Jeff Patton
37. Rick Austin Email: rick@rickaustin.net Twitter: rickaustin Blog: http://blog.capabilitydevelopment.net