Tips and techniques for writing smarter user stories to support Agile teams.
For Scrum and Kanban projects.
Sasan Afsoosi
Enterprise Agile Coach
May 2020
2. Agenda
❖ What’s user story?
❖ Why user story?
❖ INVEST model
❖ Product backlog
❖ Definition of done
❖ User story tips
❖ Vertical slices
❖ Given when then
3. What’s User Story
User stories are short, simple description of a feature told from the perspective
of the person who desires the new capability, usually a user or customer of the
system.
User stories are short, simple description of a feature told from the perspective
of the person who desires the new capability, usually a user or customer of the
system.
As a <type of user>, I want <some goals> so that <some reason>
4. Why User Stories?
Keep
Keep yourself
expressing business
value, from the
user perspectives
Avoid
Avoid introducing
detail too early that
would prevent
design options and
inappropriately
lock developers
into one solution
Get
Get to small
enough chunks that
invite negotiation
and movement in
the backlog
Leave
Leave the technical
functions to the
architect,
developers, testers,
and so on
5. User Story
Readiness
Guideliens:
INVEST
Independent Free from external blockage and can
be delivered independently
Negotiable
Avoid too much detail; keep them
flexible so the team can adjust how
much of the story to implement.
Valuable Delivers customer or business
benefit
Estimable Clear enough that team can
estimate
Small
Large stories are harder to estimate
and plan. Small enough to complete
within sprint
Testable Clear acceptance criteria to know
when it’s good enough
6. Product Backlog Characteristics
List of functionality,
technology and
issues
Emergent,
prioritized and
estimated
More detail on
higher priority
backlog
Product Owner
responsible for
priority
Maintained and
posted visibly
Derived from
Business Plan or
Vision Statement
7. Definition of “Done”
When a Product Backlog item or an Increment is described
as “Done”, everyone must understand what “Done”
means.
Although this may vary significantly per Scrum Team,
members must have a shared understanding of what it
means for work to be complete, to ensure transparency.
This is the definition of “Done” for the Scrum Team and is
used to assess when work is complete on the product
Increment.
8. Three Tips for Writing Better User Stories
Maintain and use
Maintain and use
clear product
decomposition
• Product vision
• Capabilities
• Epic
• Story
Write
Write User Stories not
Tasks
• Focus on WHAT the team
needs to do, and WHY
they need to do it
• Let team focuses on HOW
to do it
Conduct
Conduct regular
vertical slice “sanity
checks” on all stories
• Make time as a team to
check stories in the
backlog regularly
9. Vertical Slices
Not all backlog items are user stories, but all user stories
should be Vertical Slices
10. The Given-
When-Then
Format
The Given-When-Then formula is an approach to
guide the writing of acceptance tests for a User
Story:
● (Given) some context
● (When) some action is carried out
● (Then) a particular set of observable
consequences should obtain
An example:
● Given my bank account is in credit, and I
made no withdrawals recently,
● When I attempt to withdraw an amount less
than my card's limit,
● Then the withdrawal should complete without
errors or warnings