don’t use part of the product q Developers are highly paid q QA takes an unpredictable amount of time q Requirements are misunderstood q Technology is ever changing
by dates The system displays the account report request screen The user selects the report The system displays the report with sort options The user selects sort on date The system sorts the report The system displays the report As an account collections specialist I want to see a report organized So that I can find late or nearly late payments IEEE 830-style Use cases User Story Understanding the why Enhancing innovation
Title 50% Groomed with AC 70% Story Body 25% Groomed again 2 sprints sprint ready Sprint Planned Story Format Title: <some title> Body: As a <role> I want <to do something> So that <value> Acceptance Criteria: -Verify that <situation> -Verify that <situation> -Verify that <situation>
detail, estimates, and order to items in the Product Backlog. This is an ongoing process in which the Product Owner and the Development Team collaborate on the details of Product Backlog items. During Product Backlog refinement, items are reviewed and revised. The Scrum Team decides how and when refinement is done.
4. Major Effort 5. Simple to Complex 6. Variations of Data 7. Data Entry Methods 8. Deferred Performance 9. CRUD 10. Acceptance Criteria 11. SPIKE Story Refinement Patterns
product must satisfy to be accepted by a user or customer. Rule One of a set of explicit or understood regulations or principles governing conduct within a particular activity or sphere. Acceptance criteria = Type of rule
a generalized conclusion • Deductive reasoning moves from generalized principles that are known to be true to a true and specific conclusion. Inductive reasoning is good for examining information closely, looking for hidden relationships, generating tentative hypotheses, and drawing conclusions that are not explicitly stated
drive out the desired behavior of software using conversation, concrete examples and automated tests" Matt Wynne, The Cucumber Book Given, when, then Examples and rules Tools
story details, acceptance criteria, and new stories • Formulation • Using the examples to create a standardized (ubiquitous) language • Automation • Using the ubiquitous language to drive out automated specification verifications (tests)
be solved) serving to illustrate a rule or precept or to act as an exercise in the application of a rule Roughly speaking Rules become acceptance criteria Examples become tests
holder I want to transfer money from my savings account to my checking account So that I can have direct access to my money through checking Acceptance Criteria When transferring money to the checking, the checking will be incremented by the transfer amount and the savings will be decremented by the savings amount
substituted for table values Scenario Outline: Given I have <weight> When I enter <height> Then I will compute <mass> Examples: |weight | height | mass | |120 |100 |200 | |320 |450 |900 | This translates into 2 scenarios in the background