User Stories: Across the Seven Product Dimensions

75
TH Halfday Tutorial 6/4/2013 8:30 AM "The Flow of the Agile Business Analyst" Presented by: Steve Adolph WSA Consulting, Inc. Brought to you by: 340 Corporate Way, Suite 300, Orange Park, FL 32073 8882688770 9042780524 [email protected] www.sqe.com

description

User stories are a powerful technique agile teams used to communicate requirements. Yet all too often, the stories are poorly written or even incomprehensible. Some stories are too big and overlap across delivery cycles. Others are too small and don’t deliver sufficient details for developers. Join Paul Reed to learn the Seven Product Dimensions—the 7 D’s—which yield “just right” stories that users and product owners can write and developers can understand. Explore and experience the Seven Dimensions: user, interface, action, data, control, quality, and environment. Learn to identify options for high value business and user needs, and then assemble them into cohesive user stories. As you slice the options, you’ll see ways to leverage analysis models to quickly visualize and discuss options. Practice employing structured conversations about user stories to engage customers while taking business and technology perspectives into consideration. Find out how to establish acceptance criteria based on the value considerations to make your stories more valuable. Leave with a practical framework for writing “just right” stories.

Transcript of User Stories: Across the Seven Product Dimensions

  • 1. TH HalfdayTutorial 6/4/20138:30AM "The Flow of the Agile Business Analyst" Presented by: Steve Adolph WSA Consulting, Inc. Broughttoyouby: 340CorporateWay,Suite300,OrangePark,FL32073 [email protected]

2. Steve Adolph WSA Consulting, Inc.An agile coach with WSA Consulting, Inc., Steve Adolph partners with Scaled Agile and Rally Software where he pursues his passion for helping organizations get the job done. He has been creating and managing software development projects long enough to remember Fortran and OS/MVT JCL. Steves professional career includes many exciting and critical projects designing call processing software for digital telephone exchanges, design and development of leading edge network management systems, railway signaling, and telecom billing. He has diverse experience in job roles ranging from developer to chief engineer to CTO. Steve is coauthor of the popular book, Patterns for Effective Use Cases. 3. TheFlowofthe AgileBusiness AnalystSteveAdolph Photo by K. W. SandersIntros Formintoagroupatyourtableof4to7peopleand intervieweachother Whatistheirjobrole? Whatistheiragileexperience(15)? Whatdotheyliketodooutsideofwork? Whatisonequestiontheywantansweredduring thisworkshop?Recordthisonapostitnote. 5. Asagroup,summarizeyourfindings. 5 Asagroup summarizeyourfindings 1. 2. 3. 4.Bepreparedtopresentyourfindings. 4. SteveAdolph [email protected] 5. Intheagile world,doIstill haveauseful job? Whereinanagile g processistheBA? WhatdoestheBAdoin anagileprocess? Photo by Caroline Schiff Photography 6. Agilityand g y Agile Economics Photo by WarriorwriterAgilityPhoto by Kevin Eddy 7. Manifesto for Agile Software Development We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan That is, while there is value in the items on the right, we value the items on the left more.9MuchMorethananUmbrella PhotobyAdry 8. BigTentAgilePhoto by Brian GurrolaAgileEconomics: FlowversusBatchPhoto by Tom Wahlin.Photo by K. W. Sande 9. Batch $ $ $ $AnalysisDesignBudgetImplementTestAnalystTeamBatch Analysis$ $ $DesignBudgetImplementTestAnalystTeam 10. Batch Analysis$ $DesignBudgetImplementTestAnalystTeamBatch Analysis$DesignBudget ImplementTestAnalystTeam 11. Batch AnalysisDesignBudgetImplementTestAnalystTeamBatch Maximum WIP No Finish ProductAnalysisDesignBudgetImplementTest 12. Flow Vision$ $ $ $Light Weight Development ProcessBudgetTeamProduct OwnerBacklog of Items 19Flow Vision$ $ $Light Weight Development ProcessBudgetProduct OwnerBacklog of Items 20TeamF e a t u r ePotentially Shippable Product Increment 13. Flow Vision$ $Light Weight Development ProcessBudgetProduct OwnerBacklog of ItemsTeamF e a t u r eF e a t u r ePotentially Shippable Product Increment21Flow Vision$Light Weight Development ProcessBudgetProduct OwnerBacklog of Items 22TeamF e a t u r eF e a t u r eF e a t u r ePotentially Shippable Product Increment 14. Flow VisionLight Weight Development ProcessBudgetProduct OwnerBacklog of ItemsTeamF e a t u r eF e a t u r eF e a t u r eF e a t u r ePotentially Shippable Product Increment23Flow Vision Minimal WIP Max Finished ProductBudgetProduct OwnerLight Weight Development ProcessBacklog of ItemsTeamF F e e Min a a t t u u r r e eF e a t u r eF e a t u r ePotentially Shippable Product Increment 15. LargeVersusSmallBatchMost fail to recognize both the critical relation between batch size and cycle time, and the critical relationship between batch size and feedback speed p Don Reinertsen, The Principles of Product Development FlowTheProblemwithStageGates andPhases AnalysisDesignThe work product being transferred from one phase to another is 100% of the work product of the previous phase phase. This is maximum theoretical batch size and will result in maximum theoretical cycle time Don Reinertsen, The Principles of Product Development FlowImplementTest 16. Whenitcomestoflow How can we reduce software development b t h size? d l t batch i ? What role (if any) does the Business Analyst play?Does Agility g y Obsolete the BA Role? 17. Scrum Framework Daily ScrumSprint 2-4 WeeksProduct Sprint Backlog BacklogScrumRolesProduct IncrementScrum MasterProduct OwnerPhoto by Gavin WhitePhoto by Greg Peverill-Cont?Delivery Team Photo by Reinhold Behringer 18. One perception oftheBAWorse Ilike purple.Itshouldbe redor g green.Iwanta rangeofcolor optionsincluding green,blue,and purpleItshallbe green. 19. Thehardestpart ofbuildingany softwaresoftware systemis system is determining preciselywhatto build Frederick BrooksPhotobyLildudeWhattheBABrings AreasofKnowledge EnterpriseAnalysis p y RequirementsPlanningand Management RequirementsElicitation RequirementsAnalysisand Documentation RequirementsCommunication SolutionAssessmentandValidationSkills Communications Facilitation DomainKnowledge AnalysisPhoto by Gioia De Antoniis 20. DiscussionQuestions Inyourgroupsdiscussthefollowingquestions: Hasagilityandtheeconomicsofflowrenderedthe roleoftheBAobsolete?Why? Doagilityandtheeconomicsofflowchangethewaya BAworks?Asagroup,summarizeandbepreparedtopresent yourfindings.TheShocking g TruthAbout Requirements 21. TheyChange!UncertaintyintheProjectGoal What our SRS specd Uncertainty in Stakeholder Satisfaction SpaceInitial State Courtesy Philippe Kruchten Source: W. Royce, IBMActual Path and precision of artifacts 22. TheFogAnalysis Design Implement Test 23. RequirementsandtheConeof UncertaintyThedistributionoffeaturesused inatypicalapplication Howcanweget moreofthis.andlessofthis? 24. ReducingWasteLeavethings untilthelast RESPONSIBLE moment Photo by Nick WheelerReducingWaste: ReversetheConeof Uncertainty What we need soon What we need nowConeofCertaintyWishful ThinkingWhat we want someday 25. HowtoWalkDownthe RoadintheFog Release 1ITERATION 1Task1 4hoursVisionRelease 2ITERATION 2ITERATION 3Task2 6hoursRelease 3ITERATION 4Task3 2hoursTask4 8hoursTask5 2hoursPhoto by Matthias WernerRequirementsFlow Far out on the RoadmapNext ReleaseCurrent ReleaseDaily ScrumSprint 2-4 Weeks 26. WhatsinYour Backlog?ABacklogPhoto by Tony Case 27. UserStories: TheEarlyDaysPhoto by Patti GravelUSERSTORIES* Capturessomethingvaluable Fitsintoonesprint Fits into one sprint (Could)fitona3x5notecard Annotatewithnotes,andestimates Detailscomefromconversationswith ProductOwner Product Owner Acceptancetestsconfirmstorywascoded correctly Photo by Improve it*Originaldefinitionofauserstory 28. As a , I want to , so that .As a traveler, I want to be able to cancel a reservation in one move, so that all the details can handled. 29. CARD CONVERSATION CO CONFIRMATION OCARD CONVERSATION CO CONFIRMATION O 30. CARD CONVERSATION CO CONFIRMATION O 31. CARD CONVERSATION CO CONFIRMATION OAs a traveler, I want to be able to cancel a reservation in one move, so that all the details can handled. handledAcceptance Criteria: Cancel res for hotel, car, plane, train Charge 10% fee Confirmation email 32. AreUserStoriesSimply DegenerateUseCases? Upgrade Seat"Ausecaseistoa userstorylikeagazebo istoagazelle" istoagazelle" - Alistair Cockburn 33. UserStories: TheModernEraPhoto by Brad SmithWhatifthestorydoesntfit intothesprint? Product BacklogBook TravelSet Travel Policy Generate Backlog Sprint Expense ReportSprint Backlog 34. Or what if you are building this?Product BacklogEpicsBook TravelSet Travel PolicyBacklogItemGenerate Expense ReportUML Model Courtesy Dean LeffingwellEpicRealized by0,11..*Story 35. EpicsandStoriesPhoto by Toby SimkinStorySplitting 36. AValueBased WorkBreakDownStory 1Story 2GUI Business Logic DatabaseAreWeDoneYet?Story 1Story 2GUI Business Logic Database 37. AreWeDoneYet?Story 1Story 2GUI Business Logic DatabaseTheAgileBA Five Principles Creating a Flow of Value 38. Principles for Creating a Steady Flow of Sprintable StoriesFar out on the RoadmapNext N t ReleaseCurrent ReleaseFivePrinciplesFortheAgileBA 1. OpentheChannels 2. CharttheFlow 3. GenerateFlow 4. LeanouttheFlow 5. BridgetheFlowPhoto by Gioia De Antoni 39. Principle#1 OpentheChannelsPhoto by Peter VajdaDontbethis 40. bethisReconciling Perspectives 41. PerspectiveMismatch its getting everybody to understand things in a similar manner. Get everybody on the same page. page I think that s thats the biggest thats that s impediment is people walk away with misunderstandings and you havent clarified. And they just run with their assumptions or what the way they understand things. And then we either have to go and correct them or back out of it or redo um something. And I think thats the thing that causes us the most pain I spend the most pain. time on in terms of preventing and mitigating Site 1 Subject 1 follow-upIsMoreCommunicationsAlways Better?Relationship Between Performance and Communications Frequency (Patrashkova-Volzdoska, et al., 2003, p. 266) 2003 IEEE8 0 42. TheBAasa Boundary SpannerPhoto by Robert ConleyPersonal NetworksPhoto by Tim Dorr8 2 43. InformalBackchannelsPhoto by Mind the GoatCadence: Regular Backlog Backlog GroomingPhoto by Ross8 4 44. Opening the Channels In your groups discuss the following questions: 1. What are the channels both formal and informal that are available to you for engaging both business and engineering stake holders? 2. What organizational enablers exist that help keep those channels open? 3. What organizational barriers (if any ) are there to keeping those channels open? 4. What changes do you or your group have sufficient influence to make that could open new channels or would improve the flow of existing channels? Summarize your findings and be prepared to report your answers as a group.Principle#2 CharttheFlowPhoto by Chris Seward 45. MultiLevelPlanning VisionRelease 1ITERATION 1Task1 4hoursRelease 2ITERATION 2ITERATION 3Task2 6hoursRelease 3ITERATION 4Task3 2hoursTask4 8hoursPhoto by Matthias WernerVision AStartoSteerBy True North*:Why arewebuildingthis? Broadstatementofprojectsvalue CreateAlignment Reasonablystableover6monthstoayear*Dennis Pascal: Getting the Right Things DonePhoto by Charles DawleyTask5 2hours 46. For (customer), who (statement of need),the (product name) is a (product category) that (key benefit, compelling reason to buy). Unlike (primary competitor), our product ( i tit ) d t (statement of primary differentiation).Photo by Alexandar BodenTheElevator StatementAVisionTool: TheProductBoxDesign box for the software Name, Logo, Description, Key Selling point on front 3-6 points to key differentiators or compelling reasons to buy on the back 47. TheRoadmap DefineDatesandMilestones Define Dates and Milestones SetHighLevelThemes ProductEvolutionovertimePhoto by Michael_P9 1A Release Release date Driven by events Defined release train schedule Release Name and Objective Internal delivery to a platform, other team, or release train Distribution to Production Theme Compelling reason to buy New and primary product differentiation Significant business value to the organization Planned feature set High-level descriptions of system services that deliver value to the user/customer8/31/10 8/31/10 Release 1 Proof Th P Theme: Prove ? For X, this Proof release provides Key Features: 1. Feature A 1 2. Feature B 3. Feature C 48. A Roadmapof ReleasesVision8/31/11 8/31/1110/30/11 10/30/111/?/12 1/?/123/?/12 3/?/12R l Release1 ProofRelease2 R l AlphaR l Release3 BetaRelease4 R l GA1.0Theme:Prove? ForX,thisProofrelease providesKeyFeatures: 1.FeatureA 2.FeatureB 3.FeatureCTheme:Trialwithcritical existingcustomers For,thisAlpha releaseprovidesKeyFeatures: 4.FeatureB 5.FeatureC 6.FeatureDPrinciple#3 GenerateFlowPhoto by Eric BeginTheme:UpgradeAlpha andexpandtonew customers For,thisBeta releaseprovidesKeyFeatures: 7.FeatureB 8.FeatureD 9.FeatureETheme:General Availability For,thisGArelease providesKeyFeatures: 10.FeatureF 11.FeatureG 49. UMLModelofaBacklogItem Modeloptionally elaborated byBacklogItemOther Types ... State Diagram Class Diagram UseCaseEpicRealized by0,11..*Ref Dean LeffingwellStory 50. ModelsandModelUsage Whatmodelsareyouusing? Take 5 minutes to interview someone not seated in your group: 1. What models do they use? 2. What aspects of the problem domain do the models reveal? 3. Do they find the models useful? 4. What problems (if any) have they encountered with the models? Be prepared to present your findings Photo by Jason ColemanModelDrivenUserStories Upgrade Seat Actor: Traveler: Ticketed passenger Main Success Scenario 1. Traveler enters her account code for the flight and requests a seat upgrade. 2.The system verifies the traveler is eligible for upgrade. 3. The system verifies there are seats available for upgrading.As a traveler.As a traveler I Upgrade want to upgrade my seat S t t Seat Traveler4. The system upgrades the Traveler seat assignment, and the appropriate upgrade certificates are removed from the Travelers account. 5. The system issues an upgrade receipt to the Traveler. Alternatives 1a: Traveler is a frequent flier 1a.1 The system displays her current mileage and recent flight activity.As a traveler I want to see my current status3a: Traveler d 3 T l does not h t have enough upgrade certificates h d tifi t 3a.1 Traveler purchases additional upgrade certificates. Business Rules Upgrade Eligibility Platinum frequent flyers may request an upgrade 72 hours prior to departure. Gold frequent flyers may request an upgrade 24 hours prior to departure. Silver frequent flyers are not eligible for upgradesAs a traveler I want to purchase upgrade certificates. 51. SplitAlongAcceptanceCriteria As a traveler, I want to be able to cancel a reservation i one move, so th t all the ti in that ll th details can handled. Acceptance Criteria: Cancel res for hotel, car, plane Charge 10% fee Confirmation emailCancelresforhotel,car,plane As a traveler, I want to be able to cancel my reservations f a hotel, car, and plane i one ti for h t l d l in move so all details are handled. Acceptance Criteria: plane reservation is canceled Hotel reservation is canceled Car reservation is canceled 52. PlaneReservationisCancelled As a traveler, I want to be able to cancel my traveler plane reservation in one move so all details are handled. Acceptance Criteria: Cancelation request is sent to airline Confirmation received from airline reservation is canceledLowFidelity/HighFidelityPhoto by Vanessa ArnPhoto by Alberto Cardona 53. BillWakes20WaystoSplitaStory: 1through9theBigPicture ConsiderFirstDefer/LaterExplanationResearchImplementWhathaveothersdone?Spike kImplement lExplore aquicksolution l k lManualAutomatedOftenhavetoretain manualsolutionanywayBuyBuildTradecostofcustomizing.BuildBuy.versuscostofimplementingyourselfSingleUserMulti UserFewerworriesaboutscale, useraccounts.API onlyUser InterfaceTestmayfunctionwithoutUICharacterorScript GUI UISimpleinterfacecanproveoutideasGenericUINakedobjectsapproachcanbecheaperCustom UI- http://xp123.com/articles/twenty-ways-to-split-stories/BillWakes20WaystoSplitaStory: 10through16theilities ConsiderFirstDefer/LaterExplanationStaticDynamicDoonceandignoreupdatesIgnoreErrorsHandleErrors dlMinimize Errorcodes(dontignoreexceptions) d dTransientPersistentFocus onbehaviouroverpersistenceLowFidelityHighFidelityQualityof result(e.g.pixeldepth)UnreliableReliablePerfectuptime isveryexpensiveWmPietriSmallScaleLargeScaleBuild loadcapacityovertimeLessilitiesMore ilitiesAddressNFRslater- http://xp123.com/articles/twenty-ways-to-split-stories/ 54. BillWakes20WaystoSplitaStory: 17through20theFeatures(+2more) ConsiderFirstDefer/LaterExplanationFewManyEasiertodofewerfeaturesMainFlow lAlternative l Flowsh ll bl h Happypathsversusallpossiblepaths01Nothingiseasierthansomething1ManyOneiseasierthanmanyOnelevelAlllevelsOnelevelisthebasecasefor alllevelsBaseCaseGeneralCaseBasecasemustbedone,others neednt- http://xp123.com/articles/twenty-ways-to-split-stories/Creating a Cadence for Generating Flow Visioning Road mapping Release planning Sprint Planning Backlog Grooming B kl G iPhoto by Davide Simonell 55. How are you generating flow? In your groups discuss the following topics 1. 1 What ceremonies do you have that generate flow? 2. What are the impediments to generating a flow of sprintable stories? 3. What changes do you have influence to make that can overcome these impediments and improve flow? Be prepared to share your conclusions conclusions.Principle4 LeanouttheFlowCraig Kohtz 56. Wow!IlovewhatIm hearingaboutthisagile transformationthingyoure doingareyoureally deliveringnewfeatures everytwoweeks?Yes!Wegetnew valuablefeaturesinto revenueserviceevery twoweeks.Photo by World Bank Photo CollectionPhoto by PennybinaryIloveyouguys!LookIve beenthinkingabouta newfeaturethatwilljust rockthemarketplace. WhencanIhaveit?Letssee,youllhaveto talktotheproductowner, butrightnowwehave over300 itemsinour backlogandwere deliveringabout5 items eachsprint..Photo by World Bank Photo CollectionPhoto by Pennybinary 57. ImnotsureI likethisagile thing anymoreSobacklogitem number243Photo by NearsoftProblemswith Queues Queues CreateLongerCycle Times IncreaseRiskMoreVariability MoreOverhead LowerQualityFrom Product Development Flow by Donald ReinerstenLessMotivation 58. Agility,QueuesandLittlesLaw Wq - queue time for average jjob q gWq =LqLq - queue lengthaverage processingrateReducingQueue Time:Increase Icantakea storyWerereally getting swampedhere.Yeahsocan Y h IThe self organizing team.Photo from NearsoftMetoo 59. Reducing Queue Time: Limit Queue Length (Lq)Wehaveover30010 itemsinourbacklog andweredelivering about5itemseach sprint..Photo by PennybinaryDecreasingLq QueueLength: Shape of a well groomed Backlog 60. ReducingQueueTime ReducesWasteLeavethings untilthelast RESPONSIBLE moment Photo by Nick WheelerUsingMultiLevelPlanning tolimitQueueLengthRelease 1ITERATION 1ITERATION 2Release 2ITERATION 3ITERATION 4VisionRelease 3ITERATION 5ITERATION 6 61. DecreasingLq QueueLength: Multi Level Planning and the Groomed Backlog Future ReleaseNext ReleaseCurrent ReleaseReducingQueueLength: BacklogPolicyandWellGroomedBacklog(s)Portfolio Backlog: Epics representing large initiatives Feature Backlog: Features for Next ReleaseTeam Backlog: Current Release 62. VisualizingQueues: TheCumulativeFlowDiagram Departures ArrivalsTime In Queue Quantity In QueueCumulative Quantity Time 63. TosstheTrash Photo by Ming XiaPrinciple#5 BridgetheFlowPhoto by Ava Babil 64. GovernanceandthePMOView oftheWorld Initiation / Planning Will it be ready in time? Project Execution Will it work? Is it safe? and Control Is this project still a good bet?Project ConclusionGovernanceManifestedas StageGatesPhoto By Kaustav BhattacharyaVersion 7 65. GovernanceManifestedas orasDocumentationSets StageGatesPhoto by Daniel9d MartinsWhywehavethose GovernancePractices Youspent HOWmuch HOW h building this?!@%$#327million g gonejustlike j thatsigh.Better makesurethat doesnthappen again 66. PMOandDevelopment: TheTwoSolitudes?Initiation / PlanningProject Execution and ControlProject ConclusionProduct IncrementBridgingtheTwoSolitudes Initiation / PlanningProject Execution and ControlProject Conclusion 67. FlowEnablesFastFeedback Cycles.SoarethoseStageGatesand DocumentsStillRelevant?Photo By Kaustav BhattacharyaPhoto by Daniel9d Martins Version 7 68. Photo by MroachOptimize the Stage GateEliminate, Lighten, or Optimize DocumentationPhoto by Jules Holleboom 69. CultivateAlliesPhoto by Andy DoroReverseEngineerGovernance WorkProducts Upgrade Seat Actor: Traveler: Ticketed passenger Main Success Scenario 1. Traveler enters her account code for the flight and requests a seat upgrade. 2.The system verifies the traveler is eligible for upgrade. 3. The system verifies there are seats available for upgrading. 4. The system upgrades the Traveler seat assignment, and the appropriate upgrade certificates are removed from the Travelers account. 5. The system issues an upgrade receipt to the Traveler. Alternatives 1a: Traveler is a frequent flier 1a.1 The system displays her current mileage and recent flight activity. activity 3a: Traveler does not have enough upgrade certificates 3a.1 Traveler purchases additional upgrade certificates. Business Rules Upgrade Eligibility Platinum frequent flyers may request an upgrade 72 hours prior to departure. Gold frequent flyers may request an upgrade 24 hours prior to departure. Silver frequent flyers are not eligible for upgrades 70. Working in your groups, discuss the following questions for Bridging the Flow: In terms of stage gates and documentation and rapid feedback f db k cycles: l 1. Which stage gates and documents are relevant (e.g. actually used, or necessary)? 2. Which are required by outside regulatory agency? 3. Which could be eliminated altogether? 4. Which could potentially be, optimized, or lightened? li ht d? 5. Which gate keepers can you engage as allies? Be prepared to report out your answers (and questions)TheFlowof theAgileBA 71. Whereisthe BA?Scrum MasterProduct OwnerPhoto by Gavin WhitePhoto by Greg Peverill-Cont?Delivery Team Photo by Reinhold BehringerUsesmall batchesto deliverasteady d li t d flowofvalueProduct Increment 72. The5PrinciplesfortheFlowofthe AgileBA Principle1:OpentheChannels Cadence BoundarySpanning PersonalNetworks InformalBackchannelsPrinciple2:CharttheFlow P i i l Ch tth Fl Vision RoadmapThe5PrinciplesfortheFlowofthe AgileBA Principle3:GenerateFlow ModelDrivenStories Splittingstoriesalongacceptancecriteria Lofidelity/HiFidelitystorysplitsPrinciple4:LeanOuttheFlow Selforganization decreasingaverageprocessingtime LimitQueueLength Multilevelplanning(CharttheFlow) Monitorbacklogsize 73. The5PrinciplesfortheFlowofthe AgileBA Principle5:BridgetheFlow OptimizeStageGates Eliminate,Lighten,orOptimizeDocumentation CultivateAllies Dontletrequiredworkproductsslowcycletime:Be preparedtoreverseengineerworkproductsNextSteps?Photo by Fionnaigh McKenzie 74. Thank You!Steve Adolph [email protected]