3. User
Story:
is
• A
user
story
is
a
very
high-‐level
defini@on
of
a
requirement,
containing
just
enough
informa@on
so
that
the
developers
can
produce
a
reasonable
es@mate
of
the
effort
to
implement
it.
4. User
Story
• Define
a
valuable
user
value
story
• implement
and
test
it
in
a
short
itera5on
• demonstrate/and
or
deliver
it
to
the
user
• capture
feedback
• learn
• repeat
forever!
6. User
Story:
is
not
• It
is
not
a
use
case
or
a
soIware
requirement,
i.e.
a
formal
and
long
specifica@on
document
• One
of
the
biggest
misunderstandings
with
user
stories
is
how
they
differ
from
tradi@onal
requirements
specifica@ons
9. Example
User
Stories
Students
can
purchase
monthly
parking
passes
online.
Parking
passes
can
be
paid
via
credit
cards.
Parking
passes
can
be
paid
via
PayPal
™.
Professors
can
input
student
marks.
Students
can
obtain
their
current
seminar
schedule.
Students
can
order
official
transcripts.
Students
can
only
enroll
in
seminars
for
which
they
have
prerequisites.
Transcripts
will
be
available
online
via
a
standard
browser.
10. #52
Students can purchase monthly
parking passes online
Priority: 8
Estimate: 4
12. As
<type
of
user>,
<func5on>
so
that
I
can
achieve
<some-‐goal>
13. #52
Purchase Monthly Parking Pass
As a student I want to purchase
an online monthly parking pass
so that I can drive to school.
Priority: Must
Estimate: 5
27. INVEST
in
User
Stories
• Independent
Avoid
dependencies
with
other
stories
Write
stories
to
establish
founda@on
Combine
stories
if
possible
to
deliver
in
a
single
itera@on
• Nego+able
Stories
are
not
a
contract
Too
much
detail
up
front
gives
the
impression
that
more
discussion
on
the
story
is
not
necessary
Not
every
story
must
be
nego@able,
constraints
may
exist
that
prevent
it
• Valuable
Each
story
should
show
value
to
the
Users,
Customers,
and
Stakeholders
28. INVEST
in
User
Stories
• Es+mable
Enough
detail
should
be
listed
to
allow
the
team
to
es@mate
The
team
will
encounter
problems
es@ma@ng
if
the
story
is
too
big,
if
insufficient
informa@on
is
provided,
or
if
there
is
a
lack
of
domain
knowledge
• Sized
Appropriately
Each
story
should
be
small
enough
to
be
completed
in
a
single
itera@on
Stories
that
may
be
worked
on
in
the
near
future
should
be
smaller
and
more
detailed
Larger
stories
are
acceptable
if
planned
further
out
(Epics)
• Testable
Acceptance
criteria
should
be
stated
in
customer
terms
Tests
should
be
automated
whenever
possible
All
team
members
should
demand
clear
acceptance
criteria
31. Epics
• Epics
are
large
user
stories,
typically
ones
which
are
too
big
to
implement
in
a
single
itera@on
and
therefore
they
need
to
be
disaggregated
into
smaller
user
stories
at
some
point.
33. Themes
• A
theme
is
a
collec@on
of
related
user
stories.
• For
example,
for
a
university
registra@on
system
there
might
be
themes
around
students,
course
management,
transcript
genera@on,
grade
administra@on,
financial
processing.
• Themes
are
oIen
used
to
organize
stories
into
releases
or
to
organize
them
so
that
various
sub-‐teams
can
work
on
them.
34.
35.
36.
37. Kano
Model
According
to
Kano,
there
are
3
classes
of
features:
• Prerequisites
-‐
If
your
product
doesn’t
have
these
features,
it
will
immediately
be
removed
from
considera@on.
Who
wants
a
house
without
a
bathroom?
• Linear
Features
-‐
The
more
the
be]er,
but
their
higher
the
cost.
A
family
that
wants
three
bedrooms
will
not
consider
a
house
with
one,
but
they
might
consider
a
house
with
2
or
4
bedrooms.
• Exciters
-‐
Unique
features
which
only
this
product
has
and
which
convince
the
customer
to
say
“Yes!
I
want
it!
This
one
and
no
other”
53. Benefits
• XP
and
other
agile
methodologies
favor
face-‐
to-‐face
communica@on
over
comprehensive
documenta@on
and
quick
adapta@on
to
change
instead
of
fixa@on
on
the
problem.
54. User
stories
achieve
this
by:
• Being
very
short.
They
represent
small
chunks
of
business
value
that
can
be
implemented
in
a
period
of
days
to
weeks.
• Allowing
developer
and
the
client
representa@ve
to
discuss
requirements
throughout
the
project
life@me
• Needing
very
li]le
maintenance
• Only
being
considered
at
the
@me
of
use
• Maintaining
a
close
customer
contact
• Allowing
projects
to
be
broken
into
small
increments
• Being
suited
to
projects
where
the
requirements
are
vola@le
or
poorly
understood.
Itera@ons
of
discovery
drive
the
refinement
process.
• Making
it
easier
to
es@mate
development
effort
56. Limita@ons
Some
of
the
limita@ons
of
user
stories
in
agile
methodologies:
• They
can
be
difficult
to
scale
to
large
projects
• They
are
regarded
as
conversa@on
starters