Labs/Ubiquity/Usability/Usability Testing/How To: Difference between revisions

m
 
(15 intermediate revisions by one other user not shown)
Line 1: Line 1:
This is rough "as hell". It is based on ideas for error proofing usability testing (especially for beginners) that are being tried out on another usability study now. It will be updated as that study proceeds and will go through another rewrite after that study is complete. As such it will have major grammatical errors (errors tense, terms will not be consistent, etc ;) due to the content being copied and pasted and generally mangled. In the meantime, please share your links and resources, comment, and contribute. This is a wiki, not a book!
The following is my attempt at saving others with a work-flow and actionable advice on conducting guerrilla usability testing.
 
 
<center>'''Good luck, and Don't Panic!'''</center>


Like paper prototyping, this document is purposefully sloppy to encourage harsh critiques.  '''Please''', iterate, test, and contribute -whatever your level of expertise.


=== Designing the Test ===
=== Designing the Test ===
Line 10: Line 8:




Instead of a single pilot study the testing is broken into multiple rounds thatgrow exponentially and become more refined. Each round goes from test to completed deliverable, after which the facilitator (that's you) evaluates the test, the workflow, and the goals of the test and decides what is worth changing and what is not. This prevents unexpected problems from infecting other test sessions, allows for improvements to the workflow, and caps testing to the minimum number of participants.
Instead of a single pilot study the testing is broken into multiple rounds that grow exponentially and become more refined. Each round goes from test to completed deliverable, after which the facilitator (that's you) evaluates the test, the workflow, and the goals of the test and decides what is worth changing and what is not. This prevents unexpected problems from infecting other test sessions, allows for improvements to the workflow, and caps testing to the minimum number of participants.


The study is designed to have three phases Alpha, Beta, and Gamma. Although presented linearly, jumping around and using Alpha tests during a Gamma phase is a sign of higher intelligence : ) We will walk through an actual study and explain each type of test as we go.
The study is designed to have three phases Alpha, Beta, and Gamma. Although presented linearly, jumping around and using Alpha tests during a Gamma phase is a sign of higher intelligence : ) We will walk through an actual study and explain each type of test as we go.


==<center>Example study: Video Vs. Written Documentation</center>==
==<center>Example study: Video Vs. Written Documentation</center>==
Line 21: Line 18:


=== Alpha Phase ===
=== Alpha Phase ===
(1 test with 1-2 participants ''total'')  
(1 test with 1-2 participants ''max'')  


Alpha tests evaluate:
Alpha tests evaluate:
Line 56: Line 53:


===Gamma Phase===
===Gamma Phase===
(1+ test with 3-6 participants)
(1 or more tests with 3-6 participants each)


The gamma phase is really just a name for when you stop assessing your workflow and testing suite and just rip through test sessions and post production work like a Ninja.
The gamma phase is really just a name for when you stop assessing your workflow and testing suite and just rip through test sessions and post production like a Ninja.
 
Unless you are testing a complex interface (MS Office or an e-commerce website) or you have a demographic quota to fill ''you probably don't need to perform any gamma tests.'' While statistical significance is important the general rule of thumb is to stop testing when you begin to see patterns emerge. When you can sessions become predictable, when you stop finding new errors, etc you have probably run into all the walls users can run into. Stop, fix the product, and start a new test.


Unless you are testing a complex interface (MS Office or an e-commerce website) or you have a demographic quota to fill ''you probably don't need to perform any gamma tests.'' While statistical significance is important the general rule of thumb is to stop testing when you begin to see patterns emerge. When sessions become predictable you have probably run into all the walls users can run into. Stop, fix the product, and start a new test.


==Test Types==
==Test Types==
Line 67: Line 63:
====Exploratory====
====Exploratory====


This is the most commonly used format for Usability testing. It is more accurately defined as a sudo scientific,where interesting results are gained but there is no variable that changes.
This is the most commonly used format for Usability testing. It is more accurately defined as a sudo-scientific,where interesting results are gained but there is no variable that changes.




Line 91: Line 87:
====Paper====
====Paper====


Paper prototyping is the sliced bread of Usability. Sadly, very few practitioners use them. It's best to think of paper prototyping as the step in-between sketching a design and creating a mockup on the computer. It has all the advantages of sketching (cheap, fast to make, easy to change) and helps users open up to criticizing the design.
Paper prototyping is, by far, the most powerful Usability technique. It's best to think of paper prototyping as the step in-between sketching a design and creating a mockup on the computer. It has all the advantages of sketching (cheap, fast to make, easy to change), helps users open up to criticizing the UI, and it's instantly interactive.


Part of the reason paper prototyping isn't used is that people think there must be some magic to it, some step they haven't thought about. The whole thing is silly, draw an interface and ask people to "use it." But it really is that simple.
Part of the reason paper prototyping isn't used is that people think there must be some magic to it, some step they haven't thought about. The whole thing is really as simple as it sounds: draw an interface and ask people to use it.


<video type="youtube" id="GrV2SZuRPv0" width="437" height="315" desc="1x Video [http://www.youtube.com/watch?v=GrV2SZuRPv0 Original Video]" frame="true" position="center"/>
<video type="youtube" id="GrV2SZuRPv0" width="437" height="315" desc=" [http://www.youtube.com/watch?v=GrV2SZuRPv0 Original Video]" frame="true" position="center"/>


The only time that paper prototyping isn't very useful is when the interaction is not restricted or response times are important. If you are trying to understand how users interact with a command line (unrestricted input) and that interaction depends on very fast speeds (like auto-suggest) it may be hard to get good information.
The only time that paper prototyping isn't very useful is when the interaction is unrestricted or response times are important. If you are trying to understand how users interact with a command line (unrestricted input) and that interaction depends on very fast speeds (like auto-suggest) it may be hard to get good information.


And unfortunately, if you have to share your designs to a remote team most people do not give early design prototypes the respect they deserve. And unless you have a touch screen computer, sending the sketches to remote teams can be inconvenient.
Unfortunately, if you have to share your designs to a remote team most people do not give early design prototypes the respect they deserve. Unless you have a touch screen computer, sending the sketches to remote teams can be inconvenient and under-valued.


* UIE has some great great tips on paper prototyping and information on it's so powerful. [http://www.uie.com/browse/paper_prototyping/]
* UIE has some great great tips on paper prototyping and information on it's so powerful. [http://www.uie.com/browse/paper_prototyping/]
Line 107: Line 103:
====Wireframes====
====Wireframes====


Wireframes mockups of varying degrees of functionality that also look good. These are genally used for web posts and pitching ideas.
Wireframes are usually light weight mockups meant for testing layout and specifying features.  They have of varying degrees of functionality and generally are left as bare as possible. These are generally used for web posts and pitching ideas.


In order of least [http://www.urbandictionary.com/define.php?term=PITA PITA] to high PITA.
In order from fastest to slower, also tends to be less interactive more interactive.


* Omnigraffle/Viso
* Diagram programs/[http://www.google.com/url?sa=t&source=web&ct=res&cd=1&url=http%3A%2F%2Fwww.omnigroup.com%2Fapplications%2FOmniGraffle%2F&ei=PCfISafEBpmQsQPLw8mPAQ&usg=AFQjCNFNXMKhiVzPqJe6WRqjeewkyzVqWg&sig2=ttiTyRnmFmgsxLXwLaDO8Q Omnigraffle]/Viso
* Yahoo Wireframes
:* [http://developer.yahoo.com/ypatterns/wireframes/ Yahoo Patterb Library Wireframes]
* Omnigraffle UI
:* [http://graffletopia.com/categories/user-interface Omnigraffle Graffletopia site]
* Raster graphics editors (Photoshop, Gimp, etc)
* Raster graphics editors (Photoshop, Gimp, etc)
* Yahoo Wireframes
:* [http://developer.yahoo.com/ypatterns/wireframes/ Yahoo Patterb Library Wireframes]
* Fireworks, Flash, and other design products that have animation can be used for somewhat interactive prototypes.  
* Fireworks, Flash, and other design products that have animation can be used for somewhat interactive prototypes.  
* Videos?
* [http://www.evolus.vn/Pencil/ Pencil], other Gui Toolkits
* Pencil, other Gui Toolkits


====Full-blown====
====Full-blown====
Web pages are simple, but add some JS and you get a fully interactive prototype.


Web pages are simple to create fully interactive prototypes.
On the desktop side, there are too many GUI IDE's to list here. Of course we like Mozilla's Prism, but we STRONGLY caution against using actual implementations for early stage experimentation. You will get much more done with multiple quick paper or Canvas prototypes prototypes and then move on to a full IDE.
 
On the desktop side, there are too many GUI IDE's to list here. Of course we like Mozilla's Prism, XUL, but we STRONGLY caution that you use these as a last resort for early stage experimentation. You can get more information from multiple quick paper prototypes than all the effort spend on a single throw-away GUI prototype.


==Recruiting & Interacting with participants==
==Recruiting & Interacting with participants==
Recruiting participants should be fun and entertaining, so try and have fun with it : )


Recruiting participants should be fun and entertaining.
=== Choose a place. ===
 
Get the most informal setting you can and don't worry about a usability lab. This is known as in-field testing and it makes people act more naturally. Coffee shops, corporate lunchrooms, or university cafeterias are all great places with plenty of people.
 
Choose a place.
 
Labs skew people's behavior, get the most informal setting you can. This is known as in-field testing and it makes people feel more comfortable. Coffee shops, corporate lunchrooms, or university cafeteria are all great places with plenty of people.
 
 
Choose a person.


=== Choose a person. ===
The best sessions are ones in which no money or good are offered as compensation. If are able to just start up a conversation with someone try recruiting doing just that. If working with a group elect the most social person in your team to be the test facilitator.
The best sessions are ones in which no money or good are offered as compensation. If are able to just start up a conversation with someone try recruiting doing just that. If working with a group elect the most social person in your team to be the test facilitator.


Most won't be comfortable doing "cold-call" recruiting. That's okay, it's more expensive, but still okay.


Most won't be comfortable doing cold-call recruiting. That's okay, more expensive, but still okay.
However you recruit participants, follow these guidelines and you will get much better interactions:
 
 
However you recruit participants follow these guidelines and you will get much better interactions:
 
*Make eye contact and smile.
*Make eye contact and smile.
*Use the person's name when talking to them, "''Heather'', could you do X for me" or "Oh this is so great ''Heather''. This will really help the team."
*Don't call the user a participant or subject in the study, with your co-workers, or in your reports. The term "participant" brings baggage and the users feels that s/he is being tested. They get nervous and act differently than they would if they were using the product in their everyday lives. Instead, refer to researchers as ''facilitators'' and participants are ''users'' or ''testers''.


*Use the person's name when talking to them, "''Heather'', could you do X for me" or "Oh this is so great ''Heather'', it will really help the team."
=== Recruit your army. ===
 
For Beta tests immediate friends and family are off limits, your history and interaction with them skews the test too much. Thankfully, their friends are not. Coworkers, total strangers, everyone else is fair game as long as they fit your target demographic.
*Don't call the user a participant or subject in the study, with your co-workers, or in your reports. The term "participant" brings baggage and the users feels that s/he is being tested. They get nervous and act much differently than they would if they were using the product in their everyday lives. Instead researchers are known as ''facilitators'' and participants are ''users'' or ''testers''. Because, after all, they are the ones testing the product!
 
 
Recruit your army.
 
For Beta tests<link> immediate friends and family are off limits, although their friends are not. Your history and interaction with them skews the test too far. Your friends and family in particular don't want to hurt your feelings.
 
 
If you ''do'' have a budget post on craigslist. A busy cafe or company lunchroom offer the largest pool of potential testers. If that is not an option work whatever social networks you have, be that Facebook, emailing, or just asking around.


A busy cafe or company lunchroom offers the largest pool of potential testers. If that is not an option, work whatever social networks you have, be that Facebook, emailing, or just asking around.


Donuts, company merchandise, etc are cheap ways of paying your participants. Not paying them makes for even better test, but it does require more effort socially. <link>
Donuts, company merchandise, etc are cheap ways of paying your participants. If you ''do'' have a large budget, post an ad on Craigslist.


===Briefing/Consent===
===Briefing/Consent===
If you are going to collect personal information (be that demographic information, contact information, or a video capture) you must get some sort of recorded evidence that they know what is going to happen with their information.


If you are going to collect personal information (be that age, contact info, or a video capture) you must get some sort of recordable evidence that they know what is going to happen with their information. If you are recording the session the easiest thing is for the participant to record their consent on tape. That way user can remain anonymous (their name is not required and can be seperated from the video) but still verifiable (if there is a dispute after the fact you play the recording).
If you are recording the session, the easiest thing is for the participant to record their consent on camera. The user remains anonymous (their name is not required and can be separated from the video) but still verifiable (if there is a dispute after the fact, you play the recording).
 


More important than legal consent is moral consent. If you don't think they understand what they are signing up for don't let them participate. Even if your school or business has a broiler plate legal agreement for them to sign make sure they read a one or two sentence description of what will happen to the data.
More important than legal consent is moral consent. If you don't think they understand what they are signing up for don't let them participate. Even if your school or business has a broiler plate legal agreement for them to sign make sure they read a one or two sentence description of what will happen to the data.


 
In the same vein, copyright can't protect against embarrassing your users. Fair use means that anyone can remix your video and make a parody of your test participant. If you include video in your results, make the video as small as possible, reduce the opacity to 50%, and overlay a product logo for good measure.
In the same vein, copyright can't protect against embarrassing your users. Fair use mean that anyone can remix your video and make a parody of your poor test participant. If you do include video, make the video as small as possible, reduce the opacity to 50%, and overlay a product logo for good measure.
 


== Recording the Session ==
== Recording the Session ==
What you use for recording your session doesn't really matter, but a quick list of stuff we have tried is [[Labs/Ubiquity/Usability/Usability_Testing/How_To/Software | here]].


Basically you need screen and web-cam capture software. What you use doesn't really matter, but a quick list of stuff we have tried is [[Labs/Ubiquity/Usability/Usability_Testing/How_To/Software | here]].
If you are sharing the data publicly (especially personally identifiable information) some sort of consent form is mandatory. An audio or visual consent statement is easier to manage and can't be lost. The standard [http://en.wikipedia.org/wiki/IANAL IANAL] applies, nor has the following been vetted by a real lawyer but you can see [http://www.viddler.com/explore/indolering/videos/7/ examples] from previous testing. This consent process is consistent with other usability and psychological researchers.
 
 
If you are sharing the data publicly (especially personally identifiable information) some sort of consent is a very good idea. While a written consent form an audio or visual consent form is easier to manage and can't be lost as they are embedded in the information itself. The standard [http://en.wikipedia.org/wiki/IANAL IANAL] applies, nor has the following been vetted by a real lawyer but you can see [http://www.viddler.com/explore/indolering/videos/7/ examples] of our consent process from previous testing. This consent process consistent to other Usability professionals and the Psychological research field in general.
 


Taking notes is good, but you will be going over the video again anyway so it's best to just pay attention. [http://silverbackapp.com/ Silverback] has an excellent feature that allows use of the Apple remote to add bookmarks.
Taking notes is good, but you will be going over the video again anyway so it's best to just pay attention. [http://silverbackapp.com/ Silverback] has an excellent feature that allows use of the Apple remote to add bookmarks.


===Debriefing===
===Debriefing===
Thank the person and give them information on where to find out more about the project you are working on.
Thank the person and give them information on where to find out more about the project you are working on.


== Analysis and Sharing of Data ==
== Analysis and Sharing of Data ==
 
Spreadsheets are the easiest, fastest, and most flexible way of tracking your data. After a recording session, immediately watch video and record each error. Doing this immediately cuts down on the tedious work when writing your final report and allows you to immediately compare errors from each session. For future sessions, you will be able to automatically assign a mistake to a specific category, instead of trying to unify all the different sessions at the end.
Spreadsheets are the easiest, fastest, and most flexible way of tracking your data. After a recording session immediately watch video and record each error. Doing this immediately cuts down on the tedious work when writing your final report and allows you to immediately compare errors from each session. In the next session you will be able to automatically assign a mistake to a specific category, instead of trying to unify all the different sessions at the end.
 


=== Local Development Team ===
=== Local Development Team ===
The general rule is that all stakeholders (from programmers, to managers, to Quality Assurance people, and even marketers) are required to sit through at least one live session. During that session have them write down their thoughts and different errors into separate sticky-notes. Once the testing is complete buy some pizza and try grouping the stickies together on a white board and talk over what everyone saw.
The general rule is that all stakeholders (from programmers, to managers, to Quality Assurance people, and even marketers) are required to sit through at least one live session. During that session have them write down their thoughts and different errors into separate sticky-notes. Once the testing is complete buy some pizza and try grouping the stickies together on a white board and talk over what everyone saw.


=== Remote Development Team ===
=== Remote Development Team ===
Contact is especially important if you are working with a remote development team. Blogging, video podcasts, and steaming data analysis are all very important but very hard to balance. Take the path of least resistance to each one.
Contact is especially important if you are working with a remote development team. Blogging, video podcasts, and steaming data analysis are all very important but very hard to balance. Take the path of least resistance to each one.


An incredible Wordpress skin would be great, but for now just download a free one and move on! Don't provide too much analysis, especially this early in. Be a reporter of what is happening and ask for analysis by the team. Good analysis takes a lot of time and also discourages others from analyzing your data and becoming engaged. It's a blog, not a scientific journal.
An incredible Wordpress skin would be great, but for now just download a free one and move on! Don't provide too much analysis, especially this early in. Be a reporter of what is happening and ask for analysis by the team. Good analysis takes a lot of time and also discourages others from analyzing your data and becoming engaged. It's a blog, not a scientific journal.
Line 207: Line 175:


Make your data accessible hosting your spreadsheets on Google Docs, for example, but don't get caught up in having an interface that generates graphs. Your data may look ugly, as long as the delivery mechanism looks okay and your put up a sign that says "This data is raw, ugly, and unfinished. I just threw it up here so you can look at it if you want" people won't judge ''your ability'' to do your job well.
Make your data accessible hosting your spreadsheets on Google Docs, for example, but don't get caught up in having an interface that generates graphs. Your data may look ugly, as long as the delivery mechanism looks okay and your put up a sign that says "This data is raw, ugly, and unfinished. I just threw it up here so you can look at it if you want" people won't judge ''your ability'' to do your job well.


If you have video begin by speeding video by 1.65 (link to study on library data). This is the upper limit on making everything go faster but still legible. Producing video is something we will eventually touch on (when we have a unified post production workflow) but [http://www.getmiro.com/publish/makeinternettv/ Miro] has an awesome multi-platform guide to producing and editing video we couldn't hope to match.
If you have video begin by speeding video by 1.65 (link to study on library data). This is the upper limit on making everything go faster but still legible. Producing video is something we will eventually touch on (when we have a unified post production workflow) but [http://www.getmiro.com/publish/makeinternettv/ Miro] has an awesome multi-platform guide to producing and editing video we couldn't hope to match.


Again, disseminate the video as quickly as you can. If you plan on tagging the video post the video immediately after the session without the tag information and repost it again after it's been tagged.
Again, disseminate the video as quickly as you can. If you plan on tagging the video post the video immediately after the session without the tag information and repost it again after it's been tagged.


Options
==== Video Dissemination Options ====
 
# Upload to [http://www.viddler.com/ Viddler] and assign a programmer to tag at least one session.
# Upload to [http://www.viddler.com/ Viddler] and assign a programmer to tag at least one session.
# Podcasts
# Podcasts
Line 244: Line 209:


Make sure to do this within "the fold" of how your company operates. An internal wiki, filing a word processed report, a presentation, etc.
Make sure to do this within "the fold" of how your company operates. An internal wiki, filing a word processed report, a presentation, etc.


== See Also ==
== See Also ==
2

edits