The purpose of backlog refinement (grooming) is to make improvements to the product backlog. Though there is no official ceremony detailed in the Scrum Guide, the activity of refining the Backlog is.
Backlog Refinement is a collaborative effort involving:
Before development of a user story in the current sprint (iteration), generally sometime during the previous 1 or 2 sprints, the team sits down to discuss the upcoming work. Do not wait too late to add details, because the delay will slow the team down. Do not refine your stories too far in advance, because the details might get stale. Depending on the delivery rate of your teams, you should be meeting once or twice a week to review the backlog.
We need to ensure:
The product backlog can address anything deemed valuable by the Product Owner Team. For the purpose of sprint planning, when using Scrum as the delivery framework, product backlog items must be small enough to be completed and accepted during the sprint and can be verified that they were implemented to the satisfaction of the Product Owner team.
Backlog items must be completed in a single sprint or split into multiple user stories. While refining, give stories an initial estimate to see if they are small enough. If not, split them. The best way to split product backlog items is by value and not by process.
All stories require acceptance criteria. Without it, you can not define the boundaries of a user story and confirm when a story is done and working as intended. Ensure acceptance criteria is testable. This is what your testers should be writing tests against.
Ensure the user story format is consistent, INVEST criteria is being met, and is written from a business not technical perspective. Know who the customer is. It may not be an end user. Rather, the story may be for something like a service, to be consumed by another team.
Image Credit: PictofigoFollow @kelly_waters