Having smaller user stories is good: reducing batch size is good!

But how to get your user stories “smaller”?

Mike Cohn uses SPIDR strategy, splitting Stories:

S  – with Spikes
P  – along Paths
I   – by Interfaces
D  – by Data
R  – by Rules
From my experience, splitting user stories by rules, by BIZ rules, seems very effective and quite simple.
Why?

When defining a user story, you need “confirmation” :The best supplements are examples; the best examples are executable, We call these examples confirmation.

So, when asking your PO about examples, you want to know the happy path(s), the exceptions (to the rules?). Simple questions to ask your PO giving you the rules around the user stories… So here it is: you can implement each business rule as a user story. An example:

As a school secretary, I want to register a new pupil so I can enrol them in the school

Question and answer: for which school year? this year or next year.

  1. As a school secretary, I want to register a new pupil so I can enrol them in the school this year
  2. As a school secretary, I want to register a new pupil so I can enrol them in the school for next year

Question and answer: can you register a pupil the last day of the current school year? No, only until 30th April. That’s the law!

1. As a school secretary, I want to register a new pupil so I can enrol them in the school this year
Rules to add as user stories:
1.1. As a school secretary, I cannot register a new pupil for the current school year when the date is beyond 30th April
1.2. As a school secretary, I cannot register a new pupil when the pupil is also registered in the school of the region
etc…
Now, you can see the rules can be written with BDD format too. And a BDD “test”, i.e. an example captured during a conversation is a user story: card, conversation, confirmation:
Given a new pupil arrives at school on 1st May
When the secretary registers the pupil for this school year
Then the secretary is informed “pupils cannot be registered in the school for this year after 30th April by Law”
So all I am doing is turning examples of scenarios (business rules) into small user stories. Simple and effective.
Advertisements