SlideShare a Scribd company logo
1 of 31
Download to read offline
Mike Cohn
Norwegian Developer’s Conference
6 June 2012
User Stories
1
© Copyright Mountain Goat Software
®
What problem do stories address?
Software requirements is a communication
problem
Those who want
the software must
communicate with
those who will
build it
2
© Copyright Mountain Goat Software
®
Balance is critical
If either side dominates, the business loses
If the business side dominates…
…functionality and dates are mandated with little
regard for reality or whether the developers
understand the requirements
If the developers dominate…
…technical jargon replaces the language
of the business and developers lose the opportunity to
learn from listening
3
© Copyright Mountain Goat Software
®
Resource allocation
We need a way of
working together so
that resource allocation
becomes a shared
problem
Project fails when the
problem of resource
allocation falls too far to
one side
4
© Copyright Mountain Goat Software
®
Responsibility for resource allocation
If developers are responsible…
May trade quality for additional
features
May only partially implement a
feature
May solely make decisions that
should involve the business
If the business is responsible…
Lengthy upfront requirements
negotiation and signoff
Features are progressively
dropped as the deadline nears
5
© Copyright Mountain Goat Software
®
Imperfect schedules
We cannot perfectly predict a software
schedule
As users see the software, they come up with
new ideas
Too many intangibles
Developers have a notoriously hard time
estimating
If we can’t perfectly predict a schedule, we
can’t perfectly say what will be delivered
6
© Copyright Mountain Goat Software
®
This is where
user stories
come in
So what do we do?
…but do it often
We make decisions based
on the information we
have
…we spread decision-
making across the project
Rather than making one
all-encompassing set of
decisions
7
© Copyright Mountain Goat Software
®
Agenda
What stories are
Writing user stories
Why user stories
8
© Copyright Mountain Goat Software
®
Three Cs
Stories are traditionally
written on note cards.
Cards may be annotated with
estimates, notes, etc.
Card Details behind the story come
out during conversations with
product owner
Conversation
story was coded correctly
Confirmation
Source: XP Magazine 8/30/01, Ron Jeffries.
9
© Copyright Mountain Goat Software
®
As a user, I want to
reserve a hotel room.
As a user, I want to
cancel a reservation.
As a vacation traveler,
I want to see photos of
the hotels.
As a frequent flyer, I
want to rebook a past trip
so that I save time
booking trips I take often.
Samples from a travel website
10
© Copyright Mountain Goat Software
®
Where are the details?
As a user, I can cancel a reservation.
Does the user get a full or partial refund?
Is the refund to her credit card or is it site credit?
How far ahead must the reservation be cancelled?
Is that the same for all hotels?
For all site visitors? Can frequent travelers cancel later?
Is a confirmation provided to the user?
How?
11
© Copyright Mountain Goat Software
®
Details as conditions of satisfaction
As a user, I can
cancel a reservation.
Verify that a premium member can
cancel the same day without a fee.
Verify that a non-premium member is
charged 10% for a same-day cancellation.
Verify that an email confirmation is sent.
Verify that the hotel is notified of any
cancellation.
• The product owner’s
conditions of satisfaction
can be added to a story
• These are essentially
tests
12
© Copyright Mountain Goat Software
®
Details added in smaller sub-stories
As a user, I can
cancel a reservation.
As a site visitor, I am
emailed a confirmation of
any cancelled
reservation.
As a non-premium
member, I can cancel up
to 24 hours in advance.
As a premium site
member, I can cancel a
reservation up to the
last minute.
13
© Copyright Mountain Goat Software
®
Techniques can be combined
These approaches are not mutually
exclusive
Write stories at an appropriate level
By the time it’s implemented, each story
will have conditions of satisfaction
associated with it
14
© Copyright Mountain Goat Software®
The product backlog iceberg
Priority
15
© Copyright Mountain Goat Software
®
Some additional useful terms
Epic
A large user
story
Theme
A collection of
related user
stories
16
© Copyright Mountain Goat Software
®
An example
As a VP Marketing, I want to
select the timeframe to use
when reviewing the
performance of past
promotional campaigns, so
that …
As a VP Marketing, I can
select which type of
campaigns (direct mail, TV,
email, radio, etc.) to include
when reviewing the
performance of past …
As a VP Marketing, I want
to review the performance
of historical promotional
campaigns so that I can
identify and repeat
profitable ones.
Clearly an epic
Epics???
17
© Copyright Mountain Goat Software
®
As a VP Marketing, I want
to see information on
direct mailings when
reviewing historical
campaigns.
As a VP Marketing, I want
to see information on TV
ads when reviewing
historical campaigns.
As a VP Marketing, I want
to see information on
email ads when reviewing
historical campaigns.
18
© Copyright Mountain Goat Software
®
Agenda
What stories are
Writing user stories
Why user stories
19
© Copyright Mountain Goat Software
®
Logging in
•See how many user stories you can
write about logging in.
•Examples:
•As a registered user, I am required to
log in so that I can access the system.
•As a forgetful user, I can request a
password reminder so that I can log in
if I forget mine.
“As a <user role>,
I <want/need/can/
etc> <goal>
so that <reason>.”
20
© Copyright Mountain Goat Software
®
Story-writing workshops
Includes whole team plus possibly some
external stakeholders
Typically not done every sprint
Brainstorm to generate stories
Goal is to write as many stories as possible
Some will be “implementation ready”
Others will be epics
No prioritization at this point
21
© Copyright Mountain Goat Software
®
Start with epics and iterate
As a frequent
flyer, I want to
book a trip using
miles.
As a frequent
flyer, I want to
rebook a trip I
take often.
As a frequent
flyer, I want to
request an
upgrade.
As a frequent
flyer, I want to
see if my
upgrade cleared.
As a frequent
flyer, I want to
see check my
account.
As a frequent
flyer, I want to
book a trip.
As a frequent
flyer, I want
to…
Frequent Flyer
22
© Copyright Mountain Goat Software
®
Agenda
What stories are
Writing user stories
Why user stories
23
© Copyright Mountain Goat Software
®
So why user stories?
If requirements are
written down
The user will get
what she wants
then
At best she’ll get
what was written“You built what I
asked for, but it’s
not what I need.”
Shift focus from writing to talking
24
© Copyright Mountain Goat Software
®
Words are imprecise
Entrée comes
with
soup or salad
and bread. • (Soup or Salad) and Bread
• (Soup) or (Salad and Bread)
Which is right?
25
© Copyright Mountain Goat Software
®
Examples
The user can enter a
name. It can be 127
characters.
The system should
prominently display a warning
message whenever the user
enters invalid data.
• Must the user enter a
name?
• Can it be other than
127 chars?
• What does should
mean?
• What does prominently
display mean?
• Is invalid data defined
elsewhere?
26
© Copyright Mountain Goat Software
®
Additional reasons
Stories are understandable
Developers and customers understand them
People are better able to remember events if
they are organized into stories†
Support and encourage iterative
development
Can easily start with epics and disaggregate
closer to development time
†Bower, Black, and Turner. 1979.
Scripts in Memory for Text.
27
© Copyright Mountain Goat Software
®
Yet more reasons
Stories are the right size for planning
Stories support opportunistic development
We design solutions by moving
opportunistically between top-down and
bottom-up approaches†
Stories support participatory design
†Guindon. 1990. Designing the Design Process.
28
© Copyright Mountain Goat Software
®
What if we had stories instead?
29
© Copyright Mountain Goat Software
®
Most importantly…
The story text we write on
cards is less important
than the conversations we
have.
Don’t forget the purpose
30
© Copyright Mountain Goat Software
®
mike@mountaingoatsoftware.com
www.mountaingoatsoftware.com
twitter: mikewcohn
(720) 890-6110
Mike Cohn
31

More Related Content

What's hot

Writing Good User Stories (Hint: It's not about writing)
Writing Good User Stories (Hint: It's not about writing)Writing Good User Stories (Hint: It's not about writing)
Writing Good User Stories (Hint: It's not about writing)one80
 
User Story Workshop
User Story WorkshopUser Story Workshop
User Story WorkshopPeter Antman
 
User Story Mapping in Practice
User Story Mapping in PracticeUser Story Mapping in Practice
User Story Mapping in PracticeSteve Rogalsky
 
Slicing user stories
Slicing user storiesSlicing user stories
Slicing user storiesDavid Michel
 
Breaking down agile requirements in Agile Methodology
Breaking down agile requirements in Agile MethodologyBreaking down agile requirements in Agile Methodology
Breaking down agile requirements in Agile MethodologyMario Lucero
 
Product Backlog - Refinement and Prioritization Techniques
Product Backlog - Refinement and Prioritization TechniquesProduct Backlog - Refinement and Prioritization Techniques
Product Backlog - Refinement and Prioritization TechniquesVikash Karuna
 
User Stories for Agile Requirements
User Stories for Agile RequirementsUser Stories for Agile Requirements
User Stories for Agile RequirementsMike Cohn
 
From Product Vision to Story Map - Lean / Agile Product shaping
From Product Vision to Story Map - Lean / Agile Product shapingFrom Product Vision to Story Map - Lean / Agile Product shaping
From Product Vision to Story Map - Lean / Agile Product shapingJérôme Kehrli
 
21 Story Splitting Patterns
21 Story Splitting Patterns21 Story Splitting Patterns
21 Story Splitting PatternsKent McDonald
 
Writing User Stories (04/2012)
Writing User Stories (04/2012)Writing User Stories (04/2012)
Writing User Stories (04/2012)Mai Quay
 
Agile User Stories
Agile User StoriesAgile User Stories
Agile User Storieskahgeh75
 
Agile requirements management
Agile requirements managementAgile requirements management
Agile requirements managementChristian Hassa
 
The Product Owner Role
The Product Owner RoleThe Product Owner Role
The Product Owner RoleRoman Pichler
 
Fundamentals of Agile Product Management
Fundamentals of Agile Product ManagementFundamentals of Agile Product Management
Fundamentals of Agile Product ManagementAmbreen Hussain
 
Strategies to split user stories
Strategies to split user storiesStrategies to split user stories
Strategies to split user storiescpolc
 
Ten Concrete Techniques to Split User Stories
Ten Concrete Techniques to Split User StoriesTen Concrete Techniques to Split User Stories
Ten Concrete Techniques to Split User StoriesNight Wolf
 

What's hot (20)

Writing Good User Stories (Hint: It's not about writing)
Writing Good User Stories (Hint: It's not about writing)Writing Good User Stories (Hint: It's not about writing)
Writing Good User Stories (Hint: It's not about writing)
 
User Story Workshop
User Story WorkshopUser Story Workshop
User Story Workshop
 
User Story Mapping in Practice
User Story Mapping in PracticeUser Story Mapping in Practice
User Story Mapping in Practice
 
User Stories explained
User Stories explainedUser Stories explained
User Stories explained
 
User Stories
User StoriesUser Stories
User Stories
 
Slicing user stories
Slicing user storiesSlicing user stories
Slicing user stories
 
Breaking down agile requirements in Agile Methodology
Breaking down agile requirements in Agile MethodologyBreaking down agile requirements in Agile Methodology
Breaking down agile requirements in Agile Methodology
 
Product Backlog - Refinement and Prioritization Techniques
Product Backlog - Refinement and Prioritization TechniquesProduct Backlog - Refinement and Prioritization Techniques
Product Backlog - Refinement and Prioritization Techniques
 
User Stories for Agile Requirements
User Stories for Agile RequirementsUser Stories for Agile Requirements
User Stories for Agile Requirements
 
Effective user stories for your agile or Scrum team
Effective user stories for your agile or Scrum teamEffective user stories for your agile or Scrum team
Effective user stories for your agile or Scrum team
 
Effective User Stories
Effective User StoriesEffective User Stories
Effective User Stories
 
From Product Vision to Story Map - Lean / Agile Product shaping
From Product Vision to Story Map - Lean / Agile Product shapingFrom Product Vision to Story Map - Lean / Agile Product shaping
From Product Vision to Story Map - Lean / Agile Product shaping
 
21 Story Splitting Patterns
21 Story Splitting Patterns21 Story Splitting Patterns
21 Story Splitting Patterns
 
Writing User Stories (04/2012)
Writing User Stories (04/2012)Writing User Stories (04/2012)
Writing User Stories (04/2012)
 
Agile User Stories
Agile User StoriesAgile User Stories
Agile User Stories
 
Agile requirements management
Agile requirements managementAgile requirements management
Agile requirements management
 
The Product Owner Role
The Product Owner RoleThe Product Owner Role
The Product Owner Role
 
Fundamentals of Agile Product Management
Fundamentals of Agile Product ManagementFundamentals of Agile Product Management
Fundamentals of Agile Product Management
 
Strategies to split user stories
Strategies to split user storiesStrategies to split user stories
Strategies to split user stories
 
Ten Concrete Techniques to Split User Stories
Ten Concrete Techniques to Split User StoriesTen Concrete Techniques to Split User Stories
Ten Concrete Techniques to Split User Stories
 

Viewers also liked

2016 San José, CA Budget Allocator
2016 San José, CA Budget Allocator2016 San José, CA Budget Allocator
2016 San José, CA Budget AllocatorLuke Hohmann
 
User Stories: Stories for Grown-Ups
User Stories: Stories for Grown-UpsUser Stories: Stories for Grown-Ups
User Stories: Stories for Grown-UpsSandy Mamoli
 
Write better user stories, deliver better software
Write better user stories, deliver better softwareWrite better user stories, deliver better software
Write better user stories, deliver better softwareElliot Susel
 
User Story Mapping: Deliverable slice of value
User Story Mapping: Deliverable slice of valueUser Story Mapping: Deliverable slice of value
User Story Mapping: Deliverable slice of valueAngie Doyle
 
The Art of Storytelling
The Art of StorytellingThe Art of Storytelling
The Art of StorytellingFadi Stephan
 
Einführung in User Stories
Einführung in User StoriesEinführung in User Stories
Einführung in User StoriesMonika Schubert
 
Windows8 release preview_productguide_final_spanish
Windows8 release preview_productguide_final_spanishWindows8 release preview_productguide_final_spanish
Windows8 release preview_productguide_final_spanishANGEL DAVID TERRONES AYALA
 
Stephany milagros grados vásquez tarea de la tyic i
Stephany   milagros grados vásquez  tarea de la tyic iStephany   milagros grados vásquez  tarea de la tyic i
Stephany milagros grados vásquez tarea de la tyic ipolihta
 
User stories schreiben
User stories schreibenUser stories schreiben
User stories schreibenstbaechler
 
Introduction To User Stories For Agile Product Development
Introduction To User Stories For Agile Product DevelopmentIntroduction To User Stories For Agile Product Development
Introduction To User Stories For Agile Product Developmentzenpdm
 
The DNA of an Innovative Product Owner by Anu Smalley
The DNA of an Innovative Product Owner by Anu SmalleyThe DNA of an Innovative Product Owner by Anu Smalley
The DNA of an Innovative Product Owner by Anu SmalleyAccenture | SolutionsIQ
 
As user, I hate user stories
As user, I hate user storiesAs user, I hate user stories
As user, I hate user storiesmatteo cavucci
 
Overcoming Waterfallacies & Agilephobias
Overcoming Waterfallacies & AgilephobiasOvercoming Waterfallacies & Agilephobias
Overcoming Waterfallacies & AgilephobiasMike Cohn
 
Agile Software Development
Agile Software DevelopmentAgile Software Development
Agile Software DevelopmentDevasis Roy
 
Project Economics
Project EconomicsProject Economics
Project EconomicsMike Cohn
 
Scrum: Leading a Self-Organizing Team
Scrum: Leading a Self-Organizing TeamScrum: Leading a Self-Organizing Team
Scrum: Leading a Self-Organizing TeamMike Cohn
 
Incorporating Learning and Expected Cost of Change
Incorporating Learning and Expected Cost of ChangeIncorporating Learning and Expected Cost of Change
Incorporating Learning and Expected Cost of ChangeMike Cohn
 

Viewers also liked (20)

Agile for Customer Delight
Agile for Customer DelightAgile for Customer Delight
Agile for Customer Delight
 
Online class intro to agile & scrum - final
Online class   intro to agile & scrum - finalOnline class   intro to agile & scrum - final
Online class intro to agile & scrum - final
 
User Stories
User StoriesUser Stories
User Stories
 
2016 San José, CA Budget Allocator
2016 San José, CA Budget Allocator2016 San José, CA Budget Allocator
2016 San José, CA Budget Allocator
 
User Stories: Stories for Grown-Ups
User Stories: Stories for Grown-UpsUser Stories: Stories for Grown-Ups
User Stories: Stories for Grown-Ups
 
Write better user stories, deliver better software
Write better user stories, deliver better softwareWrite better user stories, deliver better software
Write better user stories, deliver better software
 
User Story Mapping: Deliverable slice of value
User Story Mapping: Deliverable slice of valueUser Story Mapping: Deliverable slice of value
User Story Mapping: Deliverable slice of value
 
The Art of Storytelling
The Art of StorytellingThe Art of Storytelling
The Art of Storytelling
 
Einführung in User Stories
Einführung in User StoriesEinführung in User Stories
Einführung in User Stories
 
Windows8 release preview_productguide_final_spanish
Windows8 release preview_productguide_final_spanishWindows8 release preview_productguide_final_spanish
Windows8 release preview_productguide_final_spanish
 
Stephany milagros grados vásquez tarea de la tyic i
Stephany   milagros grados vásquez  tarea de la tyic iStephany   milagros grados vásquez  tarea de la tyic i
Stephany milagros grados vásquez tarea de la tyic i
 
User stories schreiben
User stories schreibenUser stories schreiben
User stories schreiben
 
Introduction To User Stories For Agile Product Development
Introduction To User Stories For Agile Product DevelopmentIntroduction To User Stories For Agile Product Development
Introduction To User Stories For Agile Product Development
 
The DNA of an Innovative Product Owner by Anu Smalley
The DNA of an Innovative Product Owner by Anu SmalleyThe DNA of an Innovative Product Owner by Anu Smalley
The DNA of an Innovative Product Owner by Anu Smalley
 
As user, I hate user stories
As user, I hate user storiesAs user, I hate user stories
As user, I hate user stories
 
Overcoming Waterfallacies & Agilephobias
Overcoming Waterfallacies & AgilephobiasOvercoming Waterfallacies & Agilephobias
Overcoming Waterfallacies & Agilephobias
 
Agile Software Development
Agile Software DevelopmentAgile Software Development
Agile Software Development
 
Project Economics
Project EconomicsProject Economics
Project Economics
 
Scrum: Leading a Self-Organizing Team
Scrum: Leading a Self-Organizing TeamScrum: Leading a Self-Organizing Team
Scrum: Leading a Self-Organizing Team
 
Incorporating Learning and Expected Cost of Change
Incorporating Learning and Expected Cost of ChangeIncorporating Learning and Expected Cost of Change
Incorporating Learning and Expected Cost of Change
 

Similar to Introduction to User Stories

User Stories
User Stories User Stories
User Stories Mike Cohn
 
Becoming an Effective Product Owner
Becoming an Effective Product OwnerBecoming an Effective Product Owner
Becoming an Effective Product OwnerMike Cohn
 
Mobile Monetization
Mobile MonetizationMobile Monetization
Mobile Monetizationnpobbathi
 
WW Tip Sheet- Industry Tips and Tricks from Concur
WW Tip Sheet- Industry Tips and Tricks from ConcurWW Tip Sheet- Industry Tips and Tricks from Concur
WW Tip Sheet- Industry Tips and Tricks from ConcurBrian Conner
 
How to optimize your website for mobile devices and multiple browsers
How to optimize your website for mobile devices and multiple browsersHow to optimize your website for mobile devices and multiple browsers
How to optimize your website for mobile devices and multiple browsersFred Dilkes
 
Revisit the Strategies to Make Money with Free Apps.pdf
Revisit the Strategies to Make Money with Free Apps.pdfRevisit the Strategies to Make Money with Free Apps.pdf
Revisit the Strategies to Make Money with Free Apps.pdfTechugo
 
Boston User Group IBM OS Mar 18 - Final Deck
Boston User Group IBM OS Mar 18 - Final DeckBoston User Group IBM OS Mar 18 - Final Deck
Boston User Group IBM OS Mar 18 - Final DeckLaura Roach
 
LGW Contact State RTF Session - FINAL.pptx
LGW Contact State RTF Session - FINAL.pptxLGW Contact State RTF Session - FINAL.pptx
LGW Contact State RTF Session - FINAL.pptxAlainDesmier
 
Know and Delight Your Users: UX Analytics
Know and Delight Your Users: UX AnalyticsKnow and Delight Your Users: UX Analytics
Know and Delight Your Users: UX AnalyticsCemal Buyukgokcesu
 
ATDD And BDD The Great Beat Down…or…Debate
ATDD And BDD The Great Beat Down…or…DebateATDD And BDD The Great Beat Down…or…Debate
ATDD And BDD The Great Beat Down…or…DebateTEST Huddle
 
User Story Writing & Estimation For Testers By Mahesh Varadharajan
User Story Writing & Estimation For Testers By Mahesh VaradharajanUser Story Writing & Estimation For Testers By Mahesh Varadharajan
User Story Writing & Estimation For Testers By Mahesh VaradharajanAgile Testing Alliance
 
"Mobile Apps, beyond downloads, what’s next?" by Philippe Dumont
"Mobile Apps, beyond downloads, what’s next?" by Philippe Dumont"Mobile Apps, beyond downloads, what’s next?" by Philippe Dumont
"Mobile Apps, beyond downloads, what’s next?" by Philippe DumontTheFamily
 
Using Analytics to Influence Change
Using Analytics to Influence ChangeUsing Analytics to Influence Change
Using Analytics to Influence ChangeChristopher Au
 
Increase sales with e commerce chat on your commercial website
Increase sales with e commerce chat on your commercial websiteIncrease sales with e commerce chat on your commercial website
Increase sales with e commerce chat on your commercial websiteAndolasoft Inc
 
PMI-ACP Lesson 03 Nugget 1 Agile Planning, Monitoring and Adopting
PMI-ACP Lesson 03 Nugget 1 Agile Planning, Monitoring and AdoptingPMI-ACP Lesson 03 Nugget 1 Agile Planning, Monitoring and Adopting
PMI-ACP Lesson 03 Nugget 1 Agile Planning, Monitoring and AdoptingThanh Nguyen
 
Final presentation
Final presentationFinal presentation
Final presentationBrandon Hill
 
18 Important Factors to Consider When Developing a Food Delivery App.pdf
18 Important Factors to Consider When Developing a Food Delivery App.pdf18 Important Factors to Consider When Developing a Food Delivery App.pdf
18 Important Factors to Consider When Developing a Food Delivery App.pdfYelowsoft
 
Killer profitsecrets
Killer profitsecretsKiller profitsecrets
Killer profitsecretsPaul Counts
 
apidays LIVE London 2021 - Best practices when monetizing APIs by Derric Gill...
apidays LIVE London 2021 - Best practices when monetizing APIs by Derric Gill...apidays LIVE London 2021 - Best practices when monetizing APIs by Derric Gill...
apidays LIVE London 2021 - Best practices when monetizing APIs by Derric Gill...apidays
 

Similar to Introduction to User Stories (20)

User Stories
User Stories User Stories
User Stories
 
Becoming an Effective Product Owner
Becoming an Effective Product OwnerBecoming an Effective Product Owner
Becoming an Effective Product Owner
 
Mobile Monetization
Mobile MonetizationMobile Monetization
Mobile Monetization
 
WW Tip Sheet- Industry Tips and Tricks from Concur
WW Tip Sheet- Industry Tips and Tricks from ConcurWW Tip Sheet- Industry Tips and Tricks from Concur
WW Tip Sheet- Industry Tips and Tricks from Concur
 
How to optimize your website for mobile devices and multiple browsers
How to optimize your website for mobile devices and multiple browsersHow to optimize your website for mobile devices and multiple browsers
How to optimize your website for mobile devices and multiple browsers
 
Revisit the Strategies to Make Money with Free Apps.pdf
Revisit the Strategies to Make Money with Free Apps.pdfRevisit the Strategies to Make Money with Free Apps.pdf
Revisit the Strategies to Make Money with Free Apps.pdf
 
Boston User Group IBM OS Mar 18 - Final Deck
Boston User Group IBM OS Mar 18 - Final DeckBoston User Group IBM OS Mar 18 - Final Deck
Boston User Group IBM OS Mar 18 - Final Deck
 
LGW Contact State RTF Session - FINAL.pptx
LGW Contact State RTF Session - FINAL.pptxLGW Contact State RTF Session - FINAL.pptx
LGW Contact State RTF Session - FINAL.pptx
 
Know and Delight Your Users: UX Analytics
Know and Delight Your Users: UX AnalyticsKnow and Delight Your Users: UX Analytics
Know and Delight Your Users: UX Analytics
 
ATDD And BDD The Great Beat Down…or…Debate
ATDD And BDD The Great Beat Down…or…DebateATDD And BDD The Great Beat Down…or…Debate
ATDD And BDD The Great Beat Down…or…Debate
 
User Story Writing & Estimation For Testers By Mahesh Varadharajan
User Story Writing & Estimation For Testers By Mahesh VaradharajanUser Story Writing & Estimation For Testers By Mahesh Varadharajan
User Story Writing & Estimation For Testers By Mahesh Varadharajan
 
"Mobile Apps, beyond downloads, what’s next?" by Philippe Dumont
"Mobile Apps, beyond downloads, what’s next?" by Philippe Dumont"Mobile Apps, beyond downloads, what’s next?" by Philippe Dumont
"Mobile Apps, beyond downloads, what’s next?" by Philippe Dumont
 
Using Analytics to Influence Change
Using Analytics to Influence ChangeUsing Analytics to Influence Change
Using Analytics to Influence Change
 
Increase sales with e commerce chat on your commercial website
Increase sales with e commerce chat on your commercial websiteIncrease sales with e commerce chat on your commercial website
Increase sales with e commerce chat on your commercial website
 
PMI-ACP Lesson 03 Nugget 1 Agile Planning, Monitoring and Adopting
PMI-ACP Lesson 03 Nugget 1 Agile Planning, Monitoring and AdoptingPMI-ACP Lesson 03 Nugget 1 Agile Planning, Monitoring and Adopting
PMI-ACP Lesson 03 Nugget 1 Agile Planning, Monitoring and Adopting
 
Mvp assignment
Mvp assignmentMvp assignment
Mvp assignment
 
Final presentation
Final presentationFinal presentation
Final presentation
 
18 Important Factors to Consider When Developing a Food Delivery App.pdf
18 Important Factors to Consider When Developing a Food Delivery App.pdf18 Important Factors to Consider When Developing a Food Delivery App.pdf
18 Important Factors to Consider When Developing a Food Delivery App.pdf
 
Killer profitsecrets
Killer profitsecretsKiller profitsecrets
Killer profitsecrets
 
apidays LIVE London 2021 - Best practices when monetizing APIs by Derric Gill...
apidays LIVE London 2021 - Best practices when monetizing APIs by Derric Gill...apidays LIVE London 2021 - Best practices when monetizing APIs by Derric Gill...
apidays LIVE London 2021 - Best practices when monetizing APIs by Derric Gill...
 

More from Mike Cohn

Agile Estimating - NDC 2014
Agile Estimating - NDC 2014Agile Estimating - NDC 2014
Agile Estimating - NDC 2014Mike Cohn
 
Advanced Agile Planning - NDC 2014
Advanced Agile Planning - NDC 2014Advanced Agile Planning - NDC 2014
Advanced Agile Planning - NDC 2014Mike Cohn
 
Leading Self Organizing Teams - NDC 2014
Leading Self Organizing Teams - NDC 2014Leading Self Organizing Teams - NDC 2014
Leading Self Organizing Teams - NDC 2014Mike Cohn
 
Getting Agile with Srum
Getting Agile with SrumGetting Agile with Srum
Getting Agile with SrumMike Cohn
 
Advanced Agile Planning
Advanced Agile PlanningAdvanced Agile Planning
Advanced Agile PlanningMike Cohn
 
Agile Estimating
Agile EstimatingAgile Estimating
Agile EstimatingMike Cohn
 
Getting Agile with Srum
Getting Agile with SrumGetting Agile with Srum
Getting Agile with SrumMike Cohn
 
Scaling Agile and Working with a Distributed Team
Scaling Agile and Working with a Distributed TeamScaling Agile and Working with a Distributed Team
Scaling Agile and Working with a Distributed TeamMike Cohn
 
Agile planning and project management
Agile planning and project managementAgile planning and project management
Agile planning and project managementMike Cohn
 
ADAPTing to Agile Development
ADAPTing to Agile DevelopmentADAPTing to Agile Development
ADAPTing to Agile DevelopmentMike Cohn
 
ADAPTing to Agile for Continued Success
ADAPTing to Agile for Continued SuccessADAPTing to Agile for Continued Success
ADAPTing to Agile for Continued SuccessMike Cohn
 
ADAPTing to Enterprise Agile
ADAPTing to Enterprise AgileADAPTing to Enterprise Agile
ADAPTing to Enterprise AgileMike Cohn
 
Advanced Topics in Agile Planning
Advanced Topics in Agile PlanningAdvanced Topics in Agile Planning
Advanced Topics in Agile PlanningMike Cohn
 
Agile and Scrum for Video Game Development
Agile and Scrum for Video Game DevelopmentAgile and Scrum for Video Game Development
Agile and Scrum for Video Game DevelopmentMike Cohn
 
Agile and the Seven Sins of Project Management
Agile and the Seven Sins of Project ManagementAgile and the Seven Sins of Project Management
Agile and the Seven Sins of Project ManagementMike Cohn
 
Agile Estimating
Agile EstimatingAgile Estimating
Agile EstimatingMike Cohn
 
Agile Product Management
Agile Product ManagementAgile Product Management
Agile Product ManagementMike Cohn
 
Getting Agile with Scrum
Getting Agile with ScrumGetting Agile with Scrum
Getting Agile with ScrumMike Cohn
 
Assessing Your Agility: Introducing the Comparative Agility Assessment
Assessing Your Agility: Introducing the Comparative Agility AssessmentAssessing Your Agility: Introducing the Comparative Agility Assessment
Assessing Your Agility: Introducing the Comparative Agility AssessmentMike Cohn
 
Planning and Tracking Agile Projects
Planning and Tracking Agile ProjectsPlanning and Tracking Agile Projects
Planning and Tracking Agile ProjectsMike Cohn
 

More from Mike Cohn (20)

Agile Estimating - NDC 2014
Agile Estimating - NDC 2014Agile Estimating - NDC 2014
Agile Estimating - NDC 2014
 
Advanced Agile Planning - NDC 2014
Advanced Agile Planning - NDC 2014Advanced Agile Planning - NDC 2014
Advanced Agile Planning - NDC 2014
 
Leading Self Organizing Teams - NDC 2014
Leading Self Organizing Teams - NDC 2014Leading Self Organizing Teams - NDC 2014
Leading Self Organizing Teams - NDC 2014
 
Getting Agile with Srum
Getting Agile with SrumGetting Agile with Srum
Getting Agile with Srum
 
Advanced Agile Planning
Advanced Agile PlanningAdvanced Agile Planning
Advanced Agile Planning
 
Agile Estimating
Agile EstimatingAgile Estimating
Agile Estimating
 
Getting Agile with Srum
Getting Agile with SrumGetting Agile with Srum
Getting Agile with Srum
 
Scaling Agile and Working with a Distributed Team
Scaling Agile and Working with a Distributed TeamScaling Agile and Working with a Distributed Team
Scaling Agile and Working with a Distributed Team
 
Agile planning and project management
Agile planning and project managementAgile planning and project management
Agile planning and project management
 
ADAPTing to Agile Development
ADAPTing to Agile DevelopmentADAPTing to Agile Development
ADAPTing to Agile Development
 
ADAPTing to Agile for Continued Success
ADAPTing to Agile for Continued SuccessADAPTing to Agile for Continued Success
ADAPTing to Agile for Continued Success
 
ADAPTing to Enterprise Agile
ADAPTing to Enterprise AgileADAPTing to Enterprise Agile
ADAPTing to Enterprise Agile
 
Advanced Topics in Agile Planning
Advanced Topics in Agile PlanningAdvanced Topics in Agile Planning
Advanced Topics in Agile Planning
 
Agile and Scrum for Video Game Development
Agile and Scrum for Video Game DevelopmentAgile and Scrum for Video Game Development
Agile and Scrum for Video Game Development
 
Agile and the Seven Sins of Project Management
Agile and the Seven Sins of Project ManagementAgile and the Seven Sins of Project Management
Agile and the Seven Sins of Project Management
 
Agile Estimating
Agile EstimatingAgile Estimating
Agile Estimating
 
Agile Product Management
Agile Product ManagementAgile Product Management
Agile Product Management
 
Getting Agile with Scrum
Getting Agile with ScrumGetting Agile with Scrum
Getting Agile with Scrum
 
Assessing Your Agility: Introducing the Comparative Agility Assessment
Assessing Your Agility: Introducing the Comparative Agility AssessmentAssessing Your Agility: Introducing the Comparative Agility Assessment
Assessing Your Agility: Introducing the Comparative Agility Assessment
 
Planning and Tracking Agile Projects
Planning and Tracking Agile ProjectsPlanning and Tracking Agile Projects
Planning and Tracking Agile Projects
 

Recently uploaded

Effective Strategies for Maximizing Your Profit When Selling Gold Jewelry
Effective Strategies for Maximizing Your Profit When Selling Gold JewelryEffective Strategies for Maximizing Your Profit When Selling Gold Jewelry
Effective Strategies for Maximizing Your Profit When Selling Gold JewelryWhittensFineJewelry1
 
How To Simplify Your Scheduling with AI Calendarfly The Hassle-Free Online Bo...
How To Simplify Your Scheduling with AI Calendarfly The Hassle-Free Online Bo...How To Simplify Your Scheduling with AI Calendarfly The Hassle-Free Online Bo...
How To Simplify Your Scheduling with AI Calendarfly The Hassle-Free Online Bo...SOFTTECHHUB
 
digital marketing , introduction of digital marketing
digital marketing , introduction of digital marketingdigital marketing , introduction of digital marketing
digital marketing , introduction of digital marketingrajputmeenakshi733
 
Planetary and Vedic Yagyas Bring Positive Impacts in Life
Planetary and Vedic Yagyas Bring Positive Impacts in LifePlanetary and Vedic Yagyas Bring Positive Impacts in Life
Planetary and Vedic Yagyas Bring Positive Impacts in LifeBhavana Pujan Kendra
 
1911 Gold Corporate Presentation Apr 2024.pdf
1911 Gold Corporate Presentation Apr 2024.pdf1911 Gold Corporate Presentation Apr 2024.pdf
1911 Gold Corporate Presentation Apr 2024.pdfShaun Heinrichs
 
EUDR Info Meeting Ethiopian coffee exporters
EUDR Info Meeting Ethiopian coffee exportersEUDR Info Meeting Ethiopian coffee exporters
EUDR Info Meeting Ethiopian coffee exportersPeter Horsten
 
Send Files | Sendbig.comSend Files | Sendbig.com
Send Files | Sendbig.comSend Files | Sendbig.comSend Files | Sendbig.comSend Files | Sendbig.com
Send Files | Sendbig.comSend Files | Sendbig.comSendBig4
 
Intermediate Accounting, Volume 2, 13th Canadian Edition by Donald E. Kieso t...
Intermediate Accounting, Volume 2, 13th Canadian Edition by Donald E. Kieso t...Intermediate Accounting, Volume 2, 13th Canadian Edition by Donald E. Kieso t...
Intermediate Accounting, Volume 2, 13th Canadian Edition by Donald E. Kieso t...ssuserf63bd7
 
The-Ethical-issues-ghhhhhhhhjof-Byjus.pptx
The-Ethical-issues-ghhhhhhhhjof-Byjus.pptxThe-Ethical-issues-ghhhhhhhhjof-Byjus.pptx
The-Ethical-issues-ghhhhhhhhjof-Byjus.pptxmbikashkanyari
 
Traction part 2 - EOS Model JAX Bridges.
Traction part 2 - EOS Model JAX Bridges.Traction part 2 - EOS Model JAX Bridges.
Traction part 2 - EOS Model JAX Bridges.Anamaria Contreras
 
How Generative AI Is Transforming Your Business | Byond Growth Insights | Apr...
How Generative AI Is Transforming Your Business | Byond Growth Insights | Apr...How Generative AI Is Transforming Your Business | Byond Growth Insights | Apr...
How Generative AI Is Transforming Your Business | Byond Growth Insights | Apr...Hector Del Castillo, CPM, CPMM
 
20200128 Ethical by Design - Whitepaper.pdf
20200128 Ethical by Design - Whitepaper.pdf20200128 Ethical by Design - Whitepaper.pdf
20200128 Ethical by Design - Whitepaper.pdfChris Skinner
 
Supercharge Your eCommerce Stores-acowebs
Supercharge Your eCommerce Stores-acowebsSupercharge Your eCommerce Stores-acowebs
Supercharge Your eCommerce Stores-acowebsGOKUL JS
 
NAB Show Exhibitor List 2024 - Exhibitors Data
NAB Show Exhibitor List 2024 - Exhibitors DataNAB Show Exhibitor List 2024 - Exhibitors Data
NAB Show Exhibitor List 2024 - Exhibitors DataExhibitors Data
 
Fordham -How effective decision-making is within the IT department - Analysis...
Fordham -How effective decision-making is within the IT department - Analysis...Fordham -How effective decision-making is within the IT department - Analysis...
Fordham -How effective decision-making is within the IT department - Analysis...Peter Ward
 
The McKinsey 7S Framework: A Holistic Approach to Harmonizing All Parts of th...
The McKinsey 7S Framework: A Holistic Approach to Harmonizing All Parts of th...The McKinsey 7S Framework: A Holistic Approach to Harmonizing All Parts of th...
The McKinsey 7S Framework: A Holistic Approach to Harmonizing All Parts of th...Operational Excellence Consulting
 
1911 Gold Corporate Presentation Apr 2024.pdf
1911 Gold Corporate Presentation Apr 2024.pdf1911 Gold Corporate Presentation Apr 2024.pdf
1911 Gold Corporate Presentation Apr 2024.pdfShaun Heinrichs
 
Cybersecurity Awareness Training Presentation v2024.03
Cybersecurity Awareness Training Presentation v2024.03Cybersecurity Awareness Training Presentation v2024.03
Cybersecurity Awareness Training Presentation v2024.03DallasHaselhorst
 
Driving Business Impact for PMs with Jon Harmer
Driving Business Impact for PMs with Jon HarmerDriving Business Impact for PMs with Jon Harmer
Driving Business Impact for PMs with Jon HarmerAggregage
 

Recently uploaded (20)

Effective Strategies for Maximizing Your Profit When Selling Gold Jewelry
Effective Strategies for Maximizing Your Profit When Selling Gold JewelryEffective Strategies for Maximizing Your Profit When Selling Gold Jewelry
Effective Strategies for Maximizing Your Profit When Selling Gold Jewelry
 
How To Simplify Your Scheduling with AI Calendarfly The Hassle-Free Online Bo...
How To Simplify Your Scheduling with AI Calendarfly The Hassle-Free Online Bo...How To Simplify Your Scheduling with AI Calendarfly The Hassle-Free Online Bo...
How To Simplify Your Scheduling with AI Calendarfly The Hassle-Free Online Bo...
 
digital marketing , introduction of digital marketing
digital marketing , introduction of digital marketingdigital marketing , introduction of digital marketing
digital marketing , introduction of digital marketing
 
Planetary and Vedic Yagyas Bring Positive Impacts in Life
Planetary and Vedic Yagyas Bring Positive Impacts in LifePlanetary and Vedic Yagyas Bring Positive Impacts in Life
Planetary and Vedic Yagyas Bring Positive Impacts in Life
 
1911 Gold Corporate Presentation Apr 2024.pdf
1911 Gold Corporate Presentation Apr 2024.pdf1911 Gold Corporate Presentation Apr 2024.pdf
1911 Gold Corporate Presentation Apr 2024.pdf
 
EUDR Info Meeting Ethiopian coffee exporters
EUDR Info Meeting Ethiopian coffee exportersEUDR Info Meeting Ethiopian coffee exporters
EUDR Info Meeting Ethiopian coffee exporters
 
Send Files | Sendbig.comSend Files | Sendbig.com
Send Files | Sendbig.comSend Files | Sendbig.comSend Files | Sendbig.comSend Files | Sendbig.com
Send Files | Sendbig.comSend Files | Sendbig.com
 
Intermediate Accounting, Volume 2, 13th Canadian Edition by Donald E. Kieso t...
Intermediate Accounting, Volume 2, 13th Canadian Edition by Donald E. Kieso t...Intermediate Accounting, Volume 2, 13th Canadian Edition by Donald E. Kieso t...
Intermediate Accounting, Volume 2, 13th Canadian Edition by Donald E. Kieso t...
 
The-Ethical-issues-ghhhhhhhhjof-Byjus.pptx
The-Ethical-issues-ghhhhhhhhjof-Byjus.pptxThe-Ethical-issues-ghhhhhhhhjof-Byjus.pptx
The-Ethical-issues-ghhhhhhhhjof-Byjus.pptx
 
Traction part 2 - EOS Model JAX Bridges.
Traction part 2 - EOS Model JAX Bridges.Traction part 2 - EOS Model JAX Bridges.
Traction part 2 - EOS Model JAX Bridges.
 
How Generative AI Is Transforming Your Business | Byond Growth Insights | Apr...
How Generative AI Is Transforming Your Business | Byond Growth Insights | Apr...How Generative AI Is Transforming Your Business | Byond Growth Insights | Apr...
How Generative AI Is Transforming Your Business | Byond Growth Insights | Apr...
 
20200128 Ethical by Design - Whitepaper.pdf
20200128 Ethical by Design - Whitepaper.pdf20200128 Ethical by Design - Whitepaper.pdf
20200128 Ethical by Design - Whitepaper.pdf
 
Supercharge Your eCommerce Stores-acowebs
Supercharge Your eCommerce Stores-acowebsSupercharge Your eCommerce Stores-acowebs
Supercharge Your eCommerce Stores-acowebs
 
NAB Show Exhibitor List 2024 - Exhibitors Data
NAB Show Exhibitor List 2024 - Exhibitors DataNAB Show Exhibitor List 2024 - Exhibitors Data
NAB Show Exhibitor List 2024 - Exhibitors Data
 
Fordham -How effective decision-making is within the IT department - Analysis...
Fordham -How effective decision-making is within the IT department - Analysis...Fordham -How effective decision-making is within the IT department - Analysis...
Fordham -How effective decision-making is within the IT department - Analysis...
 
The McKinsey 7S Framework: A Holistic Approach to Harmonizing All Parts of th...
The McKinsey 7S Framework: A Holistic Approach to Harmonizing All Parts of th...The McKinsey 7S Framework: A Holistic Approach to Harmonizing All Parts of th...
The McKinsey 7S Framework: A Holistic Approach to Harmonizing All Parts of th...
 
WAM Corporate Presentation April 12 2024.pdf
WAM Corporate Presentation April 12 2024.pdfWAM Corporate Presentation April 12 2024.pdf
WAM Corporate Presentation April 12 2024.pdf
 
1911 Gold Corporate Presentation Apr 2024.pdf
1911 Gold Corporate Presentation Apr 2024.pdf1911 Gold Corporate Presentation Apr 2024.pdf
1911 Gold Corporate Presentation Apr 2024.pdf
 
Cybersecurity Awareness Training Presentation v2024.03
Cybersecurity Awareness Training Presentation v2024.03Cybersecurity Awareness Training Presentation v2024.03
Cybersecurity Awareness Training Presentation v2024.03
 
Driving Business Impact for PMs with Jon Harmer
Driving Business Impact for PMs with Jon HarmerDriving Business Impact for PMs with Jon Harmer
Driving Business Impact for PMs with Jon Harmer
 

Introduction to User Stories

  • 1. Mike Cohn Norwegian Developer’s Conference 6 June 2012 User Stories 1
  • 2. © Copyright Mountain Goat Software ® What problem do stories address? Software requirements is a communication problem Those who want the software must communicate with those who will build it 2
  • 3. © Copyright Mountain Goat Software ® Balance is critical If either side dominates, the business loses If the business side dominates… …functionality and dates are mandated with little regard for reality or whether the developers understand the requirements If the developers dominate… …technical jargon replaces the language of the business and developers lose the opportunity to learn from listening 3
  • 4. © Copyright Mountain Goat Software ® Resource allocation We need a way of working together so that resource allocation becomes a shared problem Project fails when the problem of resource allocation falls too far to one side 4
  • 5. © Copyright Mountain Goat Software ® Responsibility for resource allocation If developers are responsible… May trade quality for additional features May only partially implement a feature May solely make decisions that should involve the business If the business is responsible… Lengthy upfront requirements negotiation and signoff Features are progressively dropped as the deadline nears 5
  • 6. © Copyright Mountain Goat Software ® Imperfect schedules We cannot perfectly predict a software schedule As users see the software, they come up with new ideas Too many intangibles Developers have a notoriously hard time estimating If we can’t perfectly predict a schedule, we can’t perfectly say what will be delivered 6
  • 7. © Copyright Mountain Goat Software ® This is where user stories come in So what do we do? …but do it often We make decisions based on the information we have …we spread decision- making across the project Rather than making one all-encompassing set of decisions 7
  • 8. © Copyright Mountain Goat Software ® Agenda What stories are Writing user stories Why user stories 8
  • 9. © Copyright Mountain Goat Software ® Three Cs Stories are traditionally written on note cards. Cards may be annotated with estimates, notes, etc. Card Details behind the story come out during conversations with product owner Conversation story was coded correctly Confirmation Source: XP Magazine 8/30/01, Ron Jeffries. 9
  • 10. © Copyright Mountain Goat Software ® As a user, I want to reserve a hotel room. As a user, I want to cancel a reservation. As a vacation traveler, I want to see photos of the hotels. As a frequent flyer, I want to rebook a past trip so that I save time booking trips I take often. Samples from a travel website 10
  • 11. © Copyright Mountain Goat Software ® Where are the details? As a user, I can cancel a reservation. Does the user get a full or partial refund? Is the refund to her credit card or is it site credit? How far ahead must the reservation be cancelled? Is that the same for all hotels? For all site visitors? Can frequent travelers cancel later? Is a confirmation provided to the user? How? 11
  • 12. © Copyright Mountain Goat Software ® Details as conditions of satisfaction As a user, I can cancel a reservation. Verify that a premium member can cancel the same day without a fee. Verify that a non-premium member is charged 10% for a same-day cancellation. Verify that an email confirmation is sent. Verify that the hotel is notified of any cancellation. • The product owner’s conditions of satisfaction can be added to a story • These are essentially tests 12
  • 13. © Copyright Mountain Goat Software ® Details added in smaller sub-stories As a user, I can cancel a reservation. As a site visitor, I am emailed a confirmation of any cancelled reservation. As a non-premium member, I can cancel up to 24 hours in advance. As a premium site member, I can cancel a reservation up to the last minute. 13
  • 14. © Copyright Mountain Goat Software ® Techniques can be combined These approaches are not mutually exclusive Write stories at an appropriate level By the time it’s implemented, each story will have conditions of satisfaction associated with it 14
  • 15. © Copyright Mountain Goat Software® The product backlog iceberg Priority 15
  • 16. © Copyright Mountain Goat Software ® Some additional useful terms Epic A large user story Theme A collection of related user stories 16
  • 17. © Copyright Mountain Goat Software ® An example As a VP Marketing, I want to select the timeframe to use when reviewing the performance of past promotional campaigns, so that … As a VP Marketing, I can select which type of campaigns (direct mail, TV, email, radio, etc.) to include when reviewing the performance of past … As a VP Marketing, I want to review the performance of historical promotional campaigns so that I can identify and repeat profitable ones. Clearly an epic Epics??? 17
  • 18. © Copyright Mountain Goat Software ® As a VP Marketing, I want to see information on direct mailings when reviewing historical campaigns. As a VP Marketing, I want to see information on TV ads when reviewing historical campaigns. As a VP Marketing, I want to see information on email ads when reviewing historical campaigns. 18
  • 19. © Copyright Mountain Goat Software ® Agenda What stories are Writing user stories Why user stories 19
  • 20. © Copyright Mountain Goat Software ® Logging in •See how many user stories you can write about logging in. •Examples: •As a registered user, I am required to log in so that I can access the system. •As a forgetful user, I can request a password reminder so that I can log in if I forget mine. “As a <user role>, I <want/need/can/ etc> <goal> so that <reason>.” 20
  • 21. © Copyright Mountain Goat Software ® Story-writing workshops Includes whole team plus possibly some external stakeholders Typically not done every sprint Brainstorm to generate stories Goal is to write as many stories as possible Some will be “implementation ready” Others will be epics No prioritization at this point 21
  • 22. © Copyright Mountain Goat Software ® Start with epics and iterate As a frequent flyer, I want to book a trip using miles. As a frequent flyer, I want to rebook a trip I take often. As a frequent flyer, I want to request an upgrade. As a frequent flyer, I want to see if my upgrade cleared. As a frequent flyer, I want to see check my account. As a frequent flyer, I want to book a trip. As a frequent flyer, I want to… Frequent Flyer 22
  • 23. © Copyright Mountain Goat Software ® Agenda What stories are Writing user stories Why user stories 23
  • 24. © Copyright Mountain Goat Software ® So why user stories? If requirements are written down The user will get what she wants then At best she’ll get what was written“You built what I asked for, but it’s not what I need.” Shift focus from writing to talking 24
  • 25. © Copyright Mountain Goat Software ® Words are imprecise Entrée comes with soup or salad and bread. • (Soup or Salad) and Bread • (Soup) or (Salad and Bread) Which is right? 25
  • 26. © Copyright Mountain Goat Software ® Examples The user can enter a name. It can be 127 characters. The system should prominently display a warning message whenever the user enters invalid data. • Must the user enter a name? • Can it be other than 127 chars? • What does should mean? • What does prominently display mean? • Is invalid data defined elsewhere? 26
  • 27. © Copyright Mountain Goat Software ® Additional reasons Stories are understandable Developers and customers understand them People are better able to remember events if they are organized into stories† Support and encourage iterative development Can easily start with epics and disaggregate closer to development time †Bower, Black, and Turner. 1979. Scripts in Memory for Text. 27
  • 28. © Copyright Mountain Goat Software ® Yet more reasons Stories are the right size for planning Stories support opportunistic development We design solutions by moving opportunistically between top-down and bottom-up approaches† Stories support participatory design †Guindon. 1990. Designing the Design Process. 28
  • 29. © Copyright Mountain Goat Software ® What if we had stories instead? 29
  • 30. © Copyright Mountain Goat Software ® Most importantly… The story text we write on cards is less important than the conversations we have. Don’t forget the purpose 30
  • 31. © Copyright Mountain Goat Software ® mike@mountaingoatsoftware.com www.mountaingoatsoftware.com twitter: mikewcohn (720) 890-6110 Mike Cohn 31