PMP Q#11 – What is an INVEST Story
Q11. The project manager is using the INVEST method to check the quality of three stories in the product backlog:
Story 1: As a user, I want to be able to select the coming Sunday using a calendar
Story 2: As a frequent traveller, I want to see my reward points balance to plan the usage.
Story 3: As a travel agent, I want to see bookings done today to project the revenue for the day.
What is the evaluation result for these stories?
A. Stories 1 and 2 are INVEST
B. Stories 2 and 3 are INVEST
C. Stories 1 and 3 are INVEST
D. All stories are INVEST
What makes a good user story? A good user story is INVEST; it is an acronym to define a checklist – To see if a user story is a GOOD user story to go in an iteration.
Independent – I stand for Independent means-
The story should be as far as possible independent. And can be evaluated end to end by looking at this user story. Sometimes you may not have an Independent User Story, but you should always aspire to have one.
Negotiable: N stands for Negotiable, indicates –
User stories are not written contact or requirements. User stories are negotiable even during their execution. You can add or remove acceptance criteria whenever you discover new information. It is never late. You should be able to talk about it all the time.
Valuable: V stands for Valuable. A user story should be valuable to your user or its consumer.
Estimable: E stands for Estimable. Team members should be able to estimate a user story to a good approximation.
Small: S stands for Small. User stories should be rightly sized –
Too large or too small cannot be used for planning. Also, each team has its definition of small. The definition of small means it should fit in a given iteration.
Testable: T stands for Testable. A well-refined user story with associated acceptance criteria and objective terms make it testable.
Let’s see user stories one by one –
Story 1: As a user, I want to be able to select the coming Sunday using a calendar
This user story is showing some gaps –
A good user story has a specific user role, like a travel agent, Jobseeker, Employer, etc. The above user story might be small but did not mention – who the user is. How is adding value to the user?
Also, this user story could be Independent or not because you might be selecting the calendar to get something done. It’s not like you select a calendar on Sunday, and something happens.
It is not an INVEST user story.
Story 2: As a frequent traveller, I want to see my reward points balance to plan the usage.
Following are the observations for this user story –
- It explains – A frequent traveller (User) wants to see reward points to plan usage. (value). It means this user story clarifies – who is the user? And what value does this user get?
- It is a small requirement, but it is not easy to predict by looking at this particular user story.
- It looks to be a well-testable user story because if you have this feature done –
You should be able to test – Can I see reward plan points on my dashboard?
In summary, this user story looks good and has INVEST property.
Story 3: As a travel agent, I want to see bookings done today to project the revenue for the day.
In this user story – A frequent agent (User) wants to see bookings to project revenue (value). It could be like a report to project the revenue for the day. It looks like an INVEST user story that is independent, small, estimable, and testable.
User stories 2 and 3 are good. You may only partially agree to evaluate their INVEST property, but good relative to whatever options are available. You can’t select option D as user story 1 does not show INVEST property. Wherever user story 1 is there, you must remove that option. That’s why you get the option B as a good option for this question – Stories 2 and 3 are INVEST.