Identify what the business goal is for building software.
- "Increase repeat sales to existing customers by 50% over the next 12 months."
From the business goal, derive the scope of the feature(s)
- "In order to be able to do direct marketing of products to existing customers, as a marketing manager I want customers to register personal details by join gin a VIP program"
- "In order to entice existing customers to register for the VIP program, as a marketing manager I want the system to offer free delivery on certain items to VIP customers."
- "In order to save money, as an existing customer I want to receive information on available special offers."
With the business owner, product owner, developers, and tester create key examples that describe feature. The below builds off from story #2. In these key examples we are coming to an agreement on what we mean by free delivery.
- "VIP customer with five books in the cart best free delivery"
- "VIP customer with four books in the cart doesn't get free delivery."
Refine the specification using the key examples. This document should be self-explanatory and formatted in a way that will make it easy to automate.
-
"Free delivery is offered to VIP customers once they purchase a certain number of books. Free delivery is not offered to regular customers or CIP customers buying anything other than books."
-
"Given that the minimum number of books to get free delivery is five, then we expect the following:
| Customer Type | Cart Contents | Delivery |
| VIP | 5 books | Free, Standard |
| VIP | 4 books | Standard |
| Regular | 10 books | Standard |
| VIP | 5 Blenders | Standard |
| VIP | 5 Books, 1 Blender | Standard |