Backlog Story Checklist

I have found that the quality of the stories on the backlog are important in Scrum and Kanban. When the process isn't working well the root cause is often that the stories are not well defined, too large or describing something other than a piece of functionality that is valuable to a user.

Here are a few items that I've found to be useful in the past:

  1. Is it user facing, and not written in terms of implementation detail? Consider expressing it in the pattern 'AS A _____ I WANT TO ___ SO THAT ___.' The story should answer all three of those blanks: Who? What? Why?

  2. Does it identify specific work to be done?

  3. Does it have an estimate?

  4. If it relates to a bug, include the bug reference number. If it describes a bug but it isn't in Jira (other bug tracking tools are available) then create an issue for it. Ensure that the bug includes:

  5. Has it been reproduced in house?

  6. The name of the test case (if any) that fails. Is the test case automated?

  7. Are there success criteria?

  8. Could it harmlessly be split into two stories? If so, split it: smaller stories are better.

  9. Does it produce log information for support? If so, run it past them. More generally: run through the story with any people outside the team who may care about it.

  10. Run the story past the team who will be implementing it.

  11. How will we know we are succeeding at the underlying business goal? For example: 'Because 50% of the people evaluating will successfully use the remote installer'

  12. How will customers find this feature?

  13. Are all the nouns in the story well defined? Not '...I can view the details of my accounts.' Which details? What makes an account 'mine'? How fresh is the data?

  14. In the case of services (Web pages, APIs etc), how reliable should it be? How fast should responses come back?

  15. What are the size limits? How big an image can be uploaded? How many accounts can a user create? In the case of a multi-tenant service these limits should be enforced, but a standalone application can usually skip hard limits and accept reduced performance. Should gcc be able to compile a 10GB source file? Someone has to decide.