Agile
Agile
Writing
User Stories
contents
SECTION
user stories
1 what is a user story?
user story template
4
5
examples: user stories 6
user story checklist 7
why not tasks? 8
SECTION
writing acceptance criteria
2 what is acceptance criteria?
example: acceptance criteria
10
11
acceptance criteria checklist 13
WORKSHOP
What Is A
User Story?
definition: user story
A user story is a tool used in agile software development to capture the description of a software
feature from an end-user perspective. The user story describes the type of user, what they want and
why, A user story helps to create a simplified description of a requirement.
WHO
As a <type of user>
are we building it for? Who is the user?
WHAT
I want <some goal or objective>
are we building? What is the intention?
WHY
are we building it? What is the value for the So that <benefit/value>
customer?
examples: user stories
As an administrator
I want create other administrators
So that I can delegate tasks
As a marketer
I want create automated email campaigns
So that I can keep evaluators engaged
user story checklist
Make the value/benefit of the story clear - what is the reason for the story?
Describe one piece of functionality. If you have to write and break it into 2 stories
user stories describe a piece of functionality from “what are the activities we need to perform in
the point of view of the user order to deliver outcomes (user stories)”
divided features into business processes tasks are individual pieces of work
WORKSHOP
Writing
Acceptance Criteria
definition: acceptance criteria
- to clarify what the team should build before they start work
- To ensure everyone has a common understanding of the problem
- To help the team members know when the story is complete
- To help verify the story via automated tests
example: acceptance criteria
As an online banking customer, I want strong a strong password, so that my credit card information
is secure
Acceptance Criteria:
As a conference attendee, I want to be able to register online, so that registration is simple and
paperless
Acceptance Criteria:
- A user can not submit a form without filling out all of the mandatory fields
- Information from the form is stored in the registrations database
- Protection against spam is working
- Payment can be made via Paypal, Debit and Credit Card
- An acknowledgment email is sent to the attendee after submitting the form
acceptance criteria should include
End-to-user flow
UX concerns
acceptance criteria should NOT include
X Code review was done
why?
Your acceptance criteria should not include any of the above, because your team should already
have a clear understanding of what your Definition of Done (DoD) means. This could mean:
-
-
-
-
unit/integrated tested
ready for acceptance test
deployed on demo server
releasable
X
GETTING STARTED
Introduction to
Backlog Grooming
contents
SECTION
backlog grooming? SECTION backlog grooming using the
1 what is backlog grooming?
who should be involved in a grooming session?
4
5 3 story map
benefits of backlog grooming 6
example: car infotainment system 17
guidelines for effective backlog grooming 7
issues linked to an epic 18
difference b/w backlog grooming and issues without epics 19
sprint planning 8 prioritising on the story map I 20
prioritising on the story map II 21
refining the backlog - summary & estimation 22
SECTION
backlog grooming example: refining the backlog - sequencing 23
2 Apple TV
prioritising the backlog 11
breaking down big stories 24
refining 12
breaking epics down into user stories 13
estimating 14
repeat and refine 15
WORKSHOP
What is
Backlog Grooming?
what is backlog grooming?
Backlog grooming is when the Product Manager and their team review items on the backlog,
ensuring it only contains appropriate items ordered by priority, and that the items on the top of the
backlog are ready for delivery.
Some of the activities that occur during the refinement of the backlog include:
Better refined stories are more accurately estimated, tested and implemented
Delays related to external dependencies and larger efforts are discovered sooner
Increases efficiency of the team due to increased shared knowledge and understanding of the product
Allows the team to maintain a sustainable, higher pace = greater team velocity
Set a goal for the session: send out a list of stories you want to groom ahead of time and ask
the team to review, coming to the meeting with any questions, tasks, hours etc. - the overarching
goal should be for all attendees to leave with a clear understanding of what is left for project
completion and the upcoming sprint goals
Keep the group small: involve the PM, their agile team and a few stakeholders. A smaller group
= more engagement and the less likely you are to get sidetracked.
Meet frequently: a good backlog grooming session leaves everyone feeling familiar with the
product backlog, gives them a clear understanding of the goals for the next sprint, and means
they can hit the ground running in the Sprint Planning meeting. Schedule grooming sessions
regularly, usually a few days before the Sprint Planning meeting
differences between backlog grooming
and sprint planning sessions
when? A few days prior to the sprint planning meeting At the beginning of every sprint
WORKSHOP
Backlog Grooming
Example: Apple TV
product backlog example: Apple TV
A product backlog for Apple TV at the beginning of a grooming session
As an iTunes user I want to redeem my gift card so that I can claim my credit ATV-121
As a user I want to find movies easily so that I save time browsing long lists ATV-111
As a user I want to be able to fast forward movies so that I skip scary parts of the film ATV-483
As a user I want to be able to save my favourite movies to a list so that I can watch them later ATV-345
As a user I want to use Paypal as my preferred payment method so that I feel safe about my transactions ATV-345
prioritising the backlog
The Product Manager knows that their users are having significant trouble searching for films, resulting in higher
churn. They decide to prioritise that backlog item for the upcoming sprint by moving it to the top of the list.
As a user I want to find movies easily so that I save time browsing long lists ATV-121
As an iTunes user I want to redeem my gift card so that I can claim my credit ATV-111
As a user I want to be able to fast forward movies so that I skip scary parts of the film ATV-483
As a user I want to be able to save my favourite movies to a list so that I can watch them later ATV-345
As a user I want to use Paypal as my preferred payment method so that I feel safe about my transactions ATV-345
refining the backlog
The Product Manager and Scrum Master begin to breakdown the prioritised backlog item. After discussions with
the team, they realise that this user story is going to be a large amount of work. They refine the user story into an
epic, to better illustrate the amount of work involved to achieve this objective
As a user I want to find movies easily so that I save time browsing long lists ATV-121
=
Search
breaking epics down into user stories
Using the epic, the team start to define various user stories that sit under the umbrella of that ‘Search’ epic. The
team prioritise the user stories by most immediate value to the customer. Value can be identified through
conversations with users, analytics on usage patterns, or another insight appropriate for your product.
Search
As a user I want to free text search so that I save time browsing long lists ATV-485
As a user I want to browse by genre so I can find movies I like quicker ATV-486
As a user I want to browse by most popular so I can find inspiration for films to watch ATV-487
As a user I want to browse by most popular by genre so I can find movies I like quicker ATV-488
As a user I want to browse by recent addition by genre so I find movies I haven’t watched before quicker ATV-489
estimating
Now that the user stories are ordered by priority, it is time for the team to allocate estimates to how long/how much
effort each particular story will take. This requires team members detailing requirements and acceptance criteria to
understand the scope of the work. Every team member is given the opportunity to put forward their estimate and
justification. The Product Manager will take the majority SP estimate or average, in this example the majority of the
team think the estimate should be 2.
As a user I want to free text search so that I save time browsing long lists ATV-485 2
2 1 2
3 2
repeat and refine
Continue going through the backlog with your team splitting stories and breaking out tasks. Work with the team to
prioritise backlog items, identify requirements, acceptance criteria and estimate work = a healthy backlog and an
enlightened team
As a user I want to free text search so that I save time browsing long lists Search ATV-485 2
As a user I want to browse by genre so I can find movies I like quicker Search ATV-486 3
As a user I want to browse by most popular so I can find inspiration for films to watch Search ATV-487 1
As a user I want to browse by most popular by genre so I can find movies I like quicker Search ATV-488 3
As a user I want to browse by recent addition by genre so I find movies …….. Search ATV-489 3
WORKSHOP
Backlog Grooming:
Using the Story Map
Example: Car
Infotainment System
Introduction to
Sprint Reviews
contents
SECTION introduction to sprint SECTION conducting sprint reviews in
1 reviews
what is a sprint review? 4 2 Easy Agile User Story Maps
benefits of sprint reviews 5 show ‘done’ issues 9
anatomy of a sprint review 6 inspect and adapt 10
guidelines for effective sprint backlog grooming and refinement 11
review meetings 7
WORKSHOP
Introduction
To Sprint Reviews?
what is a sprint review?
A sprint review meeting takes place at the conclusion of a sprint, and reviews all of the ‘Done’
issues for that period. The aim of the sprint review is to see whether the goal for the sprint was
achieved and to demonstrate potential shippable working product increments to the team.
Some of the activities that occur during the sprint review include:
- The Product Manager/Owner walks through the ‘Done’ items from the Product Backlog
- The Development team discusses what went well during the Sprint, the problems they ran into,
and how they were solved/could be solved
- The Development team demonstrates the work that they have “Done” and answer the teams
questions about the working increment
- The team collaborates on what to do next, so that the Sprint Review provides valuable input into
the subsequent Backlog Grooming and Sprint Planning sessions
- Review of the timeline, budget, potential capabilities for the next anticipated release of the
product
Source: scrum.org
benefits of sprint reviews
V
Inputs Outputs
Sprint Review
Sprint Goal Overview of ‘Done’ issues and backlog Groomed product backlog
discussion
As an iTunes user I want to redeem my gift card so that I can claim my credit
Sprint Backlog
ATV-121
As an iTunes user I want to redeem my gift card so that I can claim my credit ATV-121
As a user I want to find movies easily so that I save time browsing long lists ATV-111
As a user I want to find movies easily so that I save time browsing long lists ATV-111
As a user I want to be able to fast forward movies so that I skip scary parts of the film ATV-145
As a user I want to be able to fast forward movies so that I skip scary parts of the film ATV-145
As an iTunes user I want to redeem my gift card so that I can claim my credit
ATV-121
As a user I want to be able to save my favourite movies to a list so that I can watch them later ATV-345
As a user I want to be able to save my favourite movies to a list so that I can watch them later ATV-345
As a user I want to find movies easily so that I save time browsing long lists ATV-111
As a user I want to use Paypal as my preferred payment method so that I feel safe about my transactions ATV-345
As a user I want to use Paypal as my preferred payment method so that I feel safe about my transactions ATV-345
As a user I want to be able to fast forward movies so that I skip scary parts of the film ATV-145
As a user I want to be able to save my favourite movies to a list so that I can watch them later ATV-345
inspect
Focus on ‘Done’ Issues: focus on acceptance criteria that had met the Definition of Done (DoD)
Meeting format: the meetings should be informal; not a reporting exercise, rather an
opportunity to get together and give feedback. Time box the meeting in accordance with the
following:
Focus on the user: centre any demonstrations around a realistic user experience and business
value (not just proving functionality)
WORKSHOP
Sprint Statistics
reviewing your teams forecasted sprint
statistics against the result of the actual
sprint helps teams track work
commitment, and ensure work continues
at a sustainable pace
backlog grooming and refinement
How to Run
PI Planning with
Easy Agile Programs
contents
SECTION what is SECTION Digital PI Planning
1 PI Planning?
2 Easy Agile Programs overview
Setting Business Context
18
23
Overview 3
What is
PI Planning?
what is PI Planning?
PI Planning is a 2 day event which sees all members of an Agile Release Train (ART) come together
to plan out their next Program Increment.
Aligning development to business goals with context of the business, vision and Team and
PI objectives
Fast decision-making
Inputs Outputs
Search ATV-111
Favourites ATV-345
Program Board
Top 10 Features of the
Program Backlog
Gift card redemption
CV CV
ATV-121
Search ATV-111
Favourites ATV-345
2 Day PI Planning
Session Agenda
PI Planning agenda
Product/Solution
09:00 - 10:30 09:00 - 11:00 Team Breakouts
Vision
Who is involved
in a PI Planning Session?
business owners
release train engineer
product manager
product owner
scrum master
development team
GETTING STARTED
Difficulties Running a
Physical PI Planning Session
difficulties running a physical session
Cost associated with geo-distributed organisations flying in employees for the 2 day event
(can be up to 5 times per year)
Ability to track the progression of the Program with geo-distributed team members after the
planning is finished
GETTING STARTED
Overview of
Easy Agile Programs for Jira
Programs
Breakdown
Program
Roadmap
Increment
Overview
Team
Planning Board
Programs
Breakdown
Program
Roadmap
Increment
Overview
Team
Planning Board
Programs
Breakdown
Program
Roadmap
Increment
Overview
Team
Planning Board
GETTING STARTED
Conducting PI Planning in
Easy Agile Programs for Jira
Setting Business
Context
This presentation/recording
is not restricted to team
members being physically
present during planning,
and can be reflected on
throughout the entirety of
the planning session
Program Roadmap
Setting Product/
Solution Vision
Program Roadmap
Team Breakouts:
Setting Capacity
Increment Overview
Plan Review
& Rework
2
MoSCoW Technique
Approach
• Priorities are based on:
– Must Have, Should Have, Could Have, Won’t Have
– Replaces High/Medium/Low (since everything ends up High)
• Must Haves and possibly Should Haves help determine “Minimum Viable Product” (MVP)
Guidelines
• Option 1: Use group consensus to decide M, S, C, W priorities
• Option 2: Assign a point value to M, S, C, W. M should be highest, W should be lowest
– e.g.: M = 10, S = 7, C = 3, W = 0
• For every feature (User Story or Epic), the stakeholders assign individual points
• Points are totaled for each feature and prioritization is based on the highest scored items
3
MoSCoW – Point Value Example
Stakeholder Stakeholder Stakeholder Stakeholder Stakeholder Total
1 2 3 4 5
Scale
Feature 1 7 10 7 3 7 34
Feature 2 10 10 10 3 10 43
Feature 3 10 10 10 0 7 37
M 10
Feature 4 10 10 7 3 3 34
S 7
Feature 5 7 10 7 0 7 31
C 3
Feature 6 3 10 0 10 0 23
W 0
Feature 7 7 10 10 3 7 37
While it’s easy to see that Feature 2 is the top-ranked item and Feature 6 is the lowest, note that:
• Features 3 & 7 are tied at 37 points – additional discussion needed. Same for 1 and 4
4
20/20 Technique
Approach
• A side-by-side assessment of 2 features at a time
• Like an eye exam asking “which is clearer - A or B?”, determine if A or B is the higher priority
• Also known as Force-Ranking or “Bubble Sorting”
Guidelines
• A quick, effective tool that can be used in teams, with internal stakeholders, or even customers
• Always start at the top of the list, only comparing 2 items at a time
• Forces collaboration – requires good communication and negotiation
– A facilitator can be useful
5
20/20 - Example
To be prioritized In Comparison Prioritized • Feature 2 is (so far) the top-most item
• Feature 1 is already lower priority than
Feature 2 Feature 2
• Feature 3 is also lower than Feature 2, and is
being compared to Feature 1
Feature 3 Feature 1
• After Feature 3 is ranked, Feature 4 starts
against Feature 2 and continues prioritization
Feature 4 continues
Feature 5
Feature 6
Feature 7
6
Risk / Value Technique
Approach
• Each feature is evaluated on its potential value, along with the perceived risk associated with
delivery
• In Scrum, attempt to start with high risk, high value first
• Or, alternatively consider delivering high value, low risk items for “quick wins”
• High risk, but low value items should be tabled or not considered part of MVP
7
Risk/Value - Matrix
High Risk High Risk
High
Note that MoSCoW
Priorization can be ? 1
applied to the Low Value High Value
Risk/Value approache as
• Won’t-Have • Must-Have
well.
Risk
Low Risk Low Risk
3 2
Low Value High Value
• Should-Have • Must-Have
Low
• Could-Have • Should-Have
Low High
Adopted from: Agile Estimating & Planning by Mike Cohn
Value
Backlog Prioritization Techniques 8
Weighted Shortest Job First (WSJF)
Approach
• Applies data-driven prioritization based on Cost of Delay and Job Size
Cost of Delay looks at “What’s the pain of not having a feature available?” based on 3
considerations of
• Business Value: “What does this feature offer our ‘customers’ (end-users or internal)?”
• Time Criticality : “How urgently do we need this for use?”
• Risk-Reduction or Opportunity Enablement (RROE): “Is this a factor by which we boost delivery?”
– Competitive advantage, Speed, Quality, etc.
9
WSJF – Category Factors
Business Value Time Criticality Risk Reduction/ Opportunity Enabler
• Revenue Growth • Financial Targets • Market Penetration
• Business Strategy • Conferences • Speed, Quality, Delivery
• Cost-Savings – PegaWorld, SKO
• Architectural/Infrastructural
• Integration Investment
• Customer Satisfaction
• Acquisitions • Scalability
10
WSJF - Formula
WSJF is the Cost of Delay divided by Job Size
Cost of Delay
(Business Value + Time Criticality + RROE)
Job Size
11
WSJF – Ranking Example
Feature A) Business B) Time C) RROE D) Cost of E) Job Size WSJF Score
Value Criticality Delay (D/E)
(A+B+C)
1 DevOps Investment
• New infrastructure
• Boosts internal productivity 1 2 2 5 2 2.5
• Extensive training needed
2 Mobile Application
• New technology – adds risk!
• Increase in mobile use 2 3 3 9 5 1.6
+ 2 points for risk
• Needed for competitive
advantage
3 New Quickstart
• Refactoring existing
functionality 3 1 1 5 1 5
• Must-have for conference in 6
months
12
WSJF – Ranking Example continued
1. Starting with Business Value, the least important
item is ranked as a 1. The next important
feature is given a 2, and so on Feature A) Business B) Time C) RROE D) Cost E) Job WSJF
Value Criticality of Delay Size Score
(A+B+C) (D/E)
2. Comparative ranking proceeds to Time
Criticality, working again from low to high New
Quickstart 3 1 1 5 1 5
3. Ranking continues to Risk
Reduction/Opportunity Enablement DevOps
Investment 1 2 2 5 2 2.5
4. Cost of Delay is the total of columns A, B and C
5. Job Size, like the other factors, is ranked Mobile
comparatively – with team representation Application 3 3 3 9 5 1.6
– Risk adds +2 points for Mobile Application
6. WSJF Rank is Cost of Delay is divided by the Job
Size
Per the example, the New Quickstart should be the highest prioritized item, followed by DevOps.
If Mobile Application is seen as a priority, then explore ways to mitigate the risks, lowering Job Size
13
WSJF – Do’s and Don’ts
Do’s
• Increase the weighting for uncertainty
• Keep focus on a single category at a time
• Involve representation from the team for Job Size estimate
• Retrospect on the rankings after delivery
Don’ts
× Assume actuals (# stories, point totals) for Job Size
× Think of Job Size in time units, think of complexity instead
× Be inflexible about the features. Like User Stories, ask if they can be split
14
Final Prioritization Tips
As a Product Owner, technical User Stories and Spikes will need to be prioritized, along with
End-User features.
15