What is usability? One distinction is easy; the difference between useful and useable. Useful means that the system does what it should. Usable means that it is easy to do it. But there is no usability without usefulness and no usefulness without usability. So the distinction is not so clear. This illustrates one difficulty with defining usability.
Another difficulty is what is usable to one user my not be to another user. Consider the command line interface for controlling the operating system. It is very usable by system administrators, but unusable by mortals like me. So usability should always be considered in context with the user.
Another difficulty is that it tends to become just a laundry list, rather boring and uninformative.
Let us try to compare how well current UI achieve their usability goals. Also, we should delineate what particular usability concerns there are for mobile devices and apps.
Usability Goals (Pragmatic Goals)
Preece, Rogers and Sharp (Interaction Design) propose 6 usability goals:
- Effective: effective to use
- Efficient: efficient to use
- Utility: have good utility
- Learnable: easy to learn
- Memorable: easy to remember how to use
- Safe: safe to use
The above usability goals are pragmatic or operational goals. Preece, Rogers and Sharp (Interaction Design) propose that designers evaluate how well a design achieves these usability goals by asking questions directed at the design. The questions should not be general, such as “Is the design effective?” Rather, the question should be more specific, such as “Can users of a filing systems understand the categories and use them to find information?”
Effectiveness and utilities refer to usefulness. Effectiveness is an overall measure of how well the system performs. “Can users use the system to do the work they need to do?” Efficiency is more akin to usable and can refer to the time required to use the interface and the likelihood of making errors using the system. Amazon’s single button shopping is an example of design driven by efficiency. ” Can experience users be productive using the system?” Utility is a measure of the correct functionality and breadth of functionality. Most good software is driven by utility, for example word processors have nearly all the features required to compose and format text documents. “Does the system provide all the functionality that users needs?”
Because the computer is a new cognitive tool, learnability has been a concern of UI designers. Designers have been plagued with trying to design “familiar and natural interfaces” that can be learned without reading a manual. But learnability depends on functionality; not all interfaces should be expected to be immediately usable. A programming language is a UI, how many hours did you spend learning it? A question that designers can ask, “Can users figure out what to do by exploring the interface?”
Memorable is how easy is it to remember how to use an interface after the user has experience with the system. Memorable is related to learnability and has generated GUIs with menus and icons, but the menu names and icons images need to be appropriate for them to be memorable. “What kind of support does the system have for remembering how to do tasks, especially infrequent tasks?”
Safety is protecting the users from dangerous errors, for example losing all the user’s data or protecting the user’s confidential information. Safety can also refer to how users recover from errors. Safety is a little considered usability goal. An example of designing by safety is not putting the delete button next to the save button. Another example, is providing users various ways to recover from errors, both by reverting to a priority state or progressing the system to the correct state. For example in a word processor, the write can use control-z to correct, back button, or retype to correct mistakes. “What kind of errors can users make and how can they recover from the mistake?”
A little thought of usability is ergonomics. “Is the device physically safe and comfortable to use?” I believe that new devices, smart phones and tablets, should drive designers to consider ergonomics. For example the designers should ask, “Can the user perform the operations in the work environment?” “Can the user press buttons wearing gloves?”
Consider some interfaces and how they address these usability goals:
- Word processor
- Operating system interface (the alternative between linux command line interface and Windows control panel)
- Spread sheet software
- Programming languages and IDE
- Shopping Websites
Spend some time identifying interface elements that successfully address usability goals and failures in achieving usability goals.
What pragmatic usability goals are important for mobile devices and especially our apps?
- Learnability – many apps on the device without help documentation and users generally do not have time.
- Efficient – app user generally do not have time to perform complex task.
- Ergonomic – Mobile devices are handheld and have small screens.
User Experience Goals (Subjective Goals)
Preece, Rogers and Sharp (Interaction Design) identify UI goals that are more than pragmatic goals and call them user experience goals. User experience goals is a new aspect of design driven by the video games and ubiquitous devices. Some positive user experience goals are:
- Supports creativity
- Emotionally fulfilling
- Support social networking
- Support society
The list above is not exhaustive. In their new versions of Interaction Design, Preece, Rogers and Sharp have added to the list of user experience goals and include negative experiences such as:
Preece, Rogers and Sharp propose that the user experience goals be used as adjectives to describe the experiences of a user using the interface. User interfaces should not try to appeal to all possible experience, but it should provide a positive experience or users will not continue using it.
Let us list some software applications that address some experiential goals:
- Are there any experience goals in a word processor? Should there be?
- Consider the bell in Quicken after making an entry, is this addressing user experience.
- Computer games are obvious.
What user experience goals are important for our apps?
- Helpful – Especially are apps are meant to be helpful
- Motivating – we want users (which might not really want to be on the field trip) to use the app
- Rewarding – Rewarding will ensure that users continue using, how can reward the user?
- Support Creativity – Although our apps constrain the user to performing the task correctly, we hope that users will feel creative during the pursuit of data while recording the data.
- Enjoyable – At least we do not want the app to be frustrating.
Usability Design Principles (General Rules)
Another approach is to list usability principles, abstractions or general rules for good usable interface design. In his famous book, “The Design of Everyday Things,” Don Norman list 6 usability principles:
- Visibility – visibility of functions and information
- Feedback – as a result of an interaction
- Constraints – restricting interactions
- Mapping – mapping of controls to their function
- Consistency – similar operations and tools for similar tasks
- Affordance – property of a object that allow users to know the how to use the object
Can we add to the list above? These maybe more associated with user experience goals.
- Flexibility – perform the same the task in different ways or different order
- Control – Does the system hold the user prisoner or does the user have control
- Robustness – Can the user perform errors and recover from errors
- Responsiveness – does the UI respond correctly and timely
- Predictability – Can the user predicate how the interface will perform?
- Synthesizability – does the user construct the proper model or metaphor of the system?
Again let us list some good and bad examples of Usability Design Principles for each of the following:
- Door affordances, also fire warning over elevator control
- Typing and feedback
- Uploading a file and feedback
- Context menus and visibility
- Graying (deactivating) menu items and constrains
- Physical plugs and constraints
- Mouse button and scroll wheel affordances
- Inoperative menu items graying constraints selection and are visible
- Telephone company provided answering service and poor visibility of the number of messages.
- Mapping of arrow keys
- Web page constancy
- Menu bar consistency. In Microsoft, why do I always go to ‘Insert’ to insert a table?
What design principle is important for mobile apps?
- Visibility – the user should see what the need to do.
- Feedback – the user should be aware of what they have done.
- Affordance – because screen resolution is low, buttons need to be clear. Because our users will not have much time to learn the app, objects to act on should have good affordance.
- Robustness – the user should always be able to recover for errors, especially when use a new app.
- Constraints – mobile apps generally do not offer many ways to do a task.
- Consistency – This is a principle that help user learn the system and not to perform errors.