Professional Documents
Culture Documents
3
Why should I use them?
■ It is a piece of customer-visible functionality
written in common language
Universally understood
■ Ensure you only build things for a reason
Prevents waste
■ Simple and flexible
Minimum overhead
■ Proven way of gathering requirements on agile
projects
Effective teams
4
Story 3-CsCARD
USER
STORY
CONFIRMATION CONVERSATION
5
Story 3-CsCARD Physical token
Used in planning
Reminder for a
conversation
Often annotated avele
r on b
udget
f nam
es an
d
As a tr see a list o in
t to ho te ls
I wan ilable
of ava
prices t w eeken
d
tel I c
an
ne x t a ho
Paris a n selec
at I c
So th
USER afford
STORY
CONFIRMATION CONVERSATION
6
Story 3-CsCARD
Requirement itself
Verbal conversation /
workshops
Documents / wireframes /
USER mocks?
STORY
CONFIRMATION CONVERSATION
7
Story 3-CsCARD
Acceptance criteria
Determine done
USER
STORY
CONFIRMATION CONVERSATION
8
In a nutshell
Moving from statements about what the system should do…
As a <role>,
I want to <business goal>,
so that <value/motivation>
9
As a <role>
s i n e s s g o a l >
I want to <bu
So th a t < v a l u e >
INVEST Principle
1
INVEST Principle
V Valuable
n b u dget
r a v e ler o I can
a t t e l
As
le c t a ho
Someone is benefiting from
a t I c an se
what we are building So th
afford
Why are we building
it?
1
INVEST Principle
T Testable
b u dget
v e le ro n
le hotels
ra ilab
As a t f a v a
e e a list o
w a n t to s e e kend
I w
Now we know what to
a r is next e l I can
P t
do and know when we in
e le c t a ho
a t I c an s
will be done So th
afford
1
INVEST Principle
S Small
n b u dget
r a v e ler o s and
a t m e
As
lis t of na P aris
e e a in
a n t to s le ho tels
w
Just enough to get
I
o f a vailab
prices
feedback and avoid
w e e kend l I can
n e x t ho t e
waste
s e le ct a
t h a t I can
So
afford
1
INVEST Principle
I Independent
b u dget
v e le r on , p rices
t r a e s
As a s t o f nam a ilable
li a v
t t o s ee a ir po r t of
I wan c e f r om a end
Should be able to realize is t a n w e e k
the value of each single and d a r is next a f f ord
in P l I ca n
hotels h o t e
story.
n s e lect a
t h a t I ca
Distance from the airport So
can be in another story.
1
INVEST Principle
N Negotiable I wa nt
avele
to
r on b
As a tr see a list o
udget
ilable
h
f nam
o te
es an
ls in
d
of ava
prices t wee
kend can
e x otel I
Paris
n ct a h
t I c a n ele
s
a
So th
afford
As a
trav
I wa e
nt to ler on b
pric see udg
es o a lis et
Paris f ava t of
ilable nam
N es a
So t Y next h ot nd
hat I wee els in
affo c an s k end
rd elec
tah
otel
I can
Okay!
1
INVEST Principle
E Estimable
#247
#765
#134
#003
1
Getting practical
I Independent V Valuable
N Negotiable T Testable
1
Acceptance criteria
■ Tell you the story is finished Acceptance tests tell
you the system is working
■ A story can have one or multiple AC’s
■ It informs the criteria to the tests that will be
implemented or executed
■ Common format:
Give <context>
When <event>
Then <outcome>
2
Acceptance criteria
Given the customer has one transaction account and one credit
r
g c ustome account
kin
r net Ban y When they have completed logging in
As an
In t e
e lis t of m
th
w a n t to see Then the screen should show the names and numbers of the two
I accounts sorted in account number order
c o u nts os e to see
a c ch o
t h at I can articu
lar
so so f a p Given the customer has just one transaction account
detail
more When they have completed logging in
nt
accou Then the screen should show the name and number of the account
22
What is not in a user story
23
Story details at the right time
t to …
to … I wan
I want As a …o that .
t to … As a … …
s
I wan so th a t
when
As a … at …. done
so th … ill be
when We w
done en …
ill be … Th
We w n … When
Giv e
24
Why just-in-time?
■ Reduces potential wastage
■ Provides flexibility to change, prioritize
■ Enables learning from delivery
■ Tighter feedback loop between business and the
delivery team
size
time
25
Story Breakdown
Story breakdown
27
Splitting by feature
Social Network
Login
4
28
Splitting by priority
Social
The resulting
Network stories Sign in with
Facebook
Login are independently
prioritized,
revealing
a range of priorities
Sign in with
Twitter
Sign in with
LinkedIn
29
Splitting by value
30
Splitting by risk
As a Insurance Actuary
I want live metrological data
displays
so that I can adjust insurance
calculations in real time
100
As a Insurance Actuary
I want daily metrological data
Spike getting live
displays
metrological data
so that I can adjust insurance
calculations in real time
5
31
Splitting dependencies
As a Customer
I want to pay by credit card
so that I can purchase
products online
13
As a Customer
As a Customer
I want to pay by credit card –
I want to pay by credit card –
all credit card types with one
one credit card type
type already implemented so
so that I can purchase
that I can purchase products
products online
5 online 8
32
Slicing vertically
For example:
Unclear wording :