SlideShare une entreprise Scribd logo
1  sur  42
Télécharger pour lire hors ligne
Writing better user
stories
José E. Rodríguez Huerta
(@jrhuerta)
Disclaimer
Not a single original
thought in this
presentation.
Although there is some first hand
experience
What this talk is about
•  Why use user stories at all?
•  Some guidelines on how to
improve
•  Identifying common “user
story smells…”
Why use User stories
at all?
Requirements gathering is an
integral part of software
development
Common pitfalls
•  Lack of context
•  Fail to deliver value
•  Overly specified
•  User/Client doesnt know
what they want.
•  No priorization
•  Hard to build incrementaly
•  Difficult to estimate
•  Too long… Didn’t read.
•  Too technical… Didn’t read.
•  Long time to market cycle
•  Not always clear who the
users are and what they
expect from the software.
•  Long feedback loops
from users/stakeholders
•  Acceptance criteria is:
everything is implemented.
•  Hard to maintain
User stories to the rescue!
Yes, they are still a
requirements document,
but…
They are cool
How do User Stories
address those problems?
•  Provide Context =>
Aligment
•  End user/customer
language, makes it easy
to read/understand
bridges the gap between
technical and business
•  Focus on Delivering Value
•  User/Customer centered
•  Small, Cheap
•  Easily priorizable and re-
priorizable
•  Versatile
•  Switch the focus to
communication instead of
a detailed specification.
•  Shortens Time to Market.
What is a user story?
three critical parts:
– Card
– Conversation
– Confirmation
(“conversation placeholders”)
What is
a “Good” USER STORY?	
  
It helps YOU
to solve your problem
Defining a “good” u.s.
•  follows the INVEST acronym
(by Bill Wake)
•  Defines conditions FOR
“satisfaction” (in DoD)
•  Defines conditions FOR
“readyness” (in DoR)
Defining a “good” U.S.
•  Uses the customer’s language
•  has the Who, the What and Why
•  Everyone participates in
defining/refining
I.N.V.E.S.T.
•  Independent
•  Negotiable
•  Value
•  Estimable
•  Size/Small
•  Testable
I for Independent
Independent also means it can
be built incrementaly
and iteratively
Incremental
Art	
  by	
  Jeff	
  Pa,on	
  
Iterative
Art	
  by	
  Jeff	
  	
  Pa,on	
  
Incremental-Interative
Art	
  by	
  Steven	
  Thomas	
  
I for Independent
Ok… maybe, some dependency
N for Negotiable
•  Avoid implementation details
– It says the What, not the How.
•  Its not carved in stone
– Until its part of an iteration it
can still be rewritten
V for Value
Provide value to your customer
with every story
V for Value
V for Value
V for Value
E for Estimable
Otherwise you can’t know when it
will be done
(or if it will ever be…)
S for Size/Small
•  If its too big, split it.
–  Learn how.
•  If it too small, maybe its not a
user story
–  I smell micromanagement!
T for Testable
If it’s not worth testing it…
Is it worth writting it?
Not everything is a
User Story
What?
•  The process context:
–  Definition of Done
–  Definition of Ready
•  Non functional requirements:
–  Requirements that extend
through the whole project
Use aids to “Power Up”
•  Wireframes
•  Navigation maps
•  Color tags
•  Personas
•  User Story maps
•  Anything else you may find
useful
Use aids to “Power Up”
•  Wireframes
•  Navigation maps
•  Color tags
•  Personas
•  User Story maps
•  Anything else you may find useful
Revise and Refine and even
Re-do
•  User stories are alive, they:
–  Are Born
–  Grow
–  Reproduce
–  Die
•  Make time to groom your
backlog with the team and client
user story smells
User Story smells…
•  Too much detail or too little detail
•  No conditions of satisfaction
•  A story per page/component or
sliced in ways that don’t deliver value
•  Technical tasks masqueraded as user
stories
•  Skipping the conversation
15m is not a lot of time
so…
Where DO I get more info?
•  Agile Barcelona community (@agilebcn)
•  Books:
–  User stories applied: For Agile Software
Development by Mike Cohn
–  Lean UX: Applying Lean Principles to Improve
User Experience by Jeff Gothelf & Josh Seiden
•  The Mountain Goat Software:
http://www.mountaingoatsoftware.com/
•  Google
 
Thanks
Any questions?
(@jrhuerta)

Contenu connexe

Tendances

Introducing Agile User Stories
Introducing Agile User StoriesIntroducing Agile User Stories
Introducing Agile User StoriesRam Srivastava
 
Writing User Stories (04/2012)
Writing User Stories (04/2012)Writing User Stories (04/2012)
Writing User Stories (04/2012)Mai Quay
 
21 Story Splitting Patterns
21 Story Splitting Patterns21 Story Splitting Patterns
21 Story Splitting PatternsKent McDonald
 
Splitting Stories with the Hamburger Method - A Simple 5 Step Process
Splitting Stories with the Hamburger Method - A Simple 5 Step ProcessSplitting Stories with the Hamburger Method - A Simple 5 Step Process
Splitting Stories with the Hamburger Method - A Simple 5 Step ProcessStephen Tucker
 
"How to write better User Stories" por @jrhuerta
"How to write better User Stories" por @jrhuerta"How to write better User Stories" por @jrhuerta
"How to write better User Stories" por @jrhuertawebcat
 
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
 
User Story Slicing - easy way to split user stories
User Story Slicing - easy way to split user stories  User Story Slicing - easy way to split user stories
User Story Slicing - easy way to split user stories Arto Eskelinen
 
Techniques for Effectively Slicing User Stories by Naresh Jain
Techniques for Effectively Slicing User Stories by Naresh JainTechniques for Effectively Slicing User Stories by Naresh Jain
Techniques for Effectively Slicing User Stories by Naresh JainNaresh Jain
 
Invest In Good User Stories
Invest In Good User StoriesInvest In Good User Stories
Invest In Good User StoriesCraig Brown
 
User Story Mapping Workshop
User Story Mapping WorkshopUser Story Mapping Workshop
User Story Mapping WorkshopDana Pylayeva
 
User Story Maps: Secrets for Better Backlogs and Planning
 User Story Maps: Secrets for Better Backlogs and Planning User Story Maps: Secrets for Better Backlogs and Planning
User Story Maps: Secrets for Better Backlogs and PlanningAaron Sanders
 
User Story Splitting
User Story SplittingUser Story Splitting
User Story Splittingtrishly
 

Tendances (20)

Introducing Agile User Stories
Introducing Agile User StoriesIntroducing Agile User Stories
Introducing Agile User Stories
 
User Stories explained
User Stories explainedUser Stories explained
User Stories explained
 
User Stories
User StoriesUser Stories
User Stories
 
Story of user story
Story of user storyStory of user story
Story of user story
 
Writing User Stories (04/2012)
Writing User Stories (04/2012)Writing User Stories (04/2012)
Writing User Stories (04/2012)
 
Effective User Stories
Effective User StoriesEffective User Stories
Effective User Stories
 
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
 
21 Story Splitting Patterns
21 Story Splitting Patterns21 Story Splitting Patterns
21 Story Splitting Patterns
 
Splitting Stories with the Hamburger Method - A Simple 5 Step Process
Splitting Stories with the Hamburger Method - A Simple 5 Step ProcessSplitting Stories with the Hamburger Method - A Simple 5 Step Process
Splitting Stories with the Hamburger Method - A Simple 5 Step Process
 
"How to write better User Stories" por @jrhuerta
"How to write better User Stories" por @jrhuerta"How to write better User Stories" por @jrhuerta
"How to write better User Stories" por @jrhuerta
 
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
 
User Story
User StoryUser Story
User Story
 
User Story Slicing - easy way to split user stories
User Story Slicing - easy way to split user stories  User Story Slicing - easy way to split user stories
User Story Slicing - easy way to split user stories
 
Epics and User Stories
Epics and User StoriesEpics and User Stories
Epics and User Stories
 
User Story Mapping
User Story MappingUser Story Mapping
User Story Mapping
 
Techniques for Effectively Slicing User Stories by Naresh Jain
Techniques for Effectively Slicing User Stories by Naresh JainTechniques for Effectively Slicing User Stories by Naresh Jain
Techniques for Effectively Slicing User Stories by Naresh Jain
 
Invest In Good User Stories
Invest In Good User StoriesInvest In Good User Stories
Invest In Good User Stories
 
User Story Mapping Workshop
User Story Mapping WorkshopUser Story Mapping Workshop
User Story Mapping Workshop
 
User Story Maps: Secrets for Better Backlogs and Planning
 User Story Maps: Secrets for Better Backlogs and Planning User Story Maps: Secrets for Better Backlogs and Planning
User Story Maps: Secrets for Better Backlogs and Planning
 
User Story Splitting
User Story SplittingUser Story Splitting
User Story Splitting
 

Similaire à How to write good user stories

Building Shared Understanding Glenn McClure
Building Shared Understanding Glenn McClureBuilding Shared Understanding Glenn McClure
Building Shared Understanding Glenn McClureGlenn McClure
 
Agile Network India | Effective User story writing and story mapping approach
Agile Network India | Effective User story writing and story mapping approachAgile Network India | Effective User story writing and story mapping approach
Agile Network India | Effective User story writing and story mapping approachAgileNetwork
 
Agile Network India | Effective User story writing and story mapping approach...
Agile Network India | Effective User story writing and story mapping approach...Agile Network India | Effective User story writing and story mapping approach...
Agile Network India | Effective User story writing and story mapping approach...AgileNetwork
 
Agile Network India | Effective User story writing and story mapping approach...
Agile Network India | Effective User story writing and story mapping approach...Agile Network India | Effective User story writing and story mapping approach...
Agile Network India | Effective User story writing and story mapping approach...AgileNetwork
 
A11y user stories csun 2018
A11y user stories csun 2018A11y user stories csun 2018
A11y user stories csun 2018Intopia
 
A11y user stories CSUN 2018
A11y user stories CSUN 2018A11y user stories CSUN 2018
A11y user stories CSUN 2018Intopia
 
Right amount of details to the user story
Right amount of details to the user storyRight amount of details to the user story
Right amount of details to the user storyRamyaShastri1
 
Backlog Management & Discovery
Backlog Management & DiscoveryBacklog Management & Discovery
Backlog Management & DiscoveryTarun Singh
 
Lies, Damned Lies, and Pretty Pictures
Lies, Damned Lies, and Pretty PicturesLies, Damned Lies, and Pretty Pictures
Lies, Damned Lies, and Pretty Picturesvutpakdi
 
7-Epic, Story and Bug Reporting(updated).pptx
7-Epic, Story and Bug Reporting(updated).pptx7-Epic, Story and Bug Reporting(updated).pptx
7-Epic, Story and Bug Reporting(updated).pptxBishalKarki33
 
User Stories writing - Bettersoftware 2012
User Stories writing - Bettersoftware 2012User Stories writing - Bettersoftware 2012
User Stories writing - Bettersoftware 2012Fabio Armani
 
Agile Tips - All about stories
Agile Tips - All about storiesAgile Tips - All about stories
Agile Tips - All about storiesMikhail Dikov
 
User stories — how to cook a cat?
User stories — how to cook a cat?User stories — how to cook a cat?
User stories — how to cook a cat?Vladimir Tarasov
 

Similaire à How to write good user stories (20)

Story writing
Story writingStory writing
Story writing
 
Building Shared Understanding Glenn McClure
Building Shared Understanding Glenn McClureBuilding Shared Understanding Glenn McClure
Building Shared Understanding Glenn McClure
 
Agile Network India | Effective User story writing and story mapping approach
Agile Network India | Effective User story writing and story mapping approachAgile Network India | Effective User story writing and story mapping approach
Agile Network India | Effective User story writing and story mapping approach
 
Agile Network India | Effective User story writing and story mapping approach...
Agile Network India | Effective User story writing and story mapping approach...Agile Network India | Effective User story writing and story mapping approach...
Agile Network India | Effective User story writing and story mapping approach...
 
Agile Network India | Effective User story writing and story mapping approach...
Agile Network India | Effective User story writing and story mapping approach...Agile Network India | Effective User story writing and story mapping approach...
Agile Network India | Effective User story writing and story mapping approach...
 
Splitting User Stories
Splitting User StoriesSplitting User Stories
Splitting User Stories
 
A11y user stories csun 2018
A11y user stories csun 2018A11y user stories csun 2018
A11y user stories csun 2018
 
A11y user stories CSUN 2018
A11y user stories CSUN 2018A11y user stories CSUN 2018
A11y user stories CSUN 2018
 
Right amount of details to the user story
Right amount of details to the user storyRight amount of details to the user story
Right amount of details to the user story
 
Backlog Management & Discovery
Backlog Management & DiscoveryBacklog Management & Discovery
Backlog Management & Discovery
 
Trippe "Project Management Trends in Publishing: Agile is the New Norm and Th...
Trippe "Project Management Trends in Publishing: Agile is the New Norm and Th...Trippe "Project Management Trends in Publishing: Agile is the New Norm and Th...
Trippe "Project Management Trends in Publishing: Agile is the New Norm and Th...
 
Lies, Damned Lies, and Pretty Pictures
Lies, Damned Lies, and Pretty PicturesLies, Damned Lies, and Pretty Pictures
Lies, Damned Lies, and Pretty Pictures
 
7-Epic, Story and Bug Reporting(updated).pptx
7-Epic, Story and Bug Reporting(updated).pptx7-Epic, Story and Bug Reporting(updated).pptx
7-Epic, Story and Bug Reporting(updated).pptx
 
User Stories writing - Bettersoftware 2012
User Stories writing - Bettersoftware 2012User Stories writing - Bettersoftware 2012
User Stories writing - Bettersoftware 2012
 
All about User story
All about User storyAll about User story
All about User story
 
Agile Tips - All about stories
Agile Tips - All about storiesAgile Tips - All about stories
Agile Tips - All about stories
 
Agile Scrum - Crafting user stories
Agile Scrum - Crafting user storiesAgile Scrum - Crafting user stories
Agile Scrum - Crafting user stories
 
How tos of UX
How tos of UXHow tos of UX
How tos of UX
 
User Stories Training
User Stories TrainingUser Stories Training
User Stories Training
 
User stories — how to cook a cat?
User stories — how to cook a cat?User stories — how to cook a cat?
User stories — how to cook a cat?
 

Plus de Jose E. Rodriguez Huerta

Plus de Jose E. Rodriguez Huerta (10)

Building teams that excel - Creating trust in teams
Building teams that excel - Creating trust in teamsBuilding teams that excel - Creating trust in teams
Building teams that excel - Creating trust in teams
 
La muerte del silo - CAS2016
La muerte del silo - CAS2016La muerte del silo - CAS2016
La muerte del silo - CAS2016
 
An introduction to agile leadership
An introduction to agile leadershipAn introduction to agile leadership
An introduction to agile leadership
 
Developing leadership in the agile organization
Developing leadership in the agile organizationDeveloping leadership in the agile organization
Developing leadership in the agile organization
 
LeanUX - Presentation slides
LeanUX - Presentation slidesLeanUX - Presentation slides
LeanUX - Presentation slides
 
CAS2013 - ¿Cómo evitar que se vaya al carajo tu implantación de agile?
CAS2013 - ¿Cómo evitar que se vaya al carajo tu implantación de agile?CAS2013 - ¿Cómo evitar que se vaya al carajo tu implantación de agile?
CAS2013 - ¿Cómo evitar que se vaya al carajo tu implantación de agile?
 
Tdd like beethoven
Tdd like beethovenTdd like beethoven
Tdd like beethoven
 
Win win negotiation techniques
Win win negotiation techniquesWin win negotiation techniques
Win win negotiation techniques
 
TDD: ¿Cómo escribir código testeable?
TDD: ¿Cómo escribir código testeable?TDD: ¿Cómo escribir código testeable?
TDD: ¿Cómo escribir código testeable?
 
Principios SOLID de Diseño Orientado a Objetos
Principios SOLID de Diseño Orientado a ObjetosPrincipios SOLID de Diseño Orientado a Objetos
Principios SOLID de Diseño Orientado a Objetos
 

Dernier

Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 

Dernier (20)

Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 

How to write good user stories

  • 1. Writing better user stories José E. Rodríguez Huerta (@jrhuerta)
  • 2. Disclaimer Not a single original thought in this presentation. Although there is some first hand experience
  • 3. What this talk is about •  Why use user stories at all? •  Some guidelines on how to improve •  Identifying common “user story smells…”
  • 4. Why use User stories at all?
  • 5. Requirements gathering is an integral part of software development
  • 6.
  • 7.
  • 8. Common pitfalls •  Lack of context •  Fail to deliver value •  Overly specified •  User/Client doesnt know what they want. •  No priorization •  Hard to build incrementaly •  Difficult to estimate •  Too long… Didn’t read. •  Too technical… Didn’t read. •  Long time to market cycle •  Not always clear who the users are and what they expect from the software. •  Long feedback loops from users/stakeholders •  Acceptance criteria is: everything is implemented. •  Hard to maintain
  • 9. User stories to the rescue!
  • 10. Yes, they are still a requirements document, but…
  • 12. How do User Stories address those problems? •  Provide Context => Aligment •  End user/customer language, makes it easy to read/understand bridges the gap between technical and business •  Focus on Delivering Value •  User/Customer centered •  Small, Cheap •  Easily priorizable and re- priorizable •  Versatile •  Switch the focus to communication instead of a detailed specification. •  Shortens Time to Market.
  • 13. What is a user story? three critical parts: – Card – Conversation – Confirmation (“conversation placeholders”)
  • 14. What is a “Good” USER STORY?  
  • 15. It helps YOU to solve your problem
  • 16. Defining a “good” u.s. •  follows the INVEST acronym (by Bill Wake) •  Defines conditions FOR “satisfaction” (in DoD) •  Defines conditions FOR “readyness” (in DoR)
  • 17. Defining a “good” U.S. •  Uses the customer’s language •  has the Who, the What and Why •  Everyone participates in defining/refining
  • 18. I.N.V.E.S.T. •  Independent •  Negotiable •  Value •  Estimable •  Size/Small •  Testable
  • 19. I for Independent Independent also means it can be built incrementaly and iteratively
  • 21. Iterative Art  by  Jeff    Pa,on  
  • 23. I for Independent Ok… maybe, some dependency
  • 24. N for Negotiable •  Avoid implementation details – It says the What, not the How. •  Its not carved in stone – Until its part of an iteration it can still be rewritten
  • 25. V for Value Provide value to your customer with every story
  • 29. E for Estimable Otherwise you can’t know when it will be done (or if it will ever be…)
  • 30. S for Size/Small •  If its too big, split it. –  Learn how. •  If it too small, maybe its not a user story –  I smell micromanagement!
  • 31. T for Testable If it’s not worth testing it… Is it worth writting it?
  • 32. Not everything is a User Story
  • 33.
  • 34. What? •  The process context: –  Definition of Done –  Definition of Ready •  Non functional requirements: –  Requirements that extend through the whole project
  • 35. Use aids to “Power Up” •  Wireframes •  Navigation maps •  Color tags •  Personas •  User Story maps •  Anything else you may find useful
  • 36. Use aids to “Power Up” •  Wireframes •  Navigation maps •  Color tags •  Personas •  User Story maps •  Anything else you may find useful
  • 37. Revise and Refine and even Re-do •  User stories are alive, they: –  Are Born –  Grow –  Reproduce –  Die •  Make time to groom your backlog with the team and client
  • 39. User Story smells… •  Too much detail or too little detail •  No conditions of satisfaction •  A story per page/component or sliced in ways that don’t deliver value •  Technical tasks masqueraded as user stories •  Skipping the conversation
  • 40. 15m is not a lot of time so…
  • 41. Where DO I get more info? •  Agile Barcelona community (@agilebcn) •  Books: –  User stories applied: For Agile Software Development by Mike Cohn –  Lean UX: Applying Lean Principles to Improve User Experience by Jeff Gothelf & Josh Seiden •  The Mountain Goat Software: http://www.mountaingoatsoftware.com/ •  Google