Presentation is loading. Please wait.

Presentation is loading. Please wait.

As an agilist, I want to write great user stories so that... Ryan 08.27.2013 Tampa Bay Agile Meetup.

Similar presentations


Presentation on theme: "As an agilist, I want to write great user stories so that... Ryan 08.27.2013 Tampa Bay Agile Meetup."— Presentation transcript:

1 As an agilist, I want to write great user stories so that... Ryan Dorrell @ryan_dorrell 08.27.2013 Tampa Bay Agile Meetup

2 CTO, co-founder, AgileThought (since 2004) Started professional career developing using 16-bit VB4 on Win 3.1 at Arthur Andersen in Sarasota, FL Since then:  OnSphere in Raleigh, NC (VB6,.NET, Java)  PricewaterhouseCoopers in Tampa, FL (Java)  Co-founded AgileThought in 2004 with David Romine, John Wagner At AgileThought:  Development, technical leadership, plus helping teams and organizations adopt agile and ALM practices and processes @ryan_dorrell @agilethought Bio

3

4 User Stories A promise for a future conversation Think about requirements differently Specifying in writing doesn’t work well

5 http://www.cakewrecks.com/

6

7 User Stories A promise for a future conversation Think about requirements differently Specifying in writing doesn’t work well Shared documents aren’t shared understanding

8 User Story Cadence As a, I want to, so that

9 Are user stories enough? Card ConversationConfirmation As a, I want to, so that 1.Item 2.2ITe 3.Item 4.Item 5.Item

10 What about use cases? A user story is to a use case… …is as a gazelle is to a gazebo.

11 Live by INVEST INDEPENDENTNEGOTIABLE ESTIMABLESMALL VALUABLE TESTABLE

12 User story anti-patterns Too largeToo technical UI-focused Not user- focused Actually just a task Describes implementation

13 Decomposition strategies By Operation By User Interface Model By Data Entry Method By Persona By Workflow Steps Split out spikes

14 Examples As a user, I want to view my dashboard page As a product owner, I want the password to have complexity requirements As a customer svc rep, I want to manage a customer’s account As a developer, I want to refactor the database connection code

15 Acceptance Criteria PO expectations on what will be delivered Can include: Functionality, look/feel, non- functional expectations Given… When…. Then… Automation tool support exists

16 Acceptance Criteria Examples RefFieldRules 1Promo Code The promo code, itself cannot be altered during the time between the Promo Start Date and Promo End Date. 2Promo Code Allow the start date of the promo to be modified if the current date is <the start date (i.e. if the promo code is not yet active, the start date can be changed) 3Promo Code All promo codes can only be used once and cannot be reused for another promotion. 4Promo CodeThe Total Limit of a promo code for a particular promotion can be modified if the Current Date <End Date. Given an Existing Promo Code, When it saved, Then the following rules are applied:

17 Acceptance Criteria Examples As a mobile app user I want to accept the EULA just once when I log into the mobile app so that I’m legally in agreement with the company. Given when a user logins for the first time When they have never accepted the EULA before Then prompt to read the EULA and click Accept or Decline If user clicks Decline Then logout the user and return to login page If user clicks Accept continue on Also check for the version # of the EULA - if later, get text for latest version and display with accept/decline Since more than 1 user can use a device, track if the EULA has been seen by each user on each device

18 Acceptance Criteria Examples As a mobile app user I want to view my current medications so that I can be informed of duplicate therapy conflicts. Group by individual drugs. Sort the ones with problems to the top, then alphabetical order by the "written as" field. Display the "filled as" field also below the "written as" field. Tapping the drug name should take them to the prescription details screen. Select/tap to drop-down the different sections. Lo-fi mockup: [Text block at top indicating what to do] Drug1 Filled as: Drug1a Duplicate Drug 2 Filled as: Drug2a Drug 4 Filled as: Drug4a Drug 2 Filled as: Drug2a Duplicate Drug 1 Drug 4 Duplicate Drug 1

19 Parting words Groom often and with vigor. Don’t get hung up on making a story absolutely perfect. Focus on the conversation. Work to split stories to the smallest consumable portion. Think Asteroids.

20 Thank you!


Download ppt "As an agilist, I want to write great user stories so that... Ryan 08.27.2013 Tampa Bay Agile Meetup."

Similar presentations


Ads by Google