Heuristic evaluations involve systematically inspecting a user-interface and judging its compliance with a set of heuristics. This method is a fast and effective way to identify usability flaws, however, the widely used heuristics put forth by Jakob Nielsen were originally created for desktop software. As a result the language and examples are not always appropriate for other platforms. Over the years, researchers and practitioners have evolved and expanded the heuristics to meet their needs. While there are many noteworthy efforts, nearly all of them were created before the iPhone was developed. With that in mind, I attempted to adapt Nielsen’s heuristics for the iPhone. I’m certain there are many more useful examples, so I’ll edit this post as I–and my readers–discover more new and exciting apps. Interested in learning more about heuristic evaluations? Check out Useit.com’s heuristic evaluation overview.
1. Visibility of app status
The app should always keep users informed about what is going on, through appropriate feedback.
Example: Shazam provides feedback as it analyzes audio. More common feedback use cases: progress indicator when sending content (e.g., email) or receiving content (e.g., latest news).
2. Match between app and the real world
The app should sense the user’s environment and adapt the information display accordingly.
Example: Compass (lower left of app) changes the map orientation as needed. Other apps change the display orientation from portrait to landscape when appropriate, e.g., iHandy Level.
3. User control and freedom
Users often choose app functions by mistake and will need a clearly marked “emergency exit.”
Example: “Cancel” and “x” buttons are common iPhone controls. In the case of “immersive” apps, e.g., video or games, users should be able to tap to access controls and/or exit. The screen capture below is for the Facebook status update screen.
4. Error prevention
Eliminate error-prone conditions or check for them and present users with a confirmation option.
Example: Spell check has option to reject the recommendation. The example below is from the built-in email app.
5. Consistency and standards
Users should not have to wonder whether different words, situations, or actions mean the same thing.
Example: Kindle uses standard controls for bookmarking and showing progress. See Apple’s iPhone Human Interface Guidelines for the complete set of standards.
6. Recognition rather than recall
Minimize the user’s memory load by making objects, actions, and options visible.
Example: The Yelp “Recents” tab stores businesses recently visited. Maps also uses “recents” to enable users to access past addresses and routes. Other ways to reduce recall (& minimize typing) include remembering the app’s last state as well as previous search results.
7. Flexibility and efficiency of use
Reduce the number of steps required by anticipating user needs and enabling customization.
Example: Urbanspoon provides suggestions as the user enters their query. Additionally, pre-populating fields can make users more efficient, e.g., the built-in Maps app will pre-populate the “start” field with the current location.
8. Aesthetic and minimalist design
Screens should not contain information which is irrelevant or rarely needed.
Example: Photo controls are hidden when not in use. The same is true for other immersive apps such as video and e-readers, e.g. Kindle.
9. Help users recognize, diagnose, and recover from errors
Error messages should be expressed in plain language precisely indicating the problem and solution.
Example: Epicurious explains what content may be available when users are offline.
10. Help and documentation
Help should be focused on the user’s task, list concrete steps to be carried out, and not be too long.
Example: Ocarina provides contextual help upon startup. The Sketches app has new user tutorials that are both playful & helpful.