INVEST
How do we know if a Product Backlog Item (PBI) is of a good quality? We need to make sure it’s not too large to be implemented in a Sprint and that it can be tested in order to say that it’s “Done”.
To help us ensure a PBI is of good quality, we can use INVEST:
Independant – the PBI should be self-contained and not depend on other PBIs.
Negotiable – the PBI is not an explicit contract and should be open for discussion.
Valuable – it must deliver some form of value to the business
Estimable – the development team must be able to estimate how much effort it will take to implement the PBI.
Small – the PBI must fit within a Sprint.
Testable – we must be able to define tests/acceptance criteria for the PBI so that we know when it is Done.
Acceptance criteria
Acceptance criteria are used to define when a task is completed. They allow you to meet the Testable aspect of user stories when using INVEST.
They can cover both functional and non-functional criteria.
Example Acceptance Criteria
If we take the following as our user story:
“As a registered user, I want to book onto a training course of my choice.”
Some possible acceptance criteria could be:
- Send confirmation email to user when booking is saved
- Display correctly on PC, tablet and mobile phone.
- The form cannot be submitted without entering all required data.
Acceptance criteria are specific to a user story, while the Definition of Done covers all stories.
Duncan Halley is a certified Scrum Master (PSM I). You can read his blog here.
Follow him on Twitter: @duncanhalley