SlideShare a Scribd company logo
User Stories Agile Software Development
Topics Objectives Brief History – Motivation Process Overview A User Story Writing Stories Managing Development Practices The Journey Summary
Objectives Discuss agile software development practices, with 30% focus on user stories
Brief History - Motivation
Brief History - Motivation g * Software Number of Feature m*t  where  t   is proportional to  n*RequirementComplexity + b*DesignComplexity + Code + y*Feedback ,[object Object],t- iteration size g – Measure of usefulness, goodness
Process Overview Daily Standup Customer + Dev Team Story Workshop, Conversations, etc Customer Team I-Meet Customer + Dev Team Prioritize stories, estimate velocity R-Meet Customer + Dev Team Prioritize stories, estimate
A User Story 3 parts Planning placeholder & reminder Notes from conversations Tests Not system’s point of view
User Story – Planning Placeholder & Reminder Taskboard & Release/Sprint Planning (VersionOne*) Card Walls & Release/Sprint Planning (Mingle*) *Mingle is a trademark of Thoughtworks *VersionOne is a trademark of VersionOne
Notes from conversations E.g. 	Customer Service can search for orders so that they can quickly access the customer’s order when customer calls in to make changes to the delivery address Notes : Zie says always show customer name, order reference number, order date.
Tests Conveys to developers additional information  Developers get an idea if they are done Treat as specification
Tests – Specification/Test Collaboration Framework
Questions What are the 3 parts of a user story?
Writing Stories Form and function Attributes INVEST Trawling Stories Smell
Writing User Stories - Form and function The role, goal and motivation. <role’s> wants to do <goal> because <motivation> Example : As an account holder, I want to transfer funds between two of my accounts so that I can maximize the performance of my savings and avoid any fees associated with overdrafts and minimum balance rules.
Writing User Stories - INVEST E.g. of non-independent story : Customer can pay for basket items using iPay88 payment gateway Customer can pay for basket items using WorldPay payment gateway Possible Solutions: Combine both If combining both is too large – split out the base work:  Customer can pay with one type of payment gateway Customer can pay with two additional types of payment gateway
Writing User Stories – INVEST  Too much detail such that the extra details is associated to extra precision – always negotiable Valuable to Users User easily understands : Test with Credit Card, Debit Card and Cheque User cannot understand : Test that Payment table contains the authorization id for credit card Acceptable to indicate non-functional requirements like : This feature is expected to be used by 200 users concurrently and at any one time 200 payment records can be shown quickly, may be in 2s.
Writing User Stories - INVEST Estimatable 3 reasons for wrong estimation Story is too big Developers lack domain knowledge Developers lack technical knowledge ,[object Object]
Split to
Experiment within a specific time with the objectives of estimation - Spikes
Story to do the actual work,[object Object]
Writing User Stories - INVEST
Writing User Stories - Responsibilities Customer Team : Responsible for writing stories, keeping in mind INVEST Developer : Help customer write stories which lack details, do not assume and always have conversation but have it at the point when supporting information is available
Writing User Stories - Trawling for Requirements User stories workshop, interviews ( open ended and context free questions ) , observation & questionnaire Role Modeling, Personas , Extreme characters
Writing User Stories - Trawling for Requirements Higher Fidelity Prototype Low Fidelity Prototype Returns/Exchange Status Delivery Input Return Details Refund Details (Based on Payment)
Story Smell Catalogues Stories are too small Interdependent Stories Goldplating Too many details Including user interface details too soon Thinking too far ahead Splitting too many stories Customer has trouble prioritizing Customer won’t write and prioritize stories
Questions What does INVEST stands for? Who constitute the Customer team? What are the tools available for trawling for requirements?
Managing
Managing - Planning Too many variables, too far ahead and replanning with better information not planned for   75% of all US IT projects are considered to be failures by those responsible for initiating them.  Half of the projects exceeded budget by 200% 31% of projects were cancelled outright  53% of the all projects was so worrying that they were challenged.
Managing – Planning.Estimating Establish definition of story points Velocity = (Story Points Completed)/Sprint Previous velocity can be used to estimate Tools :  Estimating : Tasks, Triangulating with Card Wall, Planning Poker
Managing – Planning.Estimating
Managing – Cost.Resource Developers are not Codys
Managing – Planning.Release Two areas Features/Stories Prioritization : MoSCow Time  Iteration Length Time to complete - Product Roadmap Move from story points to expected duration Product will be ready for release in approximately 5-7 iteration
Managing – Planning.Sprint Discuss a stories For each stories disaggregate into tasks Small enough to be accurate Developer accepts responsibility for each task Individually ensures estimate What! No task for upfront design?
Managing - Controls Release Burndown charts – sprint (x-axis) Sprint Daily burndown charts – day (x-axis) Daily NotStarted,InProgress,Completed - Cardwalls Standup
Managing - Rules of the Game No changes to during a sprint Customer stay involves all the time
User Stories Not IEEE 830  Use cases – sized to deliver business value, “level of detail” Why Emphasize of quick chat Comprehensible by everyone Right size for planning Works for iterative development Defer details to a right point in time Support opportunistic design Encourages participatory design Build up tacit knowledge Stories may not be good ISO 9001 companies – Will have an issue with tear up stories
Team Practices Start off with simple design, but expect changes  Refactoring ( and consequently test ) is important Test Automation is crucial Architecture, UML, use cases and agile software development Middle out
Questions What are the tools used in estimation? What is done in Release Planning? What are the tools used in Release Planning? Completion vs Number of Stories Points – which is preferred? Name the Team Practices. How do you deal with unplanned tasks?
The Journey
The Journey - Build
The Journey - Communication
Summary 	You can’t do agile you just have to be agile

More Related Content

What's hot

Writing User Stories (04/2012)
Writing User Stories (04/2012)Writing User Stories (04/2012)
Writing User Stories (04/2012)
Mai Quay
 
User Stories explained
User Stories explainedUser Stories explained
User Stories explained
Martin Lapointe, M.T.I.
 
User Stories Fundamentals
User Stories FundamentalsUser Stories Fundamentals
User Stories Fundamentals
Moisés Armani Ramírez
 
Story of user story
Story of user storyStory of user story
Story of user story
Balaji Sathram
 
User Story Splitting
User Story SplittingUser Story Splitting
User Story Splitting
trishly
 
User Story Mapping
User Story MappingUser Story Mapping
User Story Mapping
Manik Choudhary
 
User Story Workshop
User Story WorkshopUser Story Workshop
User Story Workshop
Peter Antman
 
Strategies to split user stories
Strategies to split user storiesStrategies to split user stories
Strategies to split user stories
cpolc
 
Epics and User Stories
Epics and User StoriesEpics and User Stories
Epics and User Stories
Manish Agrawal, CSP®
 
Effective User Stories
Effective User StoriesEffective User Stories
Effective User Stories
Derek Neighbors
 
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
DigitalCatapultDevelopmentPractices
 
User Stories Training
User Stories TrainingUser Stories Training
User Stories Training
Clarion Marketing
 
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
 
Product Backlog - Refinement and Prioritization Techniques
Product Backlog - Refinement and Prioritization TechniquesProduct Backlog - Refinement and Prioritization Techniques
Product Backlog - Refinement and Prioritization Techniques
Vikash Karuna
 
User Story Mapping in Practice
User Story Mapping in PracticeUser Story Mapping in Practice
User Story Mapping in Practice
Steve Rogalsky
 
"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
webcat
 
Guide to User Story Creation
Guide to User Story CreationGuide to User Story Creation
Guide to User Story Creation
Joshua Render
 
User story and splitting workshop
User story and splitting workshopUser story and splitting workshop
User story and splitting workshop
Brian Sjoberg
 
User Story Smells & Anti-patterns
User Story Smells & Anti-patternsUser Story Smells & Anti-patterns
User Story Smells & Anti-patterns
Fadi Stephan
 

What's hot (20)

Writing User Stories (04/2012)
Writing User Stories (04/2012)Writing User Stories (04/2012)
Writing User Stories (04/2012)
 
User Stories explained
User Stories explainedUser Stories explained
User Stories explained
 
User Stories Fundamentals
User Stories FundamentalsUser Stories Fundamentals
User Stories Fundamentals
 
Story of user story
Story of user storyStory of user story
Story of user story
 
User Story Splitting
User Story SplittingUser Story Splitting
User Story Splitting
 
User Story Mapping
User Story MappingUser Story Mapping
User Story Mapping
 
User Story Workshop
User Story WorkshopUser Story Workshop
User Story Workshop
 
Strategies to split user stories
Strategies to split user storiesStrategies to split user stories
Strategies to split user stories
 
Epics and User Stories
Epics and User StoriesEpics and User Stories
Epics and User Stories
 
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
 
How to write good user stories
How to write good user storiesHow to write good user stories
How to write good user stories
 
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?
 
Product Backlog - Refinement and Prioritization Techniques
Product Backlog - Refinement and Prioritization TechniquesProduct Backlog - Refinement and Prioritization Techniques
Product Backlog - Refinement and Prioritization Techniques
 
User Story Mapping in Practice
User Story Mapping in PracticeUser Story Mapping in Practice
User Story Mapping in Practice
 
"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
 
Guide to User Story Creation
Guide to User Story CreationGuide to User Story Creation
Guide to User Story Creation
 
User story and splitting workshop
User story and splitting workshopUser story and splitting workshop
User story and splitting workshop
 
User Story Smells & Anti-patterns
User Story Smells & Anti-patternsUser Story Smells & Anti-patterns
User Story Smells & Anti-patterns
 

Similar to Agile User Stories

ABC of Agile (Scrum & Extreme Programming)
ABC of Agile (Scrum & Extreme Programming)ABC of Agile (Scrum & Extreme Programming)
ABC of Agile (Scrum & Extreme Programming)
Amardeep Vishwakarma
 
User stories, estimates, planning, design - Lean development and Agile method...
User stories, estimates, planning, design - Lean development and Agile method...User stories, estimates, planning, design - Lean development and Agile method...
User stories, estimates, planning, design - Lean development and Agile method...
Francesco Mapelli
 
Story Cards
Story CardsStory Cards
Story Cards
Ayoub Babiker
 
Developing User stories - Beyond the Basics
Developing User stories - Beyond the BasicsDeveloping User stories - Beyond the Basics
Developing User stories - Beyond the Basics
Kubair Shirazee
 
Agile + Lean Startup principles + Lean UX -> How to make it all work together!
Agile + Lean Startup principles + Lean UX -> How to make it all work together!Agile + Lean Startup principles + Lean UX -> How to make it all work together!
Agile + Lean Startup principles + Lean UX -> How to make it all work together!
Amrita Aviyente
 
Building Blocks for Lean Agile Requirements (c) technology expresso v12 9 m...
Building Blocks for Lean Agile Requirements (c) technology expresso v12   9 m...Building Blocks for Lean Agile Requirements (c) technology expresso v12   9 m...
Building Blocks for Lean Agile Requirements (c) technology expresso v12 9 m...
Jacqueline K. Sanders-Blackman, Agilist,CBAP,SSBB,CSM,SAFe
 
Building blocks for lean agile requirements (c) technology expresso v12 @Jacq...
Building blocks for lean agile requirements (c) technology expresso v12 @Jacq...Building blocks for lean agile requirements (c) technology expresso v12 @Jacq...
Building blocks for lean agile requirements (c) technology expresso v12 @Jacq...
Technology Expresso Expresso-Consulting
 
Introduction to Agile Project Management and Scrum
Introduction to Agile Project Management and ScrumIntroduction to Agile Project Management and Scrum
Introduction to Agile Project Management and Scrum
Eric Krock
 
Introduction to Agile Project Management and Scrum
Introduction to Agile Project Management and ScrumIntroduction to Agile Project Management and Scrum
Introduction to Agile Project Management and Scrum
Voximate
 
Surge engr 245 lean launchpad stanford 2020
Surge engr 245 lean launchpad stanford 2020Surge engr 245 lean launchpad stanford 2020
Surge engr 245 lean launchpad stanford 2020
Stanford University
 
Splitting User Stories
Splitting User StoriesSplitting User Stories
Splitting User Stories
DCG Software Value
 
Project Effort Estimation - Key pointers
Project Effort Estimation - Key pointersProject Effort Estimation - Key pointers
Project Effort Estimation - Key pointers
Channaveer Patil
 
Nitin bondre
Nitin bondreNitin bondre
Nitin bondre
NitinBondre
 
From idea to ux roadmap - MakeIt Masterclass - Boost User Experience
From idea to ux roadmap - MakeIt Masterclass - Boost User ExperienceFrom idea to ux roadmap - MakeIt Masterclass - Boost User Experience
From idea to ux roadmap - MakeIt Masterclass - Boost User Experience
Claudio Cossio
 
prod-dev-management.pptx
prod-dev-management.pptxprod-dev-management.pptx
prod-dev-management.pptx
Michael Ming Lei
 
Agile planning and estimating
Agile planning and estimatingAgile planning and estimating
Agile planning and estimating
Laurynas Antanavičius, PMI-ACP
 

Similar to Agile User Stories (20)

ABC of Agile (Scrum & Extreme Programming)
ABC of Agile (Scrum & Extreme Programming)ABC of Agile (Scrum & Extreme Programming)
ABC of Agile (Scrum & Extreme Programming)
 
User stories, estimates, planning, design - Lean development and Agile method...
User stories, estimates, planning, design - Lean development and Agile method...User stories, estimates, planning, design - Lean development and Agile method...
User stories, estimates, planning, design - Lean development and Agile method...
 
Story Cards
Story CardsStory Cards
Story Cards
 
Developing User stories - Beyond the Basics
Developing User stories - Beyond the BasicsDeveloping User stories - Beyond the Basics
Developing User stories - Beyond the Basics
 
Agile + Lean Startup principles + Lean UX -> How to make it all work together!
Agile + Lean Startup principles + Lean UX -> How to make it all work together!Agile + Lean Startup principles + Lean UX -> How to make it all work together!
Agile + Lean Startup principles + Lean UX -> How to make it all work together!
 
User Stories
User StoriesUser Stories
User Stories
 
Building Blocks for Lean Agile Requirements (c) technology expresso v12 9 m...
Building Blocks for Lean Agile Requirements (c) technology expresso v12   9 m...Building Blocks for Lean Agile Requirements (c) technology expresso v12   9 m...
Building Blocks for Lean Agile Requirements (c) technology expresso v12 9 m...
 
Building blocks for lean agile requirements (c) technology expresso v12 @Jacq...
Building blocks for lean agile requirements (c) technology expresso v12 @Jacq...Building blocks for lean agile requirements (c) technology expresso v12 @Jacq...
Building blocks for lean agile requirements (c) technology expresso v12 @Jacq...
 
Introduction to Agile Project Management and Scrum
Introduction to Agile Project Management and ScrumIntroduction to Agile Project Management and Scrum
Introduction to Agile Project Management and Scrum
 
Introduction to Agile Project Management and Scrum
Introduction to Agile Project Management and ScrumIntroduction to Agile Project Management and Scrum
Introduction to Agile Project Management and Scrum
 
Surge engr 245 lean launchpad stanford 2020
Surge engr 245 lean launchpad stanford 2020Surge engr 245 lean launchpad stanford 2020
Surge engr 245 lean launchpad stanford 2020
 
Splitting User Stories
Splitting User StoriesSplitting User Stories
Splitting User Stories
 
Project Effort Estimation - Key pointers
Project Effort Estimation - Key pointersProject Effort Estimation - Key pointers
Project Effort Estimation - Key pointers
 
Nitin bondre
Nitin bondreNitin bondre
Nitin bondre
 
From idea to ux roadmap - MakeIt Masterclass - Boost User Experience
From idea to ux roadmap - MakeIt Masterclass - Boost User ExperienceFrom idea to ux roadmap - MakeIt Masterclass - Boost User Experience
From idea to ux roadmap - MakeIt Masterclass - Boost User Experience
 
Narayanan Doraiswamy Resume
Narayanan Doraiswamy ResumeNarayanan Doraiswamy Resume
Narayanan Doraiswamy Resume
 
Story writing
Story writingStory writing
Story writing
 
prod-dev-management.pptx
prod-dev-management.pptxprod-dev-management.pptx
prod-dev-management.pptx
 
742946
742946742946
742946
 
Agile planning and estimating
Agile planning and estimatingAgile planning and estimating
Agile planning and estimating
 

Recently uploaded

FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
Ralf Eggert
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
Cheryl Hung
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Product School
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
Alison B. Lowndes
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
Product School
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 
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...
Jeffrey Haguewood
 
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...
Elena Simperl
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
Paul Groth
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Thierry Lestable
 
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
RTTS
 
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...
Product School
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 

Recently uploaded (20)

FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
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...
 
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...
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
 
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
 
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...
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 

Agile User Stories

  • 1. User Stories Agile Software Development
  • 2. Topics Objectives Brief History – Motivation Process Overview A User Story Writing Stories Managing Development Practices The Journey Summary
  • 3. Objectives Discuss agile software development practices, with 30% focus on user stories
  • 4. Brief History - Motivation
  • 5.
  • 6. Process Overview Daily Standup Customer + Dev Team Story Workshop, Conversations, etc Customer Team I-Meet Customer + Dev Team Prioritize stories, estimate velocity R-Meet Customer + Dev Team Prioritize stories, estimate
  • 7. A User Story 3 parts Planning placeholder & reminder Notes from conversations Tests Not system’s point of view
  • 8. User Story – Planning Placeholder & Reminder Taskboard & Release/Sprint Planning (VersionOne*) Card Walls & Release/Sprint Planning (Mingle*) *Mingle is a trademark of Thoughtworks *VersionOne is a trademark of VersionOne
  • 9. Notes from conversations E.g. Customer Service can search for orders so that they can quickly access the customer’s order when customer calls in to make changes to the delivery address Notes : Zie says always show customer name, order reference number, order date.
  • 10. Tests Conveys to developers additional information Developers get an idea if they are done Treat as specification
  • 11. Tests – Specification/Test Collaboration Framework
  • 12. Questions What are the 3 parts of a user story?
  • 13. Writing Stories Form and function Attributes INVEST Trawling Stories Smell
  • 14. Writing User Stories - Form and function The role, goal and motivation. <role’s> wants to do <goal> because <motivation> Example : As an account holder, I want to transfer funds between two of my accounts so that I can maximize the performance of my savings and avoid any fees associated with overdrafts and minimum balance rules.
  • 15. Writing User Stories - INVEST E.g. of non-independent story : Customer can pay for basket items using iPay88 payment gateway Customer can pay for basket items using WorldPay payment gateway Possible Solutions: Combine both If combining both is too large – split out the base work: Customer can pay with one type of payment gateway Customer can pay with two additional types of payment gateway
  • 16. Writing User Stories – INVEST Too much detail such that the extra details is associated to extra precision – always negotiable Valuable to Users User easily understands : Test with Credit Card, Debit Card and Cheque User cannot understand : Test that Payment table contains the authorization id for credit card Acceptable to indicate non-functional requirements like : This feature is expected to be used by 200 users concurrently and at any one time 200 payment records can be shown quickly, may be in 2s.
  • 17.
  • 19. Experiment within a specific time with the objectives of estimation - Spikes
  • 20.
  • 22. Writing User Stories - Responsibilities Customer Team : Responsible for writing stories, keeping in mind INVEST Developer : Help customer write stories which lack details, do not assume and always have conversation but have it at the point when supporting information is available
  • 23. Writing User Stories - Trawling for Requirements User stories workshop, interviews ( open ended and context free questions ) , observation & questionnaire Role Modeling, Personas , Extreme characters
  • 24. Writing User Stories - Trawling for Requirements Higher Fidelity Prototype Low Fidelity Prototype Returns/Exchange Status Delivery Input Return Details Refund Details (Based on Payment)
  • 25. Story Smell Catalogues Stories are too small Interdependent Stories Goldplating Too many details Including user interface details too soon Thinking too far ahead Splitting too many stories Customer has trouble prioritizing Customer won’t write and prioritize stories
  • 26. Questions What does INVEST stands for? Who constitute the Customer team? What are the tools available for trawling for requirements?
  • 28. Managing - Planning Too many variables, too far ahead and replanning with better information not planned for  75% of all US IT projects are considered to be failures by those responsible for initiating them. Half of the projects exceeded budget by 200% 31% of projects were cancelled outright  53% of the all projects was so worrying that they were challenged.
  • 29. Managing – Planning.Estimating Establish definition of story points Velocity = (Story Points Completed)/Sprint Previous velocity can be used to estimate Tools : Estimating : Tasks, Triangulating with Card Wall, Planning Poker
  • 31. Managing – Cost.Resource Developers are not Codys
  • 32. Managing – Planning.Release Two areas Features/Stories Prioritization : MoSCow Time Iteration Length Time to complete - Product Roadmap Move from story points to expected duration Product will be ready for release in approximately 5-7 iteration
  • 33. Managing – Planning.Sprint Discuss a stories For each stories disaggregate into tasks Small enough to be accurate Developer accepts responsibility for each task Individually ensures estimate What! No task for upfront design?
  • 34. Managing - Controls Release Burndown charts – sprint (x-axis) Sprint Daily burndown charts – day (x-axis) Daily NotStarted,InProgress,Completed - Cardwalls Standup
  • 35. Managing - Rules of the Game No changes to during a sprint Customer stay involves all the time
  • 36. User Stories Not IEEE 830 Use cases – sized to deliver business value, “level of detail” Why Emphasize of quick chat Comprehensible by everyone Right size for planning Works for iterative development Defer details to a right point in time Support opportunistic design Encourages participatory design Build up tacit knowledge Stories may not be good ISO 9001 companies – Will have an issue with tear up stories
  • 37. Team Practices Start off with simple design, but expect changes Refactoring ( and consequently test ) is important Test Automation is crucial Architecture, UML, use cases and agile software development Middle out
  • 38. Questions What are the tools used in estimation? What is done in Release Planning? What are the tools used in Release Planning? Completion vs Number of Stories Points – which is preferred? Name the Team Practices. How do you deal with unplanned tasks?
  • 40. The Journey - Build
  • 41. The Journey - Communication
  • 42. Summary You can’t do agile you just have to be agile
  • 43. Q&A
  • 44. Reference User Stories Applied for Agile Software Development – Mike Cohn – Addison Wesley http://www.thoughtworks.com/what-we-say/presentations/AgileMadeUsBetter.pdf Behavior Driven Development - Scott Belware - http://www.code-magazine.com/articleprint.aspx?quickid=0805061&printmode=true

Editor's Notes

  1. Human’s capability to design without feedback is poor. Typically large upfront requirements and design will typically changeKey is to find that right balance – finding that balance differ from person to personIdea is start coding at the right time, so requirements can be
  2. Customer team : Product Management, user ( if possible actual user ), testerCustomer PrioritiesDesirability from a broad base usersDesirability of the feature to a small number of important usersCohesiveness Developer PrioritiesTechnical riskCohesivenessStandupMeeting – think about a maximum of 3 things the team like to know about your work
  3. Epic – very large stories with a large value for estimatesUser stories emphasize verbal rather than written communicationComprehensible by both you and the developersRight size for planningUser stories defer details until you have the best understanding about what you really need-> Stories can contain stories, just describe a large story and rip it up later splitting it to multiple stories
  4. How much details is enough? The notes on the card is not important, it’s just to be a reminder, if you can remember don’t put it in.There are details that developers already think they know, it’s important that developer don’t assume – have the conversation and jot things down, don’t get too much detail, start coding first and get the feedback
  5. Who:Customer teamWhen : During conversations between customer + developer and want to capture explicit detailsDedicated effort at the start of an iterationAfter programming of the storyWhat :-What else do the programmers need to know about this story-What am I assuming aout how this story will be implemented-What are the circumstances when this story may behave differently-What can go wrong during this storyFunctional in nature but possible to include ui flow, usability testing, performance testing, stress testingHow Needs to be automated – see fitnesseTesting for bugs not coverageAdd a test for each bug
  6. Stories may not be independent initially, if
  7. Issues, since there will be multiple gateway, the developer spend an upfront design and development for the base components and then provide the specific implementation and testing for each of the gateway
  8. Epics fall into two types : Compound-split but retain cohesivenessComplex – pull research away from functionalityEg. complex algorithm, complex business process
  9. Needs to be testable
  10. Tools : Role ModelingCustomer Team
  11. Constantly adjust plan to reflect the knowledge we gain from each iteration
  12. Can be the 3 hours of solid work half dayCan be the ideal 8 hour work day, etc.Can be the 3 hours of solid work half day of two developers
  13. Not every developer are the same – different backgroundsEstimating as a team levels outEveryone tries to complete as a team – prefers completing stories over starting new ones, Organization Development
  14. Time Select iteration length Time to completePrioritizationBroadbase usersImportant usersCohesivenessCustomer Team Prioritizes with the help of the team
  15. Personally I think upfront design is essential to be efficient, finding out the right balance is important – it should be allocated and the amount of time spend should be short – the longer the more complicated
  16. Scenarios too much upfront details
  17. What does test needs