Trust but Verify – Measuring Value with Agile
In my last article, I talked about how trust is the secret ingredient to high-performing Agile teams.
Imagine you spent hours lovingly shopping for, cooking and presenting a delicious meal — only to discover that your guest was allergic to its ingredients.
That is the cooking equivalent of a world without usability testing. It’s not a world you want to live in.
Sometimes during project scoping and planning at Nexient, we run into confusion about the difference between usability and user acceptance testing (UAT).
It’s easy to understand the confusion: at a basic level, both involve getting feedback from real users to create a better product. But they happen at opposite stages of development and involve very different methodologies and objectives.
Here’s a double-click:
Software quality is an iterative process. Developers create unit tests to ensure that software will perform as expected even before they write a line of code. Quality engineers create a test plan to ensure that both automated and manual tests validate as much of the code in as many scenarios as possible.
UAT represents the very last mile of quality before release. It’s a final check to ensure that the product works as designed, in the environment where it will really be used. The testing feedback comes from real users, and not just members of the product team.
UAT can uncover issues such as:
UAT exists to answer the question: will this work as we expected it to?
If UAT represents the last mile of quality, you can think of usability testing as the first — at least as far as user experience is concerned.
Usability analysts typically share sample pages or screens with users early in development— often before coding starts, when it’s infinitely less expensive to make changes. Analysts will spend a lot of time observing, and ask many more questions than in UAT. It’s advisable to repeat usability testing throughout development.
Usability testing helps uncover issues such as:
Usability testing exists to answer the question: are we building the right thing, in a way that’s pleasing and intuitive for the user?
UX teams use a combination of observation and questioning to understand how users:
At Nexient, we recommend incorporating usability into a project’s sprint cycle, allowing real users to interact with early concepts, while the rest of the team focuses on other areas of development. The agile development process allows the team to iterate on a design, and to incorporate their findings into the product backlog for development in future sprints.
Insufficient usability testing (or usability testing conducted too late in the process) runs the risk of developing a functionally excellent product that people don’t want to or cannot use. It means spending a lot of time and money developing a solution before you truly understand the problem.
Together usability and user acceptance testing pair well, ensuring that your product is appetizing for all.