User Stories – The Confusion Continues
If you spend any time Google’ing “Agile User Stories” your soon come around the almost default template:
As a <type of user>, I want <some goal> so that <some reason>.
Unfortunately, there appears to be still some confusion by teams around what the different is between and Epic and a User Story – so again I refer readers to Mike Cohn write-up. Agile 101 has a diagram that helps clarify the different story types. The nice thing about Agile 101′s diagram is that it includes Tests, which are often missed in various blogs when stories are discussed :(
Which leads us to acceptance criteria/testing. Unfortunately, there is further confusion here by teams. First, there is the question of what is the difference between criteria and test? Then there’s the question of what should be written in a criteria/test. In my view acceptance criteria are at a high level than acceptance tests. This is similar to the Epic and User story difference. I see acceptance criteria mapping to Scenario’s (from a BDD perspective), whereas an acceptance test would map to a GIVEN-WHEN-THEN (behavior).
I agree with Dan’s view that behavior is a far better word than test. The word ‘Behavior’ provides far more context and less ambiguity than the word “test“, and leads to more focused thought when write the GIVEN-WHEN-THEN (effectively Pre-Condition-Action-Post-Condition).
So why are I writing this posting on user stories, when I’ve written about user stories before? Well, primarily its because the few paragraphs above do improve the clarity and aid coaching to teams attempting to continue to strive for improvements in their agile’ness. Further, as per the title of this posting, there is still considerable confusion in my view from teams who think they are following agile, when in fact they are not. If team could only work from an improved backlog, with less ambiguity, then in my view they avoid a number of mid iteration/sprint issues which generate frustration within the team, and lead to late nights and long hours.
Finally, I think there is still more required by both project managers, user experience and developers to embrace the whole agile process, other than just assume that since their on a n week sprint, with a game planning meeting, they are agile.