Creating UIs Usability Testing. How to create a UI? Plan TestDesign.

Post on 23-Dec-2015

217 views 1 download

Tags:

transcript

Creating UIs

Usability Testing

How to create a UI?

PlanTestDesign

How to create a UI?

Plan TestDesign

Step 1 Step 3Step 2

How to create a UI?

Plan TestDesign

Step 1 Step 3Step 2

Testing Outline

1. What is usability?2. Usability Factors3. Usability Problems4. Planning for a test5. Carrying out the test6. Usability Report

What is usability?

In general, usability refers to how well users can learn and use a product to achieve their goals and how satisfied they are with that process.

A product is usable if…

1. Quick to use and relatively error free2. Does what the user wants3. Easy to use

Why test for usability?

• Find program bugs• Prove that the system is easy to use• Find problems• Correct problems• Experience the users of the application

When should usability tests happen?

a) During design?

b) Once a functional prototype is made?

c) When the application is complete and ready to ship?

Run usability tests early during design

• Preferably before a lot of programming has been done.

• The point of testing is to correct problems. If we wait until the app is finished, there is no time to fix the problems.

• Allows developers more time to interact and gain experience with the users.

Experiencing the user

• An important side effect of early usability testing is that developers can experience the users and learn new things about them.

• Developers learn from the users:– Their domain knowledge and attitudes– Their IT knowledge and attitudes– More about their domain tasks

Experiencing the user

When developers take the time to experience their users, they can strongly improve their intuition when designing the user interface.

Testing Outline

1. What is usability?2. Usability Factors3. Usability Problems4. Planning for a test5. Carrying out the test6. Usability Report

1. Fit for use. The system can support the tasks that the user has in real life.

2. Ease of learning. How easy is the system to learn for various groups of users?

3. Task efficiency. How efficient is it for the frequent user?

6 factors for usability

4. Ease of remembering. How easy is it to remember for the occasional user?

5. Subjective satisfaction. How satisfied is the user with the system.

6. Understandability. How easy is it to understand what the system does?

6 factors for usability

6 factors for usability

• It is impossible to score high in all 6 factors; therefore, it is necessary to specify the level needed for each factor.

• Each application has different types of goals and should place emphasis on different types of usability factors.

Testing Outline

1. What is usability?2. Usability Factors3. Usability Problems4. Planning for a test5. Carrying out the test6. Usability Report

Identifying Usability Problems

• A usability problem is anything that hampers the user.

• It is important to find usability problems in order to correct them and make the application more usable.

Classifying Usability Problems

• One method of classifying problems is by their severity.

• By classifying problems, we can identify which problems need to be fixed sooner than others.

Problem severity

• Missing functionality or bug – The system cannot support the user’s task.

• Task failure – The user cannot complete the task on his own or they erroneously believed they completed it.

Problem severity

• Annoying – The user complains that the system is annoying or cumbersome; or the designer observes that the user doesn’t work in the optimal way.

• Medium problem – The user finds the solution after lengthy attempts.

• Minor problem – The user finds the solution after a few short attempts

A problem can have multiple severities

After leaving a webpage, it doesn’t remember who I am so I have to re-enter my user name the next time I visit it.

• The webpage is missing functionality to remember users between visits and that is annoying to the user.

• Multiple severities for one problem, might make it more important to fix.

Benefits of classifying problems

• Designers, developers, managers, etc. can identify which problems need to be fixed sooner than others.

Usability Problem Examples

1. The user cannot figure out how to start the search. The screen says that they should use F10, but for some reason they don’t see it until they try several other ways.

2. The user believes that they have completed the task and that the result is saved, but actually they should have pressed Update before closing the window.Classify by Severity:

Missing Functionality, Task Failure, Annoying, Medium, or Minor

Usability Problem Examples

3. The user cannot figure out which discount code to give the customer, although they know which field to use.

4. The user says that it is completely crazy having to go through six screens in order to fill in ten fields.

5. The user wants to print out a list of discount codes. After many failed attempt, they email support and figure out that they system cannot do that.

Classify by Severity:Missing Functionality, Task Failure, Annoying, Medium, or Minor

Testing Outline

1. What is usability?2. Usability Factors3. Usability Problems4. Planning for a test5. Carrying out the test6. Usability Report

Planning the test

a. Picking a type of usability testb. Deciding how many users we need to testc. Deciding which users to testd. Finding test taskse. Choosing roles for the test teamf. Deciding how to measure task efficiency

Types of Usability Testing

i. Observe onlyii. Think aloudiii. Cooperationiv. Hallway Testingv. Opinion Pollvi. Heuristic Evaluations

Observe Only

• Let the user work on their own while we observe what they are doing.

Think aloud

• Ask the user to think aloud and explain what they are doing and why.

• Have users explain situations when they get stuck.

• Question the user’s intent in situations where you have become confused with what they are doing.

Cooperation

• Ask two test users to work together on a task. Encourage them to discuss what they are doing and how they might complete the task at hand.

Hallway Testing

• Grab the next person that passes you in the hallway and force them to test the new code/prototype that you made.

• The basic idea is to show simple screens of your proposed design to anyone other than designers or engineers working on the product.

Hallway Testing

• Particularly effective in early stages of a new design when designers are looking for “brick walls.”

• Very cheap to do

Opinion Polls

• Ask a number of users to complete a questionnaire.

• Typically uses a Likert scale– Strongly disagree, disagree, neutral, agree, strongly agree

Opinion Polls

• Some specialists consider opinion polls the best measure of usability

• Give consistent results from user to user

• Hard to perform test during development. Often get better results after application is finished.

Heuristic Evaluation

• Hire a usability specialist to look at your design/prototype/system and point out problems.

• Expensive to perform

• Helpful for finding missing functionality

• Still require usability testing to determine ease of use

Planning the test

a. Picking a type of usability testb. Deciding how many users we need to testc. Deciding which users to testd. Finding test taskse. Choosing roles for the test teamf. Deciding how to measure task efficiency

How many users do we need?

• Ideally you want 5 users

• If you can’t find/afford 5 users, 3 will work

• Whatever you do, don’t settle for ZERO!

How many users do we need?

• Don’t spend all your resources on one testing session with 15 users to discover all possible usability problems.

• Instead, have 3 different sets of tests that each have 5 users.

Planning the test

a. Picking a type of usability testb. Deciding how many users we need to testc. Deciding which users to testd. Finding test taskse. Choosing roles for the test teamf. Deciding how to measure task efficiency

Which users should we pick?

• Don’t use colleagues or people working on your project.

• Look for users that are in the weaker end of their user group.

• Avoid strong users or IT geeks that might be able to guess their way around problems based off prior experience.

Planning the test

a. Picking a type of usability testb. Deciding how many users we need to testc. Deciding which users to testd. Finding test taskse. Choosing roles for the test teamf. Deciding how to measure task efficiency

Finding test tasks

• It is important to find good test tasks in order to find all usability problems.

• Different kinds of applications will have different test tasks

Test tasks for professional use

• Most professional apps are developed to help users do their tasks better.

• Study the apps supported tasks to create a list of tasks to test.

Test tasks for web sites

• Websites can be used to attract customers and inform them about the website’s company.

• In addition to this, some websites support actual tasks (buying products, reviewing bills).

Test tasks for web sites

Here are some sources for identifying web site test tasks:

1. Expectation oriented – Given a small product description, what would a user expect to see when visiting the product’s website.

Expectation Oriented

Questions to ask before showing the website– What type of information does a user expect to find?– What services should be offered?

Questions to ask after showing the website– Did the user find all necessary information and services?– Was you expectation met?– What is your impression of the company after seeing

the website?

Test tasks for web sites

2. Business-oriented - What is the company’s goal with the web site? What do they expect that the customer/user would do?

– What are the prices for the services? – Where is the closest shop?– How to call them on the phone?

Test tasks for web sites

3. Label oriented - Do users understand the terminology/labels your website is using?

– The site has a link labeled ‘staff.’ Where do you

think that would take you?

Test tasks for web sites

5. Structure-oriented – Do users have a clear sense of where they are in the website / service process?

– How many screens do you think are left before you have completed what you do?

– Where will the system take you afterwards? – How could you cancel what you are doing?

Test tasks for web sites

6. Search-test: Does the website offer the ability to search and find information, a FAQ section, etc?

– Find out whether the site explains about hazards when using the product.

Planning the test

a. Picking a type of usability testb. Deciding how many users we need to testc. Deciding which users to testd. Finding test taskse. Choosing roles for the test teamf. Deciding how to measure task efficiency

Defining roles in the test team

• Facilitator – the leader of the test.– Has direct contact with the user.– Administers the test – Asks the user to think aloud or explain what they are thinking.

• Computer – used for paper prototypes– Simulates what the computer does– Changes screens/UI– Writes the computer’s reply, etc.

• Log keeper – logs the following:– where the user encountered problems– what the user might believe about the system

Planning the test

a. Picking a type of usability testb. Deciding how many users we need to testc. Deciding which users to testd. Finding test taskse. Choosing roles for the test teamf. Deciding how to measure task efficiency

Measuring task efficiency

In addition to measuring task efficiency based off usability problems the user encountered, you can measure:

1. Task time – how long it takes a user to complete a task.

2. Score for understanding – score how well a user’s mental model matches the conceptual model.

3. Opinion Poll – With opinion poll testing, measure how many likes vs. dislikes there are.

Usability Test Checklist

• We have chosen a specific test to administer• We have 3-5 users (ideally not super users)• We have defined the roles within our test

team• We have found test tasks which fully explore

our application• We have decided how to measure task

efficiency

Testing Outline

1. What is usability?2. Usability Factors3. Usability Problems4. Planning for a test5. Carrying out the test6. Usability Report

Before administering the usability test

• Explain the purpose of the test to the user:– We want to find out where the system is hard to understand or

inconvenient. We know the system too well, so we cannot see it ourselves. We need your help. If you have problems with the system, it is the system’s fault - not yours.

• Make the user feel comfortable (some people might be nervous).

Administering test

• Give the users one task at a time

• Observe how the user completes the task, especially when they encounter problems

• Wait until the user is adequately stuck before giving them a hint.– Mark the task as a usability problem and classify it as a task

failure

• Repeat until you’re finished

After the test, debrief the user

• Ask if the user likes the system

• Ask if they understood what was going on

• Determine if the user thinks the application is fit for use

• Find out if their mental model matches the conceptual model.

Testing Outline

1. What is usability?2. Usability Factors3. Usability Problems4. Planning for a test5. Carrying out the test6. Usability Report

After completing all usability tests, create a report containing:

• Consolidated and concise information recorded from the logs.

• All usability problem encountered and their classification (Bug, task failure, annoying, medium, minor).

• A prioritized list of problems that need to be fixed.

Usability Report

After Usability Testing

1. If you’re test went horribly, go back to the planning stage and get to know your users better and understand their tasks more efficiently.

2. Go back to the design phase and rethink concepts that didn’t work with the user.

a) Fix the O/A Matrix, fix/redo paper prototype.

3. Test again after fixing problems.

Fix the critical problems first

• Fix bugs, task failures, and annoying tasks first.

Usability pays in many ways

• Users save time• More people can use the system• People can handle many computer systems

and don’t have to specialize in a single system• More people will like your products• Your product will make more money!!!