Stories and Scenarios

Scenarios

Scenarios

  • A scenario is a specific story that demonstrates how a specific user in a specific situation accomplishes some goal thanks to app
  • Key elements:
    • characters
    • conflict
    • plot
    • resolution

Scenario Uses

TypePurpose
4-Panel An illustrated example to articulate vision of app for developers and potential users
Demo A live example to demonstrate feasiblity and value of app to potential users
Acceptance test Specific example to test new user stories

User stories

User stories

User Story Examples

  • A shopper can add items to a list in order to know what to buy when at the grocery story
  • A parts vendor can upload a price list spreadsheet to update a catalog page in order to avoid entering data twice
  • Some nice examples emphasizing roles and goals

Measuring development

MethodExampleFocus
Code add sort state and button to App.js developer work
Feature add sort by price app functionality
User story add sort by price to find cheapest item user value

Goals drive implementation

  • Story: a shopper can sort products by price to find the cheapest one
  • Should the sort be ascending or descending?
  • Story: a shopper can sort products by rating to find the best one
  • Should the sort be ascending or descending?

User Story Pitfalls

  • Stories about user interface design (dropdown, checkbox, swiping)
  • Stories without goals
  • Stories about a "user" rather than a role
  • Stories about coding tasks
  • Big stories (epics)
  • Stories about friction (login, data entry, profile creation, ...)
Common user story mistakes and how to avoid them

A 394 Refinement

Goals are hard

  • There are many bad goals for user stories.
    • Vague high-level goals, like "login in so I can use the system"
    • App-specific goals, like "click sort so I can see items sorted"
    • Untestable goals, like "I can easily see" or "I can quickly see"
  • For one example of what real user goals look like, read user stories vs user goals

Scenarios instead of Goals

  • Scenarios have clear user goals. Scenarios have acceptance tests.
    • Scenario: Shopper finds cheap headphones.
      Test: <specific example steps to find cheap headphones>
  • So, replace user story goal with relevant user story scenario.
    • User story: A shopper can sort items by price.
      Scenario: Shopper finds cheap headphones.
ScenariosUser Stories
Story Specific example from problem to payoff:
A teacher at start of term uses app to form teams balanced by gender and coding skills
A single user action, no specific context
professor can upload skill survey results to avoid extra data entry
Structure Present or past tense sentence, specific details:
John marks milks as purchased when checking out
"can" action, generic:
professor can delete skill from list
Usage Focus development on common important scenarios Trackable unit of development progress
Test with User tests Unit tests