stories, defects and tasks
TRANSCRIPT
Stories, Defects, Tasks and Tests
3 types of work items
User Story
A new piece of functionality
Must always add value to the
product
3 C’sCa
rdConversation
Confirmatio
n
Written reminder about the feature Details about the feature that we get by talking to users
How to we know that we’ve built the right thing?
In order to get some cashas a bank customerI want to withdraw money from an ATM
“Gherkin” format List formatGiven a jpg or png imageWhen I upload itThen it should be savedAnd it should be resized
Accepts JPG imagesAccepts PNG images
Resizes to decent size
Be careful not to describe the “How”
INVESTIndependent
The user story should be self-contained, in a way that there is no inherent dependency on another user story.Negotiable
User stories, up until they are part of an iteration, can always be changed and rewrittenValuable
A user story must deliver value to the end userEstimable
You must always be able to estimate the size of a user storySmall
User stories should not be so big as to become impossible to plan with a certain level of certaintyTestable
The user story must provide the necessary information to make test development possible
Defect
A previously “done”
feature is not working as expected
Needs enough detail that somebody who knows nothing about
the product can reproduce the issue
Detailed steps to reproduce
What did you expect to happen?
What actually happened?
Screenshots (Before and after)
Task
Defines the solution to the
problem
Defects and Stories have
tasksTasks must belong to
something
Defects/bugs for open stories are
tasks
SMARTSpecific
What? Why? Who? Where? Which?Measurable
How much? How many? How long?
AssignableMust be completable
by a single personRelevantWorthwhile? Right time?
Time-boundWhen? Can it be done in
the time available?
Acceptance Tests
Acceptance Criteria describe what needs to be
built“Build the right thing”Acceptance Tests describe how it
was built“Build the thing right”
Two forms of Acceptance
Criteria“Gherkin” formatMore descriptive, but easier to incorrectly specify implementation details
List formatEasier to write, and easier
to see gaps
Given a jpg or png imageWhen I upload itThen it should be savedAnd it should be resized
Accepts JPG imagesAccepts PNG images
Resizes to decent size
Should never contain
implementation details!
Acceptance Tests usually only use the “Gherkin”
format
Example!Acceptance criteria
Acceptance test (Scenario)Given a baby animal younger
than its recommended selling ageWhen we try to sell itThen we should be told it’s too young.
Given a rabbit called Fluffy who is 1 ½ months old
When we try to sell FluffyThen we should be told Fluffy is
too young.We should be prevented from selling animals younger than the recommended age
Given a puppy called Fang who is 1 month old
When we try to sell FangThen we should be told Fang is
too young.