Application Development Blog Posts
Learn and share on deeper, cross technology development topics such as integration and connectivity, automation, cloud extensibility, developing at scale, and security.
Showing results for 
Search instead for 
Did you mean: 
0 Kudos

In this post I am going to dive into Usability testing.  This post is aimed at towards an introduction to usability testing and is not meant to be a full on how to (note to self write another series on usability testing alone).  Ideally we will have created a high fidelity prototype of our design using Axure or some other prototyping tool.  While you can directly code a prototype I would say 95% of the time Axure (or your preferred prototyping tool) will be quicker to build especially when it comes to making changes.

Usability testing is a method by which we test users to see if our product functions for them.  During a test we will have a list of tasks for the user/subject to complete while observers watch, take notes, and listen.  According to Jared Spool (prominent UX research and lecturer) and UIE most failed designs are caused by a lack of information.  We conduct these test to gather information on our designs.

Usability testing should be done with specific goals in mind.  These goals should be directly reflective of the goals for the entire project that you set at the beginning of the project.  For instance if you creating more orders is the goal of the project it should be easy for the test user to create an order.  After testing you should be able to reasonably conclude if you design is going to meet the goals of the project.  Here is a quick very high level run down of the steps involved when conducting a usability test:

1.) Script/Planning - Develop a script for your test.  These script should have an introduction, a quick think aloud explanation, tests, and a conclusion.  Remember write your script around the activities you would like to test not just the entire system.   Also note that we what to not only see everything the user does but we would like to hear what they are thinking for this we can use the think aloud protocol.  We ask the test subject to act as if they have no inner monologue.  Here is a great article explaining think aloud protocol.  I find that having the user practice think aloud with a piece of candy tends to beneficial to both introduce the subject to thinking aloud and helping them let down their guard and be more open.

2.) Logistics - Determine how many users you are going to test.  Where are they coming from? Off-site? On-Site? Are you going to compensate them?  Nail down all the logistics of the test well ahead time.  Make sure to send reminders to your test users at least several weeks in advance.  Determine if you would like to use Morae or another piece of software to record the test.  Who will be conducting and observing the test.  Also make sure you get users that are in your target user group.

3.) Conduct the test - Conduct the test. Make sure to remind the user nothing they can do is wrong!  Also remember that they might have difficulty completing a task, let them struggle a bit and ask them what they are looking for.  This will give you vital information into solving the issue.  However you must walk a fine line between letting them struggle and getting frustrated don't be afraid to show the user where something is at if you notice they are getting frustrated.

4.) Analyze - After the test analyze your results.  How long did it take to complete tasks?  Was the user frustrated?  What worked what didn't work?  Here is a good article about usability test reports.  You can use this analysis to help you decide what the next steps should be.  Was the test successful?  Should we move forward or were their issue that we need to address before moving forward?

Bottom line usability testing is a very vital tool/method that can save money.  Using usability testing we can prove with a high degree of certainty that our design will meet the goals of the project.  Why spend a lot of money building a piece of functionality and then testing it if we can test it before using high fidelity prototypes built with Axure or some other tool.  Now I am not saying we can not test already built pieces of functionality.  Testing already built functionality will give us great insights into the pain points of our users.

Finally, if you are Jared Spool reading this I love the UIE blog and podcast UIE Brain Sparks.

Links to usability testing resources

Great Intro to usability testing

Planning a usability test

Comparison of Usability Testing Tools

Stay tuned for Part 6... Interaction Design Laws (well sorta laws)

Part 1, Part 2, Part 3, Part 4