SlideShare a Scribd company logo
User Story Writing and 
Estimation for Testers 
Mahesh Varadharajan 
Agile Consultant 
Confidential | Copyright © Agile Testing Alliance Global Gathering
Introduction 
The real challenge in writing software isn’t 
the time spent writing the code itself. 
Instead it’s the time spent deciding what 
software we should build, and perhaps just 
as importantly what we shouldn’t build. 
Confidential | Copyright © Agile Testing Alliance Global Gathering
Traditional development 
Boehm’s Cost of Change Curve: Change gets more expensive over time 
Confidential | Copyright © Agile Testing Alliance Global Gathering
The Agile Solution 
Transition from Big Requirements Upfront 
(BRUF) to Just-in-time (JIT) elaboration 
User Stories are an Agile approach to 
solving this problem; they’re lightweight, 
simple requirements. 
Confidential | Copyright © Agile Testing Alliance Global Gathering
Definition 
User stories are short, simple description of a feature told from the 
perspective of the person who desires the new capability, usually a user or 
customer of the system. 
Use simple English to write a user story 
There are several ways of writing a user story, templates help to build 
consistency 
Confidential | Copyright © Agile Testing Alliance Global Gathering
The Cohn’s Format 
“As a [type of user] I [want/can/am able 
to/need to/etc.] so that [some reason]” 
• Who: Role 
• What: Context / Want 
• Why: Benefit 
Confidential | Copyright © Agile Testing Alliance Global Gathering
3C’s: Components of a User Story 
Confidential | Copyright © Agile Testing Alliance Global Gathering
How User Stories Evolve? 
Confidential | Copyright © Agile Testing Alliance Global Gathering
INVEST on User Stories 
Confidential | Copyright © Agile Testing Alliance Global Gathering
Is your Acceptance Criteria SMART? 
Specific 
Measurable 
Achievable 
Relevant 
Time boxed 
Confidential | Copyright © Agile Testing Alliance Global Gathering
Testability of User Stories 
Stories must be written so as to 
be testable, with conditions of 
satisfaction 
Successfully passing its tests 
proves that a story has been 
successfully developed, agility 
relies upon feedback loops 
Testability 
If the story cannot be tested, 
how can the developers know 
when they have finished 
coding? 
Untestable stories commonly 
show up for NFRs, which are 
requirements about the 
software but not directly about 
its functionality. 
Confidential | Copyright © Agile Testing Alliance Global Gathering
How will you test these stories? 
A user must never have to wait long for any screen to appear 
A novice user is able to complete common workflows without training 
A user never has to wait long for any screen to appear 
As a user, I want to calculate the cost of repairing a crashed car 
As a user, I want the system to be fast 
As a user, I want the system to be secure 
As a user, I want the system to be easy to use 
Confidential | Copyright © Agile Testing Alliance Global Gathering
Story Writing Workshop 
Exercise-1: Story Creation 
Duration: 10 minutes 
Confidential | Copyright © Agile Testing Alliance Global Gathering
Rules of the Game 
• Form teams of about 7 +/-2 members 
• Choose your own product or select one per 
team from the list given below. 
• Each team member to create at least three 
user stories without any discussion with each 
other 
• Railway ticket booking wallet on Mobile 
• E-Commerce Portal like Flipkart or Amazon on 
Mobile 
• Mobile Money 
• Mission Critical Embedded Software System to 
control trucks and heavy machineries 
Confidential | Copyright © Agile Testing Alliance Global Gathering
Exercise – 2 
Develop Stories for your Persona 
Duration: 10 minutes 
Confidential | Copyright © Agile Testing Alliance Global Gathering
Identify Persona 
• For the chosen product in Exercise-1, 
identify the persona or possible roles who 
will interact with the system, as a team. 
• Each team member to choose your own 
persona from the identified list and 
create user stories for your persona 
without any discussions with the team 
members 
Confidential | Copyright © Agile Testing Alliance Global Gathering
Exercise – 3 
Story Writing for Personas 
as a team 
Duration: 10 minutes 
Confidential | Copyright © Agile Testing Alliance Global Gathering
Create Stories for the Persona 
1. Choose a Persona 
2. Write AS A <<your persona>> pass it on to 
the person on your right. 
3. Write I WANT <<for the persona you have 
got>> pass on to the person on right. 
4. Write SO THAT and keep in at the center 
of your table. 
• Repeat steps 1-4 until you have covered 
all the personas, steps 2-4 should be 
written by different person every time 
Confidential | Copyright © Agile Testing Alliance Global Gathering
Share your Learnings 
Discussions 
Confidential | Copyright © Agile Testing Alliance Global Gathering
Inference 
• Writing user stories is not so easy 
• There may be duplicates 
• Thinking of personas first, really helps 
• Each persona might look at the same 
feature differently 
• Each persona would want different 
features 
• Each persona has its own priority for 
features 
Confidential | Copyright © Agile Testing Alliance Global Gathering
Common Pitfalls in Writing Stories 
User Story for a 
Generic or Unknown User 
User Story for 
Product Owner than end 
user 
Confidential | Copyright © Agile Testing Alliance Global Gathering 
User Story for a technical 
layer like DB, developer 
oriented 
No Business Value or 
Benefit for Customer 
No Acceptance Criteria or 
Conditions of Satisfaction 
Story is Vague or 
ambiguous.
Recommendations 
Identify the Persona or Roles to give clues about user 
expectations 
Avoid generic users as it may lead to conflicting multiple 
user expectations from the same user story, lacks specific 
Avoid the approach of “you want a story, here you have 
one” 
Technical requirements or debt should not lead to writing 
stories for developers 
Confidential | Copyright © Agile Testing Alliance Global Gathering
What about NFRs? 
• Non Functional Requirements (NFRs) 
• i. Dedicated to a user story 
• Mention it in acceptance criteria 
ii. Relates to multiple user stories 
• Create a separate user story 
Confidential | Copyright © Agile Testing Alliance Global Gathering
User Story Estimation 
Confidential | Copyright © Agile Testing Alliance Global Gathering
Are your Stories Estimatable? 
• Three common reasons why a story may 
not be estimatable: 
• Developers lack domain knowledge. 
• Developers lack technical knowledge. 
• The story is too big. 
• Solutions: Split Story 
• Split on vertical basis. Not on horizontal 
layers. 
• Spike in case story needs to be investigated 
for want of details, a spike story may be 
scheduled. 
Confidential | Copyright © Agile Testing Alliance Global Gathering
Techniques for Estimation 
• Wideband Delphi and Planning Poker 
• Ideal Time 
• Relative Sizing / Story Points 
• Affinity Estimation 
Confidential | Copyright © Agile Testing Alliance Global Gathering
Affinity Estimation - Introduction 
• Let’s say You have just finished to create 
the user stories for your product and, a 
bit proudly, your product backlog now 
counts two or three hundred of items. 
How can you estimate them, effectively? 
• How can you give a quick rough 
estimation of the product backlog, in 3 to 
4 hours? 
• Group similar sized stories together 
Confidential | Copyright © Agile Testing Alliance Global Gathering
Characteristics of Affinity Estimation 
• Quick and Easy 
• Make decision fairly transparent and 
visible 
• Create a positive and collaborative 
experience rather than confrontational 
exercise in estimation session. 
• Whole team participates – Product owner, 
Scrum Master and Iteration Team 
Confidential | Copyright © Agile Testing Alliance Global Gathering
Affinity Estimation > Steps 
Silent Relative Sizing 
Edit the Wall 
Place items into relative sizing buckets 
Product Owner Challenge 
Store the data 
Confidential | Copyright © Agile Testing Alliance Global Gathering
Affinity Estimation 
Confidential | Copyright © Agile Testing Alliance Global Gathering
Illustration: Affinity Estimation Steps 
Confidential | Copyright © Agile Testing Alliance Global Gathering
Exercise – 4 
Affinity Estimation 
Duration: 20 minutes 
Confidential | Copyright © Agile Testing Alliance Global Gathering
Affinity Estimation 
To Find: 
1) What is the total size and expected duration of the project? 
2) How many iterations will it take to deliver? 
3) Estimate the Product Backlog items that were identified for various 
personas using affinity estimation 
Steps: 
• Each person in the team gets a turn to estimate a new card or move an 
existing card silently, using relativity of SMALL Vs BIG 
• Repeat this until you are done estimating all your stories 
• On top of the left most card post a card with 1 written on it 
• Next from the left, write 2, then 3, 5, 8, 13, 20, 40, 100. 
• Write the estimate on each story card now. 
• Add up points on each story card and thats the size of the entire project. 
• Discuss how much your team can deliver in one sprint. 
• Total size / how much we can do in 1 sprint = number of iterations 
required for the project 
Confidential | Copyright © Agile Testing Alliance Global Gathering
Share your Learnings 
Discussions 
Confidential | Copyright © Agile Testing Alliance Global Gathering
Thank You 
in.linkedin.com/in/maheshvaradharajan 
@mahesh_mkr 
Confidential | Copyright © Agile Testing Alliance Global Gathering

More Related Content

What's hot

Agile stories, estimating and planning
Agile stories, estimating and planningAgile stories, estimating and planning
Agile stories, estimating and planning
Dimitri Ponomareff
 
Writing Effective User Stories
Writing Effective User StoriesWriting Effective User Stories
Writing Effective User Stories
Janeve George
 

What's hot (20)

Agile estimation
Agile estimationAgile estimation
Agile estimation
 
Introduction to story points
Introduction to story pointsIntroduction to story points
Introduction to story points
 
User stories in agile software development
User stories in agile software developmentUser stories in agile software development
User stories in agile software development
 
Agile stories, estimating and planning
Agile stories, estimating and planningAgile stories, estimating and planning
Agile stories, estimating and planning
 
User Stories
User StoriesUser Stories
User Stories
 
SCRUM User Story Life Cycle
SCRUM User Story Life CycleSCRUM User Story Life Cycle
SCRUM User Story Life Cycle
 
"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
 
Introducing Agile User Stories
Introducing Agile User StoriesIntroducing Agile User Stories
Introducing Agile User Stories
 
Workshop - Writing Good User Stories
Workshop - Writing Good User Stories Workshop - Writing Good User Stories
Workshop - Writing Good User Stories
 
Epics and User Stories
Epics and User StoriesEpics and User Stories
Epics and User Stories
 
How to estimate in scrum
How to estimate in scrumHow to estimate in scrum
How to estimate in scrum
 
Writing Effective User Stories
Writing Effective User StoriesWriting Effective User Stories
Writing Effective User Stories
 
Product Owner
Product OwnerProduct Owner
Product Owner
 
Agile Planning and Estimation
Agile Planning and EstimationAgile Planning and Estimation
Agile Planning and Estimation
 
Agile Software Estimation
Agile Software EstimationAgile Software Estimation
Agile Software Estimation
 
User Story Splitting
User Story SplittingUser Story Splitting
User Story Splitting
 
What to expect in 30 60-90 days in agile transformation journey?
What to expect in 30 60-90 days in agile transformation journey?What to expect in 30 60-90 days in agile transformation journey?
What to expect in 30 60-90 days in agile transformation journey?
 
User Stories Training
User Stories TrainingUser Stories Training
User Stories Training
 
SCRUM Estimation
SCRUM EstimationSCRUM Estimation
SCRUM Estimation
 
How to write good user stories
How to write good user storiesHow to write good user stories
How to write good user stories
 

Viewers also liked

17 принципов создания идеальной дизайн-концепции от Назира Хасавова, арт-дире...
17 принципов создания идеальной дизайн-концепции от Назира Хасавова, арт-дире...17 принципов создания идеальной дизайн-концепции от Назира Хасавова, арт-дире...
17 принципов создания идеальной дизайн-концепции от Назира Хасавова, арт-дире...
Ekaterina Pavlova
 

Viewers also liked (20)

Requirements Made Easy With User Stories V2
Requirements Made Easy With User Stories V2Requirements Made Easy With User Stories V2
Requirements Made Easy With User Stories V2
 
Requirements Gathering Best Practice Pack
Requirements Gathering Best Practice PackRequirements Gathering Best Practice Pack
Requirements Gathering Best Practice Pack
 
Business requirements gathering and analysis
Business requirements gathering and analysisBusiness requirements gathering and analysis
Business requirements gathering and analysis
 
Webinar AgilVen: Gestión ágil de requisitos en proyectos de software
Webinar AgilVen: Gestión ágil de requisitos en proyectos de softwareWebinar AgilVen: Gestión ágil de requisitos en proyectos de software
Webinar AgilVen: Gestión ágil de requisitos en proyectos de software
 
eQNOva BIM Services
eQNOva BIM ServiceseQNOva BIM Services
eQNOva BIM Services
 
Webinar Gratuito de Scrum Principios Agiles
Webinar Gratuito de Scrum Principios Agiles Webinar Gratuito de Scrum Principios Agiles
Webinar Gratuito de Scrum Principios Agiles
 
DevOps, SAFe and critical information bearers: A practical approach for plann...
DevOps, SAFe and critical information bearers: A practical approach for plann...DevOps, SAFe and critical information bearers: A practical approach for plann...
DevOps, SAFe and critical information bearers: A practical approach for plann...
 
Scrum sesion 03 principios
Scrum sesion 03 principiosScrum sesion 03 principios
Scrum sesion 03 principios
 
Webinar: NextGen Portals: What? Why? When?
Webinar: NextGen Portals: What? Why? When?Webinar: NextGen Portals: What? Why? When?
Webinar: NextGen Portals: What? Why? When?
 
User Stories Writing - Codemotion 2013
User Stories Writing - Codemotion 2013User Stories Writing - Codemotion 2013
User Stories Writing - Codemotion 2013
 
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
 
17 принципов создания идеальной дизайн-концепции от Назира Хасавова, арт-дире...
17 принципов создания идеальной дизайн-концепции от Назира Хасавова, арт-дире...17 принципов создания идеальной дизайн-концепции от Назира Хасавова, арт-дире...
17 принципов создания идеальной дизайн-концепции от Назира Хасавова, арт-дире...
 
How to Organize and Prioritize Requirements
How to Organize and Prioritize RequirementsHow to Organize and Prioritize Requirements
How to Organize and Prioritize Requirements
 
The Power of the Junior
The Power of the JuniorThe Power of the Junior
The Power of the Junior
 
User Story Mapping Workshop
User Story Mapping WorkshopUser Story Mapping Workshop
User Story Mapping Workshop
 
Business Analyst Training
Business  Analyst  TrainingBusiness  Analyst  Training
Business Analyst Training
 
User Story Mapping Workshop (Design Skills 2016)
User Story Mapping Workshop (Design Skills 2016)User Story Mapping Workshop (Design Skills 2016)
User Story Mapping Workshop (Design Skills 2016)
 
User Story Mapping in Practice
User Story Mapping in PracticeUser Story Mapping in Practice
User Story Mapping in Practice
 
AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211)
AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211)AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211)
AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211)
 
Desarrollo en cascada vs desarrollo agile scrum
Desarrollo en cascada vs desarrollo agile scrumDesarrollo en cascada vs desarrollo agile scrum
Desarrollo en cascada vs desarrollo agile scrum
 

Similar to User Story Writing & Estimation For Testers By Mahesh Varadharajan

Similar to User Story Writing & Estimation For Testers By Mahesh Varadharajan (20)

The Whole Story of The User Story
The Whole Story of The User StoryThe Whole Story of The User Story
The Whole Story of The User Story
 
Story of user story
Story of user storyStory of user story
Story of user story
 
Agile: JAD Requirements Elicitation
Agile:  JAD Requirements ElicitationAgile:  JAD Requirements Elicitation
Agile: JAD Requirements Elicitation
 
Xamariners - BDD + Mobile
Xamariners - BDD + MobileXamariners - BDD + Mobile
Xamariners - BDD + Mobile
 
Agile.pptx
Agile.pptxAgile.pptx
Agile.pptx
 
Agile Story Writing
Agile Story WritingAgile Story Writing
Agile Story Writing
 
Effective User Story Writing
Effective User Story WritingEffective User Story Writing
Effective User Story Writing
 
One day Course On Agile
One day Course On AgileOne day Course On Agile
One day Course On Agile
 
Successful Business Sponsorship of Agile IT Projects
Successful Business Sponsorship of Agile IT ProjectsSuccessful Business Sponsorship of Agile IT Projects
Successful Business Sponsorship of Agile IT Projects
 
Software Product Engineering
Software Product EngineeringSoftware Product Engineering
Software Product Engineering
 
Agile Story Writing
Agile Story WritingAgile Story Writing
Agile Story Writing
 
IIT Academy: 204 User stories and acceptance criteria
IIT Academy: 204 User stories and acceptance criteriaIIT Academy: 204 User stories and acceptance criteria
IIT Academy: 204 User stories and acceptance criteria
 
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)
 
Олександр Твердохліб «How to make a user story done»
Олександр Твердохліб «How to make a user story done»Олександр Твердохліб «How to make a user story done»
Олександр Твердохліб «How to make a user story done»
 
ABC of Agile (Scrum & Extreme Programming)
ABC of Agile (Scrum & Extreme Programming)ABC of Agile (Scrum & Extreme Programming)
ABC of Agile (Scrum & Extreme Programming)
 
Use Cases and Use in Agile world
Use Cases and Use in Agile worldUse Cases and Use in Agile world
Use Cases and Use in Agile world
 
Agile methodology - Humanity
Agile methodology  - HumanityAgile methodology  - Humanity
Agile methodology - Humanity
 
Acceptance criteria
Acceptance criteriaAcceptance criteria
Acceptance criteria
 
Agile practices for management
Agile practices for managementAgile practices for management
Agile practices for management
 
Practical Guide to Scrum
Practical Guide to ScrumPractical Guide to Scrum
Practical Guide to Scrum
 

More from Agile Testing Alliance

More from Agile Testing Alliance (20)

#Interactive Session by Anindita Rath and Mahathee Dandibhotla, "From Good to...
#Interactive Session by Anindita Rath and Mahathee Dandibhotla, "From Good to...#Interactive Session by Anindita Rath and Mahathee Dandibhotla, "From Good to...
#Interactive Session by Anindita Rath and Mahathee Dandibhotla, "From Good to...
 
#Interactive Session by Ajay Balamurugadas, "Where Are The Real Testers In T...
#Interactive Session by  Ajay Balamurugadas, "Where Are The Real Testers In T...#Interactive Session by  Ajay Balamurugadas, "Where Are The Real Testers In T...
#Interactive Session by Ajay Balamurugadas, "Where Are The Real Testers In T...
 
#Interactive Session by Jishnu Nambiar and Mayur Ovhal, "Monitoring Web Per...
#Interactive Session by  Jishnu Nambiar and  Mayur Ovhal, "Monitoring Web Per...#Interactive Session by  Jishnu Nambiar and  Mayur Ovhal, "Monitoring Web Per...
#Interactive Session by Jishnu Nambiar and Mayur Ovhal, "Monitoring Web Per...
 
#Interactive Session by Pradipta Biswas and Sucheta Saurabh Chitale, "Navigat...
#Interactive Session by Pradipta Biswas and Sucheta Saurabh Chitale, "Navigat...#Interactive Session by Pradipta Biswas and Sucheta Saurabh Chitale, "Navigat...
#Interactive Session by Pradipta Biswas and Sucheta Saurabh Chitale, "Navigat...
 
#Interactive Session by Apoorva Ram, "The Art of Storytelling for Testers" at...
#Interactive Session by Apoorva Ram, "The Art of Storytelling for Testers" at...#Interactive Session by Apoorva Ram, "The Art of Storytelling for Testers" at...
#Interactive Session by Apoorva Ram, "The Art of Storytelling for Testers" at...
 
#Interactive Session by Nikhil Jain, "Catch All Mail With Graph" at #ATAGTR2023.
#Interactive Session by Nikhil Jain, "Catch All Mail With Graph" at #ATAGTR2023.#Interactive Session by Nikhil Jain, "Catch All Mail With Graph" at #ATAGTR2023.
#Interactive Session by Nikhil Jain, "Catch All Mail With Graph" at #ATAGTR2023.
 
#Interactive Session by Ashok Kumar S, "Test Data the key to robust test cove...
#Interactive Session by Ashok Kumar S, "Test Data the key to robust test cove...#Interactive Session by Ashok Kumar S, "Test Data the key to robust test cove...
#Interactive Session by Ashok Kumar S, "Test Data the key to robust test cove...
 
#Interactive Session by Seema Kohli, "Test Leadership in the Era of Artificia...
#Interactive Session by Seema Kohli, "Test Leadership in the Era of Artificia...#Interactive Session by Seema Kohli, "Test Leadership in the Era of Artificia...
#Interactive Session by Seema Kohli, "Test Leadership in the Era of Artificia...
 
#Interactive Session by Ashwini Lalit, RRR of Test Automation Maintenance" at...
#Interactive Session by Ashwini Lalit, RRR of Test Automation Maintenance" at...#Interactive Session by Ashwini Lalit, RRR of Test Automation Maintenance" at...
#Interactive Session by Ashwini Lalit, RRR of Test Automation Maintenance" at...
 
#Interactive Session by Srithanga Aishvarya T, "Machine Learning Model to aut...
#Interactive Session by Srithanga Aishvarya T, "Machine Learning Model to aut...#Interactive Session by Srithanga Aishvarya T, "Machine Learning Model to aut...
#Interactive Session by Srithanga Aishvarya T, "Machine Learning Model to aut...
 
#Interactive Session by Kirti Ranjan Satapathy and Nandini K, "Elements of Qu...
#Interactive Session by Kirti Ranjan Satapathy and Nandini K, "Elements of Qu...#Interactive Session by Kirti Ranjan Satapathy and Nandini K, "Elements of Qu...
#Interactive Session by Kirti Ranjan Satapathy and Nandini K, "Elements of Qu...
 
#Interactive Session by Sudhir Upadhyay and Ashish Kumar, "Strengthening Test...
#Interactive Session by Sudhir Upadhyay and Ashish Kumar, "Strengthening Test...#Interactive Session by Sudhir Upadhyay and Ashish Kumar, "Strengthening Test...
#Interactive Session by Sudhir Upadhyay and Ashish Kumar, "Strengthening Test...
 
#Interactive Session by Sayan Deb Kundu, "Testing Gen AI Applications" at #AT...
#Interactive Session by Sayan Deb Kundu, "Testing Gen AI Applications" at #AT...#Interactive Session by Sayan Deb Kundu, "Testing Gen AI Applications" at #AT...
#Interactive Session by Sayan Deb Kundu, "Testing Gen AI Applications" at #AT...
 
#Interactive Session by Dinesh Boravke, "Zero Defects – Myth or Reality" at #...
#Interactive Session by Dinesh Boravke, "Zero Defects – Myth or Reality" at #...#Interactive Session by Dinesh Boravke, "Zero Defects – Myth or Reality" at #...
#Interactive Session by Dinesh Boravke, "Zero Defects – Myth or Reality" at #...
 
#Interactive Session by Saby Saurabh Bhardwaj, "Redefine Quality Assurance –...
#Interactive Session by  Saby Saurabh Bhardwaj, "Redefine Quality Assurance –...#Interactive Session by  Saby Saurabh Bhardwaj, "Redefine Quality Assurance –...
#Interactive Session by Saby Saurabh Bhardwaj, "Redefine Quality Assurance –...
 
#Keynote Session by Sanjay Kumar, "Innovation Inspired Testing!!" at #ATAGTR2...
#Keynote Session by Sanjay Kumar, "Innovation Inspired Testing!!" at #ATAGTR2...#Keynote Session by Sanjay Kumar, "Innovation Inspired Testing!!" at #ATAGTR2...
#Keynote Session by Sanjay Kumar, "Innovation Inspired Testing!!" at #ATAGTR2...
 
#Keynote Session by Schalk Cronje, "Don’t Containerize me" at #ATAGTR2023.
#Keynote Session by Schalk Cronje, "Don’t Containerize me" at #ATAGTR2023.#Keynote Session by Schalk Cronje, "Don’t Containerize me" at #ATAGTR2023.
#Keynote Session by Schalk Cronje, "Don’t Containerize me" at #ATAGTR2023.
 
#Interactive Session by Chidambaram Vetrivel and Venkatesh Belde, "Revolution...
#Interactive Session by Chidambaram Vetrivel and Venkatesh Belde, "Revolution...#Interactive Session by Chidambaram Vetrivel and Venkatesh Belde, "Revolution...
#Interactive Session by Chidambaram Vetrivel and Venkatesh Belde, "Revolution...
 
#Interactive Session by Aniket Diwakar Kadukar and Padimiti Vaidik Eswar Dat...
#Interactive Session by Aniket Diwakar Kadukar and  Padimiti Vaidik Eswar Dat...#Interactive Session by Aniket Diwakar Kadukar and  Padimiti Vaidik Eswar Dat...
#Interactive Session by Aniket Diwakar Kadukar and Padimiti Vaidik Eswar Dat...
 
#Interactive Session by Vivek Patle and Jahnavi Umarji, "Empowering Functiona...
#Interactive Session by Vivek Patle and Jahnavi Umarji, "Empowering Functiona...#Interactive Session by Vivek Patle and Jahnavi Umarji, "Empowering Functiona...
#Interactive Session by Vivek Patle and Jahnavi Umarji, "Empowering Functiona...
 

Recently uploaded

Recently uploaded (20)

UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 
Powerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaPowerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara Laskowska
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
 
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
 
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya HalderCustom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
 
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 
In-Depth Performance Testing Guide for IT Professionals
In-Depth Performance Testing Guide for IT ProfessionalsIn-Depth Performance Testing Guide for IT Professionals
In-Depth Performance Testing Guide for IT Professionals
 
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
Speed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in MinutesSpeed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in Minutes
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
Demystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John StaveleyDemystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John Staveley
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi IbrahimzadeFree and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
IESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIESVE for Early Stage Design and Planning
IESVE for Early Stage Design and Planning
 
UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 

User Story Writing & Estimation For Testers By Mahesh Varadharajan

  • 1. User Story Writing and Estimation for Testers Mahesh Varadharajan Agile Consultant Confidential | Copyright © Agile Testing Alliance Global Gathering
  • 2. Introduction The real challenge in writing software isn’t the time spent writing the code itself. Instead it’s the time spent deciding what software we should build, and perhaps just as importantly what we shouldn’t build. Confidential | Copyright © Agile Testing Alliance Global Gathering
  • 3. Traditional development Boehm’s Cost of Change Curve: Change gets more expensive over time Confidential | Copyright © Agile Testing Alliance Global Gathering
  • 4. The Agile Solution Transition from Big Requirements Upfront (BRUF) to Just-in-time (JIT) elaboration User Stories are an Agile approach to solving this problem; they’re lightweight, simple requirements. Confidential | Copyright © Agile Testing Alliance Global Gathering
  • 5. Definition User stories are short, simple description of a feature told from the perspective of the person who desires the new capability, usually a user or customer of the system. Use simple English to write a user story There are several ways of writing a user story, templates help to build consistency Confidential | Copyright © Agile Testing Alliance Global Gathering
  • 6. The Cohn’s Format “As a [type of user] I [want/can/am able to/need to/etc.] so that [some reason]” • Who: Role • What: Context / Want • Why: Benefit Confidential | Copyright © Agile Testing Alliance Global Gathering
  • 7. 3C’s: Components of a User Story Confidential | Copyright © Agile Testing Alliance Global Gathering
  • 8. How User Stories Evolve? Confidential | Copyright © Agile Testing Alliance Global Gathering
  • 9. INVEST on User Stories Confidential | Copyright © Agile Testing Alliance Global Gathering
  • 10. Is your Acceptance Criteria SMART? Specific Measurable Achievable Relevant Time boxed Confidential | Copyright © Agile Testing Alliance Global Gathering
  • 11. Testability of User Stories Stories must be written so as to be testable, with conditions of satisfaction Successfully passing its tests proves that a story has been successfully developed, agility relies upon feedback loops Testability If the story cannot be tested, how can the developers know when they have finished coding? Untestable stories commonly show up for NFRs, which are requirements about the software but not directly about its functionality. Confidential | Copyright © Agile Testing Alliance Global Gathering
  • 12. How will you test these stories? A user must never have to wait long for any screen to appear A novice user is able to complete common workflows without training A user never has to wait long for any screen to appear As a user, I want to calculate the cost of repairing a crashed car As a user, I want the system to be fast As a user, I want the system to be secure As a user, I want the system to be easy to use Confidential | Copyright © Agile Testing Alliance Global Gathering
  • 13. Story Writing Workshop Exercise-1: Story Creation Duration: 10 minutes Confidential | Copyright © Agile Testing Alliance Global Gathering
  • 14. Rules of the Game • Form teams of about 7 +/-2 members • Choose your own product or select one per team from the list given below. • Each team member to create at least three user stories without any discussion with each other • Railway ticket booking wallet on Mobile • E-Commerce Portal like Flipkart or Amazon on Mobile • Mobile Money • Mission Critical Embedded Software System to control trucks and heavy machineries Confidential | Copyright © Agile Testing Alliance Global Gathering
  • 15. Exercise – 2 Develop Stories for your Persona Duration: 10 minutes Confidential | Copyright © Agile Testing Alliance Global Gathering
  • 16. Identify Persona • For the chosen product in Exercise-1, identify the persona or possible roles who will interact with the system, as a team. • Each team member to choose your own persona from the identified list and create user stories for your persona without any discussions with the team members Confidential | Copyright © Agile Testing Alliance Global Gathering
  • 17. Exercise – 3 Story Writing for Personas as a team Duration: 10 minutes Confidential | Copyright © Agile Testing Alliance Global Gathering
  • 18. Create Stories for the Persona 1. Choose a Persona 2. Write AS A <<your persona>> pass it on to the person on your right. 3. Write I WANT <<for the persona you have got>> pass on to the person on right. 4. Write SO THAT and keep in at the center of your table. • Repeat steps 1-4 until you have covered all the personas, steps 2-4 should be written by different person every time Confidential | Copyright © Agile Testing Alliance Global Gathering
  • 19. Share your Learnings Discussions Confidential | Copyright © Agile Testing Alliance Global Gathering
  • 20. Inference • Writing user stories is not so easy • There may be duplicates • Thinking of personas first, really helps • Each persona might look at the same feature differently • Each persona would want different features • Each persona has its own priority for features Confidential | Copyright © Agile Testing Alliance Global Gathering
  • 21. Common Pitfalls in Writing Stories User Story for a Generic or Unknown User User Story for Product Owner than end user Confidential | Copyright © Agile Testing Alliance Global Gathering User Story for a technical layer like DB, developer oriented No Business Value or Benefit for Customer No Acceptance Criteria or Conditions of Satisfaction Story is Vague or ambiguous.
  • 22. Recommendations Identify the Persona or Roles to give clues about user expectations Avoid generic users as it may lead to conflicting multiple user expectations from the same user story, lacks specific Avoid the approach of “you want a story, here you have one” Technical requirements or debt should not lead to writing stories for developers Confidential | Copyright © Agile Testing Alliance Global Gathering
  • 23. What about NFRs? • Non Functional Requirements (NFRs) • i. Dedicated to a user story • Mention it in acceptance criteria ii. Relates to multiple user stories • Create a separate user story Confidential | Copyright © Agile Testing Alliance Global Gathering
  • 24. User Story Estimation Confidential | Copyright © Agile Testing Alliance Global Gathering
  • 25. Are your Stories Estimatable? • Three common reasons why a story may not be estimatable: • Developers lack domain knowledge. • Developers lack technical knowledge. • The story is too big. • Solutions: Split Story • Split on vertical basis. Not on horizontal layers. • Spike in case story needs to be investigated for want of details, a spike story may be scheduled. Confidential | Copyright © Agile Testing Alliance Global Gathering
  • 26. Techniques for Estimation • Wideband Delphi and Planning Poker • Ideal Time • Relative Sizing / Story Points • Affinity Estimation Confidential | Copyright © Agile Testing Alliance Global Gathering
  • 27. Affinity Estimation - Introduction • Let’s say You have just finished to create the user stories for your product and, a bit proudly, your product backlog now counts two or three hundred of items. How can you estimate them, effectively? • How can you give a quick rough estimation of the product backlog, in 3 to 4 hours? • Group similar sized stories together Confidential | Copyright © Agile Testing Alliance Global Gathering
  • 28. Characteristics of Affinity Estimation • Quick and Easy • Make decision fairly transparent and visible • Create a positive and collaborative experience rather than confrontational exercise in estimation session. • Whole team participates – Product owner, Scrum Master and Iteration Team Confidential | Copyright © Agile Testing Alliance Global Gathering
  • 29. Affinity Estimation > Steps Silent Relative Sizing Edit the Wall Place items into relative sizing buckets Product Owner Challenge Store the data Confidential | Copyright © Agile Testing Alliance Global Gathering
  • 30. Affinity Estimation Confidential | Copyright © Agile Testing Alliance Global Gathering
  • 31. Illustration: Affinity Estimation Steps Confidential | Copyright © Agile Testing Alliance Global Gathering
  • 32. Exercise – 4 Affinity Estimation Duration: 20 minutes Confidential | Copyright © Agile Testing Alliance Global Gathering
  • 33. Affinity Estimation To Find: 1) What is the total size and expected duration of the project? 2) How many iterations will it take to deliver? 3) Estimate the Product Backlog items that were identified for various personas using affinity estimation Steps: • Each person in the team gets a turn to estimate a new card or move an existing card silently, using relativity of SMALL Vs BIG • Repeat this until you are done estimating all your stories • On top of the left most card post a card with 1 written on it • Next from the left, write 2, then 3, 5, 8, 13, 20, 40, 100. • Write the estimate on each story card now. • Add up points on each story card and thats the size of the entire project. • Discuss how much your team can deliver in one sprint. • Total size / how much we can do in 1 sprint = number of iterations required for the project Confidential | Copyright © Agile Testing Alliance Global Gathering
  • 34. Share your Learnings Discussions Confidential | Copyright © Agile Testing Alliance Global Gathering
  • 35. Thank You in.linkedin.com/in/maheshvaradharajan @mahesh_mkr Confidential | Copyright © Agile Testing Alliance Global Gathering