SlideShare una empresa de Scribd logo
1 de 42
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

Más contenido relacionado

La actualidad más candente

Writing Good User Stories (Hint: It's not about writing)
Writing Good User Stories (Hint: It's not about writing)Writing Good User Stories (Hint: It's not about writing)
Writing Good User Stories (Hint: It's not about writing)one80
 
Agile and user story workshop Peter Saddington
Agile and user story workshop   Peter SaddingtonAgile and user story workshop   Peter Saddington
Agile and user story workshop Peter SaddingtonPeter Saddington
 
Invest In Good User Stories
Invest In Good User StoriesInvest In Good User Stories
Invest In Good User StoriesCraig Brown
 
Introducing Agile User Stories
Introducing Agile User StoriesIntroducing Agile User Stories
Introducing Agile User StoriesRam Srivastava
 
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
 
Cheat Sheet: 8 ways to split your user stories
Cheat Sheet:  8 ways to split your user storiesCheat Sheet:  8 ways to split your user stories
Cheat Sheet: 8 ways to split your user storiesPayton Consulting
 
User Story Splitting
User Story SplittingUser Story Splitting
User Story Splittingtrishly
 
User Story Smells & Anti-patterns
User Story Smells & Anti-patternsUser Story Smells & Anti-patterns
User Story Smells & Anti-patternsFadi Stephan
 
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
 
Strategies to split user stories
Strategies to split user storiesStrategies to split user stories
Strategies to split user storiescpolc
 
User Story Splitting.pptx
User Story Splitting.pptxUser Story Splitting.pptx
User Story Splitting.pptxPaul Boos
 
How do you get more out of your User Stories?
How do you get more out of your User Stories?How do you get more out of your User Stories?
How do you get more out of your User Stories?Thoughtworks
 
Agile stories, estimating and planning
Agile stories, estimating and planningAgile stories, estimating and planning
Agile stories, estimating and planningDimitri Ponomareff
 

La actualidad más candente (20)

Writing Good User Stories (Hint: It's not about writing)
Writing Good User Stories (Hint: It's not about writing)Writing Good User Stories (Hint: It's not about writing)
Writing Good User Stories (Hint: It's not about writing)
 
Agile and user story workshop Peter Saddington
Agile and user story workshop   Peter SaddingtonAgile and user story workshop   Peter Saddington
Agile and user story workshop Peter Saddington
 
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
 
Invest In Good User Stories
Invest In Good User StoriesInvest In Good User Stories
Invest In Good User Stories
 
Introducing Agile User Stories
Introducing Agile User StoriesIntroducing Agile User Stories
Introducing Agile User Stories
 
Ten Concrete Techniques to Split User Stories
Ten Concrete Techniques to Split User StoriesTen Concrete Techniques to Split User Stories
Ten Concrete Techniques to Split User Stories
 
Cheat Sheet: 8 ways to split your user stories
Cheat Sheet:  8 ways to split your user storiesCheat Sheet:  8 ways to split your user stories
Cheat Sheet: 8 ways to split your user stories
 
User Story Splitting
User Story SplittingUser Story Splitting
User Story Splitting
 
Epics and User Stories
Epics and User StoriesEpics and User Stories
Epics and User Stories
 
User Story Smells & Anti-patterns
User Story Smells & Anti-patternsUser Story Smells & Anti-patterns
User Story Smells & Anti-patterns
 
User Story
User StoryUser Story
User Story
 
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
 
Story of user story
Story of user storyStory of user story
Story of user story
 
Strategies to split user stories
Strategies to split user storiesStrategies to split user stories
Strategies to split user stories
 
User Story Splitting.pptx
User Story Splitting.pptxUser Story Splitting.pptx
User Story Splitting.pptx
 
User Stories
User StoriesUser Stories
User Stories
 
How do you get more out of your User Stories?
How do you get more out of your User Stories?How do you get more out of your User Stories?
How do you get more out of your User Stories?
 
Agile stories, estimating and planning
Agile stories, estimating and planningAgile stories, estimating and planning
Agile stories, estimating and planning
 
User Story Mapping
User Story MappingUser Story Mapping
User Story Mapping
 
Agile Story Writing
Agile Story WritingAgile Story Writing
Agile Story Writing
 

Similar a 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
 
Developing User stories - Beyond the Basics
Developing User stories - Beyond the BasicsDeveloping User stories - Beyond the Basics
Developing User stories - Beyond the BasicsKubair 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 @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 ScrumVoximate
 
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 ScrumEric Krock
 
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 2020Stanford University
 
Project Effort Estimation - Key pointers
Project Effort Estimation - Key pointersProject Effort Estimation - Key pointers
Project Effort Estimation - Key pointersChannaveer Patil
 
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 ExperienceClaudio Cossio
 

Similar a 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 @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...
 
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...
 
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
 

Último

Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 

Último (20)

Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 

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

Notas del editor

  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