Tuesday, May 6, 2008

Mobile Interactive Design Heuristics

System Status Feedback
The system should always keep users informed about what is going on, through
appropriate feedback within a reasonable time.

Speak the User’s Language
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. Use
names and jargon specific to the brand/sport/interest that the application is
serving.

Easy to Escape
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. Incorporate a way to go “Home”
easily.

Consistency and Standards
Users should not have to wonder whether different words, situations, or actions
mean the same thing. Follow platform and brand/sport/interest
conventions/jargon.

Error Prevention
Even better than good error messages is a careful design which prevents a
problem from occurring in the first place.

Recognition not Recall
Make objects, actions, and options visible. The user should not have to
remember information from one part of the system to another. Instructions for
use of the system should be visible or easily retrievable whenever appropriate.

Flexibility and Efficiency of Use
Advanced features should be optional and useful for speeding up usage and/or
creating a greater experience. Applications should support learning by the
advanced user and immediate use by the novice.

Aesthetic and Minimalist Design
Do not include irrelevant or edge-case information. Every extra unit of
information on a screen competes with the relevant units of information and
diminishes their relative visibility.

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. It is useful to identify
which errors are due to a network problem (correctable by perhaps moving to a
new location or trying again later) from those that are software related or server
related.

Support
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. At a minimum, there needs to be a phone number and
a time when the user can call and speak directly with a human about their
problem (call or e-mail support).

Breadth not Depth
Users understand broader, shallow information sets better than narrow deep
ones. Users also find resources faster in broader, shallow information sets than
in narrow, deep ones. This is even more apparent with small screens.
(Kiger, 1984; Jacko & Slavendy, 1996; Zaphiris & Mtei, 1997)

Streamlined Feature Set
Mobile applications work best when addressing a focused need/desire. Browsing
is difficult on the small screen, so all features not essential to the experience and
key purpose of the application should be stripped out. The tendency to add more
and more features/content should be avoided. A sharpshooter approach with a
rifle than one of a shotgun should be the approach. Identify the specific, core
requirement the application must address and design to that.

Interactive & Real-Time
To the degree that all other heuristics can be followed, every application has to
allow the user to interact with real-time information and other users

No comments: