Hi Bernard.
Starting again is probably counter productive but, from the looks of things, your current stories are too big to work on (creating an order could be weeks of work, I want my stories to be in the order of a couple of days of effort) and pretty badly written.
I'd start by rewriting your existing stories so that they make sense and correctly caupure the what and the why of the feature. In your example, the administrator doesn't want to create an order so that they capture customer details, if anything, they want to capture details so that they can create an order. (that is unless you're sending free products with the intent of getting market data in which case capture of data is indeed the 'why'). You might find it useful to flip the story statements to make the value more implicit. For example:
- In order to create a customer order
- As an administrator
- I want to be able to record a customers name, address and the products they want
Once you have rewritten your stories to be more meaningful, take the next couple you plan to work on and figure out how they can be split up to make them a reasonable size to work on. In your example, you already identify a few possibilities for doing this.
Finally, for what you think might be the next couple of iterationsworth of stories, write acceptance criteria for each of the stories and get the developers to indicate whether they're small enough to be completed in a couple of days. If not, break them smaller until they are.
(p.s. why is it the admin creating orders and not a sales person or, in the case of a web app, the customer?)
For buy two get one free, an example story might be:
- In order to pay less for products
- As a customer
- I want one product free when I buy three items in a 'buy two get one free' promotion
Acceptance criteria might be along the lines of:
Given oranges (£0.50) and apples (£0.30) are part of a buy two get one free package, when I add two oranges and an apple to my basket, the total price is shown as £1.00 and a discount line shows I have saved £0.30
Given oranges (£0.50) and apples (£0.30) are part of a buy two get one free package and pears (£0.40) are not part of the same package, when I add an apple, an orange and a pear to my basket, the price is shown as £1.20 and no discount is indicated
I'd have separate stories for setting what items are valid together as an admin user.