Lifecycle of a User Story Webinar Series © Three Beacons LLC, 2015 Lifecycle of a User Story Mike Hall Three Beacons
Lifecycle of a User Story Webinar Series © Three Beacons LLC, 2015 Lifecycles Conception BirthGrowthMaturityEnd of Life
Lifecycle of a User Story Webinar Series © Three Beacons LLC, 2015 Conception
Lifecycle of a User Story Webinar Series © Three Beacons LLC, 2015 Conception How? Collaborative discussions Project vision, goals Name* the major usage scenarios requiring stimulus from user When? Certainly in initial planning* During customer conversations When discussing other stories Any time in the project lifecycle Breaking down “epics”
Lifecycle of a User Story Webinar Series © Three Beacons LLC, 2015 Epics, Features, and Stories EPIC Major product capability FEATURE 1 FEATURE 2 FEATURE 3 Groupings of functionality STORY 3 STORY 2 STORY 1 STORY 2 STORY 1 STORY 6 STORY 5 STORY 4 STORY 3 STORY 2 STORY 1 Specific usage scenarios
Lifecycle of a User Story Webinar Series © Three Beacons LLC, 2015 Example: Location Services EPIC Location Services Turn-by-Turn Routing Favorite Destinations FEATURES Trip Computer Delete Trip View Previous Reset Trip Save Trip Stop Trip Start Trip* STORIES
Lifecycle of a User Story Webinar Series © Three Beacons LLC, 2015 Birth
Lifecycle of a User Story Webinar Series © Three Beacons LLC, 2015 Birth When written Note card, document, tool Reminders Purposely high-level Captures “essence” of requirement 3 parts -Name -Description -Acceptance criteria Highest priority stories – quick kickoff
Lifecycle of a User Story Webinar Series © Three Beacons LLC, 2015 Syntax Name As a, I want, So that. Name and Description Acceptance Criteria When I, I expect. When I, I expect. When I, I expect.
Lifecycle of a User Story Webinar Series © Three Beacons LLC, 2015 Example: Start Trip user story Start Trip As a Driver, I want to start my trip, So that I can begin tracking my time and distance. When I select the Start Trip button, I expect to see a new Trip Computer screen. When I view the Trip Computer screen, I expect to see the Distance field changing as I drive. I also expect to see the Drive Time field changing in 1-second increments. When I view the Trip Computer screen, I expect to see my average speed. Etc.
Lifecycle of a User Story Webinar Series © Three Beacons LLC, 2015 Growth
Lifecycle of a User Story Webinar Series © Three Beacons LLC, 2015 Growth “They grow up so fast!” Some user stories follow a steady growth pattern Some are asked to “grow up quickly” Some are fine never growing up
Lifecycle of a User Story Webinar Series © Three Beacons LLC, 2015 Product Backlog Scrum artifact: All project related work items Includes user story names Growth factors: Priority order 1..n Reprioritized throughout project Refined, broken down Estimated Clarified thru conversations
Lifecycle of a User Story Webinar Series © Three Beacons LLC, 2015 The Three Amigos DEVELOPERSTESTERSPO/BA Collaborative discussions of the user story with developers, testers, and PO/BA. “Discover” the details of the requirement
Lifecycle of a User Story Webinar Series © Three Beacons LLC, 2015 Clarifying Conversations Growth factors: Collaborative discussions help to clarify and “firm up” the requirements Spur the growth of the highest priority stories* Decisions – immediate and actions for others Acceptance criteria – form of TDD Adjust the user story based on consensus Tacit knowledge within team grows XP “whole team” concept
Lifecycle of a User Story Webinar Series © Three Beacons LLC, 2015 Example: Start Trip clarifications Start Trip As a Driver, I want to start my trip, So that I can begin tracking my time and distance in order to accurately fill out my expense report. When I select the Start Trip button, I expect to see a new Trip Computer screen. When I view the Trip Computer screen, I expect to see the Distance field changing as I drive. I also expect to see the Drive Time field changing in 1-second increments. When I view the Trip Computer screen, I expect to see my average speed. When I view the Trip Computer screen, I expect to see buttons for Stop, Save, and Reset.
Lifecycle of a User Story Webinar Series © Three Beacons LLC, 2015 Estimate Growth factors: Better understand the size of effort of the user story Can indicate if the story needs to be broken down further Useful during sprint planning Useful during release planning Useful for prioritization
Lifecycle of a User Story Webinar Series © Three Beacons LLC, 2015 Research Spike Growth factors: Learning activity to reduce risk Research, prototypes, design, etc. Time-constrained and exploratory Knowledge share of findings Can result in new user stories Can result in changes to existing stories “Growth spurt”
Lifecycle of a User Story Webinar Series © Three Beacons LLC, 2015 Sprint Backlog Growth factors: Migration from product backlog into sprint backlog - ready for implementation! Decomposed into Tasks Task estimates Focus on “how” Clarity on “what” and “how” Stor y
Lifecycle of a User Story Webinar Series © Three Beacons LLC, 2015 Example: Start Trip tasks Design screen layout Design trip DB record Save starting GPS position Calculate distance Set trip timer Set drive time timer Etc.
Lifecycle of a User Story Webinar Series © Three Beacons LLC, 2015 Maturity
Lifecycle of a User Story Webinar Series © Three Beacons LLC, 2015 Maturity Stories “mature” as they are implemented Tasks are implemented New tasks are added Unnecessary tasks are removed Task estimates adjusted Integration is required! High levels of collaboration User story is “fine tuned” and matured Done?
Lifecycle of a User Story Webinar Series © Three Beacons LLC, 2015 Definition of Done Growth factors: Morph user story to adhere to DoD QA opinion/approval PO opinion/approval Collective pursuit of defect-free software
Lifecycle of a User Story Webinar Series © Three Beacons LLC, 2015 Example: Start Trip maturation When I select the Start Trip button, I expect to see a new Trip Computer screen. When I view the Trip Computer screen, I expect to see the Distance field changing as I drive. When I begin driving, I expect to see the Drive Time field changing in 1-second increments. When I view the Trip Computer screen, I expect to see my average speed. When I view the Trip Computer screen, I expect to see buttons for Stop, Save, and Reset. QA asks the question, “Does Drive Time start immediately when I select the Start Trip button, or does it wait until I actually start driving?” Ooops! When I select the Start Trip button, I expect to see a new Trip Computer screen. When I view the Trip Computer screen, I expect to see the Distance field changing as I drive. I also expect to see the Drive Time field changing in 1-second increments. When I view the Trip Computer screen, I expect to see my average speed. When I view the Trip Computer screen, I expect to see buttons for Stop, Save, and Reset.
Lifecycle of a User Story Webinar Series © Three Beacons LLC, 2015 Demonstration Growth factors: Feedback is golden Updated user stories New user stories Reprioritization in backlog Thumbs up or thumbs down Continued maturation towards “doneness”
Lifecycle of a User Story Webinar Series © Three Beacons LLC, 2015 Deployment Growth factors: End user feedback Field reports/bugs Satisfaction surveys User story updates Possible re-deploy Continued maturation
Lifecycle of a User Story Webinar Series © Three Beacons LLC, 2015 End of Life
Lifecycle of a User Story Webinar Series © Three Beacons LLC, 2015 End of Life When story is determined to no longer be needed -Removed from backlogs -If already developed, source code is removed When product/functionality is decommissioned from the market When project is cancelled Only memories remain (hopefully good) No need to mourn
Lifecycle of a User Story Webinar Series © Three Beacons LLC, 2015 Conclusion
Lifecycle of a User Story Webinar Series © Three Beacons LLC, 2015 Conclusion User stories follow a lifecycle analogous to human life, from conception, to birth, to growth, to maturity, and finally to end-of-life. Thinking of user stories throughout these lifecycle phases can help you achieve a more in-depth understanding of the technique.
Lifecycle of a User Story Webinar Series © Three Beacons LLC, 2015 Three Beacons Agile Training Scrum team training Intro to Agile User Stories Extreme Programming Agile Consulting Onsite Skype-based
Lifecycle of a User Story Webinar Series © Three Beacons LLC, 2015 THE END Mike Hall Three Beacons
Hemant Elhence March 17, 2015Confidential
Synerzip in a Nutshell Software product development partner for small/mid-sized technology companies –Exclusive focus on small/mid-sized technology companies, typically venture-backed companies in growth phase –By definition, all Synerzip work is the IP of its respective clients –Deep experience in full SDLC – design, dev, QA/testing, deployment Dedicated team of high caliber software professionals for each client –Seamlessly extends client’s local team, offering full transparency –Stable teams with very low turn-over –NOT just “staff augmentation”, but provide full mgmt support Actually reduces risk of development/delivery –Experienced team - uses appropriate level of engineering discipline –Practices Agile development – responsive, yet disciplined Reduces cost – dual-shore team, 50% cost advantage Offers long term flexibility – allows (facilitates) taking offshore team captive – aka “BOT” option ConfidentialMarch 17, 2015
Our Clients ConfidentialMarch 17, 2015
Next Webinar Confidential Analysis in Agile: It’s More Than Just User Stories Complimentary Webinar: Wednesday, April 15, noon CST Presented by: Kent McDonald Author, Speaker and Entrepreneur March 17, 2015
Call for a Free Consultation! Hemant Elhence linkedin.com/company/synerzip facebook.com/Synerzip ConfidentialMarch 17, 2015