Professional Documents
Culture Documents
Sprint Delivery
When: <Triggers>
Then: <Outcomes>
User Stories should be estimated just in time for the iteration that will deliver them and have
just enough detail to be estimated
4
User Stories are all about the users, and supporting their needs / wants
Capture the major functionality needed to I want to… have a 24/7, multi-
channel, self-service portal to
achieve the outcome
my account
Focused on a set of customer/user
So that… I can view and manage
segments
my account
Can be decomposed into a set of stories
7
Epics come in two types: Business and Architecture
What are Architecture Epics?
• Represent an end-to-end vertical slice of the technical solution required to realize one
or more Business Epics
• Need to be refined into smaller discrete units of business value (User Stories) that can
be analyzed, estimated, developed and tested
• Typically considered architecturally significant to help drive out key technology
decisions and identify cross cutting concerns with the systems/solutions involved
Aligned with one or more Business Epics “Access account via multiple
channels”
Can be further elaborated into a set of • Person accesses account
solution options online view webpage
• Person accesses account
Identify an architecturally significant via mobile device
scenario • Person phones in to
access account
8
Several guiding principles have been established for gauging the quality of a
User Story – the INVEST principles
Independent A story is structured to minimize dependency on other work tickets
Negotiable A story allows further refinement of scope to provide options around timing and cost
Estimate A story has sufficient scope and design definition to enable coarse estimation
Testable A story is testable by itself and has clear acceptance criteria associated with it
The 3 C’s:
• A Card represents the physical capture of the user story
• A Conversation represents a “promise for a conversation” between the team and other stakeholders
• A Confirmation represents the acceptance criteria that provide clear conditions of completion
9
Acceptance Criteria provide a set of conditions that a User Story must meet to
be considered done
Use the following guide when writing acceptance criteria:
Keep relatively high level (not every detail needs to be in writing) SPECIFIC
RELEVANT
Avoid ambiguous language
TIME-BOUND
Avoid subjective/judgmental language (e.g., better, good, allowable)
Acceptance criteria bound the story, letting developers know when to stop developing, and
testers know when to stop testing
10
Email payments example:
Acceptance criteria:
1. The report is not generated if there are no discrepancies
2. The report includes Discrepancy items which contain original transaction,
discrepancy details, (e.g.: amount)
3. The report is sent to EAA for forwarding to various departments
4. The report is generated daily
11
User Stories can be further elaborated into key business / user scenarios that
the solution must support
Acceptance Criteria:
As a: new Mobile Payment System Wallet user • Existing users cannot re-register and will receive
an error message on attempt
I want: to register for a new Self Serve Account • All mandatory fields must be entered to
successfully register
So that: I can make use of the service • On successful registration, a new account is
assigned and registration email is sent
Given When Then
A New self serve account is created
AND a new account is provisioned within the mobile payment
system
The registration page is correctly
AND a User ID is associated with mobile payment system and
populated with mandatory fields
User does not exist in the system User's Mobile Carrier
AND the registrant clicks on
AND a User is assigned a new User ID
"register"
AND a User ID is unique to the User's Mobile Carrier
AND a User is set eligible for mobile payment system register &
get promotion
AND a User receives a registration e-mail containing...
Self Serve Account already exists The registration page is correctly The User is directed to an error page with the message "You
for the user populated with mandatory fields already have a Self Serve Account…"
AND the registrant clicks on AND the User data is purged from the registration queue
"register"
User is new The registration page is correctly The registration page is reloaded with missing or incorrect
AND Self serve registration page populated with mandatory fields information flagged for User update along with a message…
is loaded into the browser AND the registrant clicks on
"register"
12
Key Takeaways?
Writing User Stories is one of the core competencies of an Agile Team; but remember:
It takes practice to get good at writing Expect the first stories you write to
stories be poor and for quality to improve
with practice
It takes even more practice to get stories Scrum Teams always struggle
right-sized getting stories that are small
enough for an iteration
13
Breakout Activity: Story Writing
Objective: create stories at different levels of detail
Activity: Take requirements from your existing engagement, and tried to build 1-2:
• Business Epics
• Architecture Epics
• User activities
• User stories/system stories
14
Story Mapping – a
hierarchical, visual backlog
Story Mapping allows teams to systematically decompose a project into
smaller units of business value using a structured approach
16
The anatomy of a Story Map is composed of four layers:
personas, epics, activities and stories
Fulfillment Fulfillment Network
1 Persona Customer Sales Rep Sales Rep
Vendor Clerk Operator
Billing Clerk
Time
Manage
Manage
2 Epic Manage Orders Manage Fulfillment
Provisioning
Activation and
Billing
4 Enter Order
Info
Submit
Order
Receive
Order
Submit
Fulfillment
Receive
Fulfillment
Save
Fulfillment
Transform to
Vendor
Submit
Fulfillment to
Receive
Shipping
Submit
Provision
. .
Order Order Order Fulfillment Vendor Notification Request
. .
Submit Process
Notify
Process
Fulfillment Update Update Notify
. .
View Order Order with Order
Customer Order Order Info Order Info Customer
Accessory Exceptions
Exception
Submit
Submit Process
Save Order Fulfillment to
Order with Shipping
Info Network
Features Exceptions
Optional
Managmt
Story
Resend
Update
Fulfillment to
Order Info
Vendor
1
User Personas - major categories of users that gain value from using
Add
Accessory the system.
2
Business/User epics - major objectives that that the system must
Add
Optional support, with tangible business outcomes and real business value.
Mobile
Features User activities-are tangible, sequential events that describe what the
3
user needs to do in order to get value.
Sequential
4 Stories - small, concrete units of business value that are also the
smallest increment of delivery, typically taking several business days to
17 deliver
The layout of activities provides a walkthrough narrative of the Story Map
How to Read a Story Map
Personas, Epics, and user • Cover scope by going vertically across the map
stories • Discuss at different levels of detail by going vertically
• Follow mandatory stories horizontally along the map
User stories • Follow optional stories vertically
18
Stories are visually prioritized by shuffling them vertically,
which forms a prioritized queue organized by activity
Time
Shuffle Shuffle
.
required to create View Order
Submit
Order with
Process
Order
Notify
Customer
Process
Fulfillment Update
Order Info
Update
Order Info
Notify
Customer
.
the first MMF are
Order
Accessory Exceptions
Exception
the stack
Features Exceptions
Managmt
Priority
Resend
Update
Fulfillment to
Order Info
Vendor
down.
19
Breakout Activity: Story Mapping
Objective: To learn how to build a Story Map
Activity: You are Grainger Application Co., building mobile application solutions to
assist professionals excel in their trade. Your latest project is to deliver the HandyMan
App:
To keep in mind:
• Unknowns and assumptions
• Prioritization of epics/stories
20
Prioritizing Work
21
Prioritizing User Stories
Prioritizing user stories is the primary responsibility of the Product Owner. Others can
provide guidance and support but the decision rests with the Product Owner. The
following factors should be considered when prioritizing user stories:
Factors:
• The business value of having the story
• The cost of developing the story
• The amount of knowledge and understanding of the system and future
requirements that will be gained from implementing the story
• Dependencies
• The amount of risk removed by implementing the story
22
Agile is all about breaking big projects into smaller units of work that can
deliver business value
Big projects and big
releases are hard!
Lots of variability and
Project unknowns!
Lots of dependencies!
Minimum
Business
Marketable
Project Valued
Features
Features
(MMF)
23
Ideas are broken into MMFs and are further decomposed into
stories to be delivered independently
Overview
Delivery
Idea Discovery Story
Development Testing E2E Int. Test Deployment
Elaboration
1-2 Weeks Iterations 2-4 Weeks Iterations 2-3 Iterations
1 MMF1 MMF1
MMF2 MMF2
3
MMF3 MMF3 MMF3
2 WAIT
Duration
Story 1 – 3 Months S1 S1
Elaboration
S2 S2 S2 S2
Duration
1 – 10 Days
MMF 1: Basic order entry integrated to the Enter Order Submit Receive
Submit
Fulfillment
Receive
Fulfillment
Save
Fulfillment
Transform to
Vendor
Submit
Fulfillment to
Receive
Shipping
Submit
Provision
.
fulfillment vendor with manual provisioning and
.
Info Order Order
Order Order Order Fulfillment Vendor Notification Request
exception handling
.
MMF 2: Order entry with management features Save Order
Process
Notify
Process
Fulfillment Update Update Notify
Order
supporting order tracking, automated customer Info
Exceptions
Customer Order Order Info Order Info Customer
Exception
notifications and robust exception handling
Submit
Process
Fulfillment to
View Order Shipping
Network
Exceptions
Managmt
Priority
Resend
Update
Fulfillment to
Order Info
Vendor
25
MMFs should be defined with the goal of realizing business benefits and/or
validating key risks and assumptions
Business Value
Provide Mobile Service To
Telephone and Cable Overall Business Goal Business Risk
Customers
Technical Risk
26
Think of Epics as User Stories but on an ‘epic’ scale
Epics: Can be decomposed into User Stories; too big to fit within an iteration
MMFs: Can be decomposed into Epics; may take multiple releases to complete
Release 1
Breakout Activity: story prioritization
Objective: Understand how to prioritize using a story
Activity: Take the previously built story and group them into different MMFS of various
priority:
28
“Build solutions the business
“Build things with limited value” “We are slow” “Low collaboration / trust”
doesn’t want”
Story Exploration “Build solutions in an
unsustainable way”
“No predictability”
“We have low moral / people are
frustrated”
“Data / metrics don’t change
“No visibility into work” “We don’t adapt to change”
behavior”
Primary focus though not
Fit for purpose
2 complete story (Gaps)
Fulfillment Fulfillment Significant impact
Layout Customer Sales Rep Sales Rep Incremental improvement
Vendor Clerk (order of magnitude)
Story
Map Time 1
• Persona
Gain shared project Questions / Risks / Unknowns Analysis / Validation Activities
• Epic
Manage Orders Manage Fulfillment understanding,
• Activity … scope and extract Identify Questions/ Risks/ Unknowns:
.
Transfor Receive
Minimal Submit Receive Save Submit Submit
Marketable
Enter
Order
Submit Receive Fulfillm Fulfillm Fulfillm
m to
Vendor
Fulfillm
Shippin
g
Provisio .
Order Order ent ent ent ent to n
Feature 1 Info Fulfillm Notifica
Order Order Order
ent
Vendor
tion
Request .
10
Process
Save
Process
Notify
Fulfillm
Update Update Notify Repeat
3 Order ent
Order
Info
Excepti
Custom
er
Order
Order
Info
Order
Info
Custom
er
Cycle
ons Excepti
Prioritize on
stories Submit
Process
MMF 2 View 6 Explore Fulfillmen
t to
Shipping
Order Exception
stories Network
Mgmt
s 8 Build story 9 Release MMF
Story Sketch using story
Priority
Delivery
Update sketching Resend Idea Discovery
Story
Fulfillmen Development Testing Deployment
Order t to
Elaboration
Info Vendor
MMF 1 MMF 1
Add
Optiona
Submit
Order
7 Estimate MMF 2 MMF 2
MMF 3 l Mobile with stories using WAIT!
Feature Feature
Planning
s s
0 Poker
MMF 3 MMF 3 MMF 3
Submit 5
Add Order
MMF 4 Accesso with S1 S1
ry Accesso Narrate /
ry
4 Navigate
Story Map
Define S2 S2 S2
MMFs
29