Embedded user feedback loops
How often should we get feedback from the user/customer?
In too many projects user feedback is something that is "nice to have", or collected at the end of the sprint from project stakeholders who may not even speak to the customers/users.
The lack of feedback means we walk a precarious tight rope of creating something customers/users do not want and may not even get used.
What are embedded user feedback loops?
An embedded user feedback loop looks at collecting feedback data in a real-time (usually in an automated way using software). This data is analysed and used to help prioritise functionality in the backlog that enhances the value of the product.
What does this mean… when you are designing and developing your product/feature, build in embedded user feedback loops to provide valuable feedback (in real time) directly into the development environment to facilitate rapid iteration and greatly reduces the risk mentioned earlier.
Why it is important and useful?
1st principle of the Agile Manifesto:
“Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.”
Getting the feedback directly to your team means you can be more responsive to your customer/users.
Below is a relevant example from Dr. Jeff Sutherland, the co-founder of Scrum:
In the Korean war the Soviet-made planes were faster, more manoeuvrable, and more technologically advanced. But, according to most accounts, American pilots were able to hold their own and win most of the dogfights they were in. Why was this? American pilots had the ability to see better and respond more quickly than their enemies. Their cockpits had fewer blind spots due to their bubble design (still used today) and their controls were fully hydraulic. They could observe more and act faster.
For further details see Scrum and Fighter Pilots
How is this done?
There are two primary ways to get end-user feedback to the product/development team?
Reactive - manage the customer reactions only after a problem has occurred (e.g. via customer complaint email/form)
Proactive – interacts with the customer before, during, and after problems occur.
In my experience, too many organisations rely only on reactive end-user feedback. The business would come storming in mid-sprint with some damning customer feedback and new urgent requirements. The team would constantly be putting out fires, and all the unplanned work meant they were constantly behind in their project milestones/goals.
On one such team I managed to convince the product owner to make an investment in building automation to capture proactive user feedback. We added a story dedicated to creating a user feedback tab on the web form enhancements the team were building. The feedback tab would pop-up when new features (created during the sprint) were triggered. It captured simply ratings for user experience and prompted the user to add comments (similar to the following example).
The feedback data is instantly sent back to the development team
Customer issues were dealt with earlier or prevented altogether
The feedback tab was designed to be reusable on all page enhancements
The team could target user feedback on specific changes/new features from sprint
Other examples of proactive user feedback loops include:
What do you think?
What things have you experienced? Any recommendation?