Equal to the importance of “Definition of Done” comes the “Definition of Ready”. On one hand we know when we are done, but we also need to know when we are “ready”.
A “ready” item should be clear, feasible and testable. A story is clear if all Scrum team members have a shared understanding of what it means. Collaboratively writing user stories, and adding acceptance criteria to the high-priority ones facilitates clarity.
An item is testable if there is an effective way to determine if the functionality works as expected. Acceptance criteria ensure that each story can be tested.
A story is feasible if it can be completed in one sprint, according to the definition of done. This implies two things: The item must be small enough, and it must not be too complex. I prefer to work with stories that can be implemented and tested within a few days, as this allows the product owner to provide feedback on the software during the sprint.
Ready stories are the output of the product backlog grooming work. To put it differently, your grooming activities should result in ready stories. The best way to ensure that the high-priority product backlog items are ready is to work on the backlog together with the development team: The team members are the readers and consumers of the stories – they turn them into working, tested, and documented software.