37
Heuristic Evaluation Ananda Gunawardena Carnegie Mellon University Computer Science Department Fall 2008

Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

Heuristic Evaluation

Ananda Gunawardena

Carnegie Mellon UniversityComputer Science Department

Fall 2008

Page 2: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

Background

• Heuristic evaluation is performed early in

the development process to understand user

requirementsrequirements

• Heuristic evaluation addresses usability

issues in the design

• Heuristic evaluation involves small sample

of potential users of the productRef: http://www.useit.com/papers/heuristic/

CMU-15-397

Fall 08

Page 3: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

Nielson Heuristics

1. Visibility of system status

2. Match between system and the real world

3. User control and freedom

4. Consistency and standards4. Consistency and standards

5. Error prevention

6. Recognition vs. recall

7. Flexibility and efficiency of use

8. Aesthetic and minimalist design

9. Error recovery

10. Help and documentation

Page 4: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

H1: Visibility of System Status

searching database for matches

• The system should always keep users informed

about what is going on, through appropriate

feedback within reasonable time.

• Simple and natural dialog

Page 5: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

H2: Match between system and the

real world

• The system should speak the users' language, with words, phrases and concepts familiar to the user, rather than system-oriented terms. Follow real-world conventions, making information appear in a natural and logical order.

• In Mac, drag disk to trash can to eject – bad example

Page 6: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

H3: User Control and Freedom

• Users often choose system functions by mistake and will need

a clearly marked "emergency exit" to leave the unwanted state

without having to go through an extended dialogue. Support

undo and redo.

• Always have more than one choice available

Page 7: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

H4: Consistency and Standards

• Users should not have to wonder whether different words, situations, or actions mean the same thing. Follow platform conventions.

• Use standard conventions like file, edit, view, insert (if applicable) in your toolbars

Page 8: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

H5: Error prevention

• Careful design which prevents a problem from

occurring in the first place

Page 9: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

H6: Recognition rather than

recall

• Make objects, actions, and options visible. The user

should not have to remember information from one

part of the dialogue to another. Instructions for use

of the system should be visible or easily retrievable

whenever appropriate.

Page 10: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

H7: Flexibility and Efficiency of

UseEdit

Cut

Copy

• Accelerators -- unseen by the novice user -- may

often speed up the interaction for the expert user

such that the system can cater to both inexperienced

and experienced users. Allow users to tailor frequent

actions.

Paste

Page 11: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

H8: Aesthetic and Minimalist

design

• Dialogues should not contain information which is irrelevant or

rarely needed. Every extra unit of information in a dialogue

competes with the relevant units of information and diminishes

their relative visibility.

Page 12: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

H9: Help users recognize,

diagnose, and recover from

errors

• Error messages should be expressed in plain

language (no codes), precisely indicate the

problem, and constructively suggest a solution.

Page 13: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

H10: Help and documentation

• Even though it is better if the system can be used without documentation, it may be necessary to provide help and documentation. Any such information should be easy to search, focused on the user's task, list concrete steps to be carried out, and not be too large.

Page 14: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

H5: Error

prevention. If

users presses “No”

by accident, the

picture will be

gone forever!

Must include an

H8: (Good

thing)

Minimalist

design.

H2: (Good thing)

Speaks the user’s

language. “Yes/No”

is better than

“Ok/Cancel”

Must include an

“undo” action.

Page 15: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

Exercises

For each of the following screens, indicate which heuristic is

violated

Use one of the following

Page 16: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

Example

Page 17: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

Example

Page 18: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

Example

Page 19: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

References

• How to conduct a heuristic evaluation

method– http://www.useit.com/papers/heuristic/heuristic_evaluation.html

CMU-15-397

Fall 07

Page 20: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

Designing for a Great Mobile

Experience

CMU-15-397

Fall 08

Experience

Page 21: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

Things to Consider

• Be easy to use and fully functional in the absence

of a keyboard and mouse

• Present information in a way that users can

quickly digest it. Avoid congested screen designs

CMU-15-397

Fall 07

quickly digest it. Avoid congested screen designs

• Be able to launch and run in full screen mode

• Provide exit control when in full screen mode

• Be able to run in portrait and landscape modes

• Ensure that all user interface elements are visible

and unclipped at 800x480

Page 22: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

Things to Consider

• Ensure that dialog box height is less than

480 pixels

• Ensure that UI elements scale to

accommodate range of display sizes and

CMU-15-397

Fall 07

accommodate range of display sizes and

typical display resolutions

• Design the UI to support content

consumption, not content creation

Page 23: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

Optimizing Touch command and

Control• Make touch target at least 1cm x 1 cm

• Space targets to sufficiently ensure an accurate interaction layer

• Ensure that graphics in the target area maintains legibility

• Ensure that targets are not obscured by hand during

CMU-15-397

Fall 07

• Ensure that targets are not obscured by hand during interaction

• Provide larger targets if your application is used in a highly mobile situation

• Group targets by functionality

• Avoid placing targets at the edges of the display

Page 24: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

Designing for keyboard Free

experience

• Provide on-screen alternatives to commonly used keyboard shortcuts such as copy, paste, undo, save and open

• Provide an alternative to cntrl-alt-del

CMU-15-397

Fall 07

• Provide an alternative to cntrl-alt-del

• Where text is needed offer auto complete or quick text

• Explore ways to use alternate input modalities such as speech

Page 25: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

Designing for mouse free scenario

• Touch screen devices typically do not

provide hover-like features

– Do not rely on hover like features for critical

tasks

CMU-15-397

Fall 07

– Consider providing hover feedback with object

focus after an item is tapped

– If pop-ups are provided for hover feedback ,

then close them immediately

Page 26: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

Replacing Right Click and more• Minimize reliance on right click functionality

• Provide alternative ways to access a functionality

that is typically right click

• Use “tapping” as a way to open context menus

• Use alternative methods to scrolling

CMU-15-397

Fall 07

• Use alternative methods to scrolling

• Ensure that drag-and-drop features are clear, quick

and simple and requires no fine motor skills

Page 27: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

Storyboarding

A first step towards making a usable

computer application

Page 28: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

What is storyboarding?

• Storyboarding is when you draw

out each screen, view, or page of

an application.

Page 29: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

Why is storyboarding important?

• Your first shot at planning!

• So everyone can agree what the application will

look like and how it will be structured

• Making a map of the structure will help the team

divide and conquer

Page 30: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

Pages

• Each box represents a screen, and

drawn inside each box is a rough

design of how that screen will

look. Pages

look. Pages

Page 31: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

Navigation

• Arrows drawn between boxes

show how screens are connected

Link between two pages

• Most lines represent links, or

buttons a user clicks on.

• Double-arrowed lines show a

user can go BACK

Page 32: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

More than one path

Page 33: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

Navigation

• What’s wrong with this

storyboard’s navigation?

Start

Page Page

Page

Page

Page 34: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

Navigation

� Missing link to yellow page.

� No way to go BACK

Start

Page Page

� Can a user re-start this

application?

Page

Page

Page 35: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

Navigation

Start

Page Page

Page

Page

Page 36: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

A Photo Annotation System

• Suppose I’d like to develop a mobile application that takes pictures and allow me to annotate and share those pictures

• Here are the things I’d like to have

– Take a picture– Take a picture

– Save a picture

– Remove a picture

– Label/Annotate a picture

– Find a picture

– Send a picture

Page 37: Lecture 03 - Heuristic Evaluationab/15-397F09/lectures/Lecture 03... · 2008. 10. 21. · Background • Heuristic evaluation is performed early in the development process to understand

Organizing the App

• Main Menu– Some graphic

– Take a Picture

– Find a Picture

– Remove a picture

• Take a Picture• Take a Picture– Label, save, retake, do not save

• Find a picture– Type a keyword to search

– Find a picture(s) matching the keyword

– Select the picture• View

• edit the label

• Remove a picture– Find a picture

– Confirm to delete

– Delete the picture