user stories
TRANSCRIPT
User Stories - Slide 1
User Stories
e x c e l l e n c e a n d i n n o v a t i o n w i t h p a s s i o n
User Stories - Slide 2
A Bit About Me
Angela Martin
13 + Years Industry Experience
(Past) Director of Agile Alliance
PhD Candidate
– A Grounded Theory on the Role ofCustomers in XP Projects
Contact Details
– e: [email protected]
– p: 07717 653 971
User Stories - Slide 3
Coming Up …
Introduction (10 mins)– User Stories– Acceptance Criteria
Exercise (60 mins)– Define business goal– Agree users, stories– Plan a release– Do first iteration
Create a checklist (20 mins)– What works– What doesn’t work
User Stories - Slide 4
What is a User Story?
A user story is a short paragraph description of a systemrequirement or feature that is:
…understandable to customers and developers, testable,valuable to the customer and small enough so that theprogrammers can build half a dozen in an iteration.
…A user story is nothing more than an agreement that thecustomer and developers will talk together about afeature. [Beck et al, 2001, p. 45-6]
Strongly recommended: write a story on an index card
User Stories - Slide 5
User Story Template
As a I … < role> …I want … <short description of feature> …So that … <value or why need functionality> …
Examples:
– As a cell-phone user I want to be able to make calls
– As a regular traveler I want to be able to use my cell-phonewhen I am located in other countries
– As a regular traveler I want my cell-phone to wake me up ata set time so that I do not need to pack an alarm clock
User Stories - Slide 6
Acceptance Criteria
Another component of a good story is acceptancecriteria
– Conditions of acceptance
– Knowing when we are done
Example:
– As a regular traveler I want my cell-phone to wake me up ata set time so that I do not need to pack an alarm clock:
Verify that I can set the time the alarm will go-off Verify that the alarm will turn the phone on if it’s currently off Verify that I can snooze the alarm
User Stories - Slide 7
Acceptance Criteria Template
A common acceptance criteria template used is:
Given … <some initial context (the givens)> …When … <an event occurs> …Then … <ensure some outcomes> …
Example:
– Given my cell-phone is switched offWhen the time for my alarm is reachedThen turn the cell-phone on and sound the alarm
User Stories - Slide 8
An Example
Ref No
Title
Story
Estimate
User Stories - Slide 9
T’other Side of Example
AcceptanceCriteria
User Stories - Slide 10
Exercise Preparation
Split into groups of 4-6
What sorts of things do weexpect will be on ourchecklist (at the end)?
What other things might weneed to learn about userstories?
User Stories - Slide 11
Exercise I
Agree your context (what system are you going to writestories for?) [2 mins]
– For example, the simplest possible on-line dating system(imagine you have only 1-month to get the first release out)
Now, imagine the end-users of the system, who mightthey be, and what would their goals be? Which usersshould we focus on for the first release?[5 mins]
Write high level stories to cover the breadth offeatures required [10 mins] for each of the usersprioritized
User Stories - Slide 12
Exercise II
Release Planning. Imagine you will release in one month,and you have four one week iterations. Work togetherto create a release plan. [10 mins]
Iteration Planning. Work together to plan the firstiteration in detail. [10 mins]
During the Iteration. Use paper to create the outputfor your first iteration together. [10 mins]
Show-and-tell. Outline your release plan anddemonstrate the paper system to the group [10 mins]