Transcript
Page 1: Crafting Great-User-Stories for CapitalCamp DC

Crafting Great

User StoriesShannon Lucas

July 23rd, 2011

Page 2: Crafting Great-User-Stories for CapitalCamp DC

OutlineWhat and why

Writing stories

User roles & personas

Things that aren’t stories

Tracking stories

Examples

Page 3: Crafting Great-User-Stories for CapitalCamp DC

What a user

story isn’t

Page 4: Crafting Great-User-Stories for CapitalCamp DC

Functional

RequirementsDefined by IEEE 830

Contractual in nature

Example:3.4) The product shall have a gasoline-powered engine.3.5) The product shall have four wheels.

3.5.1) The product shall have a rubber tire mounted to each wheel.

3.6) The product shall have a steering wheel.3.7) The product shall have a steel body.

Page 5: Crafting Great-User-Stories for CapitalCamp DC

Use CasePart of Rational Unified Process (RUP)

Large in scope

Permanent artifacts

Purpose is to document agreement

Page 6: Crafting Great-User-Stories for CapitalCamp DC

Interaction ScenarioDetailed description of a user’s interaction with a system

Larger in scope than a use case

Emphasis on realism and detail

Characteristics:SettingActorsGoalsEvents

Page 7: Crafting Great-User-Stories for CapitalCamp DC

What a user

story is

Page 8: Crafting Great-User-Stories for CapitalCamp DC

What a User Story isExpresses functionality in terms of value to customers or users

Uses the language of the customer

Cross-cuts technical concerns

Emphasizes shared understanding

Page 9: Crafting Great-User-Stories for CapitalCamp DC

Cross-cutting

concerns

Single User Story

Page 10: Crafting Great-User-Stories for CapitalCamp DC

Cross-cutting

concerns

Single User Story

Page 11: Crafting Great-User-Stories for CapitalCamp DC

Why user

stories?

Page 12: Crafting Great-User-Stories for CapitalCamp DC

Benefits of storiesFocus is on user goals rather than system attributes

Defer detail till needed

Promote tacit knowledge across team

Humans remember stories

No illusion of precision

Stories are not contractual obligations

Page 13: Crafting Great-User-Stories for CapitalCamp DC

Writing stories

Page 14: Crafting Great-User-Stories for CapitalCamp DC

Structure of a User

StoryWritten Description

As a <user role>, I want to <goal> so that <benefit>.

Conversation

Confirmation

Page 15: Crafting Great-User-Stories for CapitalCamp DC

Acceptance criteriaConditions of satisfaction

Need to be specified by the customer

Written before the programmer begins coding

Should clarify the intent of the story to the developers

Must be testable

Page 16: Crafting Great-User-Stories for CapitalCamp DC

Qualities of a User

StoryFit on an index card

Written for a single user

Written in active voice

Written in language of the business

Avoid UI and technical details

Page 17: Crafting Great-User-Stories for CapitalCamp DC

Qualities of a User

StoryI - Independent

N - Negotiable

V - Valuable

E - Estimable

S - Small

T - Testable

Page 18: Crafting Great-User-Stories for CapitalCamp DC

User roles &

personas

Page 19: Crafting Great-User-Stories for CapitalCamp DC

User RolesThere’s no generic “user”

Each role is a single user

Can be humans or other systems

Abusers

Extreme characters

Page 20: Crafting Great-User-Stories for CapitalCamp DC

PersonasImaginary representation of a user role

Has a name, a photo, and a bio

Has an explanation of their motivations for using the product

Page 21: Crafting Great-User-Stories for CapitalCamp DC

Things that

aren’t stories

Page 22: Crafting Great-User-Stories for CapitalCamp DC

Things that aren’t

storiesConstraints

Models & Workflows

Storyboards

Wireframes

Page 23: Crafting Great-User-Stories for CapitalCamp DC
Page 24: Crafting Great-User-Stories for CapitalCamp DC

Storing &

tracking stories

Page 25: Crafting Great-User-Stories for CapitalCamp DC

Storing and tracking

storiesSpecialized tools

Post-It notes

Spreadsheets

Page 26: Crafting Great-User-Stories for CapitalCamp DC

Example Stories

Page 27: Crafting Great-User-Stories for CapitalCamp DC

Abuser StoryAs l33th@x, I want to put malicious content on the home page so that I can embarrass the company for not hiring me.

Page 28: Crafting Great-User-Stories for CapitalCamp DC

Bad User StoryAs a user, I want to register for a volunteer event so I can begin fundraising.

Page 29: Crafting Great-User-Stories for CapitalCamp DC

Good User StoryAs a volunteer, I want to create an account so that I can share my availability for volunteering to event planners.

Page 30: Crafting Great-User-Stories for CapitalCamp DC

Bad User StoryAs a volunteer I want to create an account so I can log in.

Page 31: Crafting Great-User-Stories for CapitalCamp DC

Good User StoryAs a donor, I want to donate to my friend's fundraising event online, so I can support her charity efforts.

Page 32: Crafting Great-User-Stories for CapitalCamp DC

Bad User StoryAs a staff member, I want to be able to train new staff quickly and efficiently using print or online resources, so that they can feel comfortable quickly.

Page 33: Crafting Great-User-Stories for CapitalCamp DC

Good User Story?As a political candidate, I want to participate in online discussions with potential voters so that I can understand what's really important to them.

Page 34: Crafting Great-User-Stories for CapitalCamp DC

Questions?

Page 35: Crafting Great-User-Stories for CapitalCamp DC

Thank you!

Page 36: Crafting Great-User-Stories for CapitalCamp DC

ResourcesScrum.org - http://www.scrum.org/

Scrum Alliance - http://www.scrumalliance.org/

All Things Product Owner - http://www.romanpichler.com/blog/user-stories/

User story tools: http://www.userstories.com/products

User Stories Applied by Mike Cohn


Top Related