Usability in your Product Development

So how does one specify usability requirements in the product development process? Remember, usability is not the same as efficiency! I often see teams try to optimize on efficiency thinking they are getting usability - and are then surprised when they don't get the results on their usability tests that they expected.

I generally define usability requirements as a section in and of itself. I tackle it this way (yes this is high level):

1. Define the profiles of the users that will use the product. This is important. Include your "anti-users," or people that won't use your product.
2. Define the primary functions the user needs to be able to perform.
3. For each profile, define what the usability expectation in. I generally define this as "x% of users will understand how to perform the primary functions the first attempt and within so many seconds; y% within second attempt." Repeat for secondary and tertiary functions. This does not have to be complicated; however, it does have to be thought through.
4. Then prototype and usability test. Ask the participants to perform the primary and secondary functions and measure. While in an ideal world you want to have participants that meet your profiles defined in #1 above, in my experience you don't need a lot of participants to perform a usability test - I've done it with as little as one (because one usability test is infinitely better than zero).
5. Expect to find new, unanticipated findings from your participants! I have yet to do a series of usability tests that did not uncover something I would have never thought of testing for.

It is important, IMHO, to break out into primary and secondary functions. This is where most usability fails, in my experience. I've seen designers design for a secondary experience at the expense of a primary experience. A good product manager will prioritize their features/functions.

It is also important to be reasonable in your usability expectations. Another mistake is to try to have perfect usability for everyone. That won't happen, especially for something that's new-to-the-world (for stuff that's not new-to-the-world the usability has already been done and de facto standard interfaces have already established themselves). Instead, set a goal of "moving the needle" and managing to that.

1 comment:

Ankur said...

quite a nice post and points.