When I sat Mike Cohn‘s scrum-master course last year, one of the concepts I learned was the idea of templating all your user stories like this:
As a [type of user], I want to [do something useful with the system], so that [reason / motivation for wanting to do it].
I’ve come to realise that capturing these three perspectives on any deliverable is actually really powerful stuff. When you break it down, what you’re essentially getting is:
- who is the stakeholder who wants this work done?
- what is the goal for the person trying to deliver it?
- why does the stakeholder want it done?
(1) and (3) really help you prioritize: Does this user really need this? If so, do they need it right now, or is there another feature / story we should be delivering first? (3) especially, can really settle disagreements here, or make otherwise opaque choices become more obvious.
The whole story, but especially (2) gives the developer (or whoever is delivering the work) a clear goal to work towards.
I think it’s far too easy to dismiss this format as wordy and unnecessary, as I did it myself at first. Like so many agile practices though, when I force myself to use it in a consistent and disciplined way, it’s then that the power of it really emerges.