Summary and Analysis of:
Nielsen, Jakob (1993). Usability Engineering. AP Professional
By Reginald Riley Jr.
Summary
Chapter 5, Usability Heuristics, of Nielsen’s book, Usability Engineering, describes, in detail, ten closely related fundamental heuristics, applicable to the user interface. Additionally, he states that because basic interface characteristics are fairly broad and can apply to practically any type of user interface, usability heuristics can be used as a basis for a systematic approach to finding usability problems and handling them accordingly. The ten basic usability heuristics are described and summarized below.
- Simplicity and Natural Dialogue - User interfaces should be as simple as possible because every additional piece of information adds to the learning curve for novice users, or slows down expert users. This includes the mapping between computer and user concepts. Ideally, the information the user needs should be displayed only. Techniques to accommodate this include good graphic design with a notion of closeness, closure and similarity of information. Color should only be used to categorize, differentiate, and highlight.
Speak the User’s Language – The design should be based on language that is easy for the user, not easy for system. The natural process should be to simply ask the users what words and concepts they would like to see in the interface but this is highly unreliable due to the differences in users. However, people can learn basically anything in a system eventually. The goal, again, is to have good mappings and this is possible through good user interface metaphors (ex. trash can for delete).
- Minimize User Memory Load – A good user interface should not rely heavily on the user’s memory. Instead, it should display elements and allow a choice, rather than requiring the user to recall precisely. The use of a few generic commands is also useful, by letting similar events occur in different circumstances.
- Be Consistent – Users will feel more confident if they know that the same command achieves the same effect when performed in different circumstances. Building the confidence level of a user is very important as they will be encouraged to explore the system functionality in depth knowing they already have some basis skills.
- Give Feedback – It states that the system should continuously inform the user about what it is doing and how it is interpreting the user’s input. Feedback can be positive or negative describing errors or providing information. The notion of persistence is introduced referring to the relationship between the duration of the message, and its importance to the user. Feedback is also important regarding long system response times. No feedback, is the worst feedback.
- Clearly Marked Exits – Users do not like to feel "trapped"; therefore, a system should offer an easy way out of as many situations as possible. One popular method is the undo in many applications. The visibility of these recovery mechanisms is also important. It is known that users will always make errors. Because of this, the system should make it as easy as possible to recover.
- Shortcuts – Shortcuts are not necessary for all users; however, he states that it should be possible for the experienced user to perform frequently used operations especially fast. Type-ahead and click-ahead are two methods to expedite certain functions but are not really shortcuts. Shortcuts should allow users to go directly to a desired location in large information spaces, but they should consist of some backtrack feature to allow the user to return.
- Good Error Messages – Error messages are critical in defining and representing situations where the user is in trouble, and they present opportunities for helping the user understand the system better. Error messages should be phrased in clear language, be precise, constructively help the user solve the problem, and not be intimidating to the user. One option is multiple level messaging. This provides simple error messages not reflecting internal computer activity to novice users, but highly detailed information to experienced users.
- Prevent Errors – Even though errors can not totally be prevented, an attempt should be made anyway. Engineering a system with different modes for the user should be avoided. If modes are used, they should provide feedback to cause less confusion in users.
- Provide Help and Documentation – Manuals are needed to supplement the interface. Manuals can be written or on-line and he states that they should not reduce the usability requirements for the interface. There should also be good look up tools and some type of search for specific task documentation. Users generally follow the pattern of searching, understanding, and applying; therefore, through the use of the index, this process should be accommodated.
Through these ten principles, we get a foundation for heuristic evaluation. He states that heuristic evaluation is done by looking at an interface and trying to come up with an opinion about what is good and bad about the interface. It is described as a systematic inspection of a user interface design for usability. Because of the differences among evaluators themselves, experience has shown that more than one heuristic evaluator is needed for these inspections. The use of five evaluators is recommended. Nielsen states that during an inspection, the evaluator goes through the interface several times and observes the various dialogue elements and compares them with a list of recognized usability principles, such as the ones listed above. One method is the pluralistic usability walkthrough where users, developers, and usability specialists inspect a design for usability. Because each usability problem can be referenced to a usability principle, it is easy to revise the design.
Things I Liked
- Nielsen uses examples to illustrate his meaning. I found them to be very helpful. The examples in the beginning on content grouping as it relates to physical closeness helped me to bring his views into focus.
- He provided a lot of statistical data backing up his viewpoints.
- I liked that we read this paper after "The Psychology of Everyday Things". It built upon the same basic principles and terms applying them to the computer interface specifically.
- I really had no problems with this paper/chapter.
- I liked the fact that from every idea given, I automatically thought of examples I run into all of the time.
Interesting Observations
- There is much thought and a certain level of complexity that goes into keeping an interface design simple. That is kind of paradoxical.
- In my Designing Multimedia class, I was told for the first time that a lot of white space makes for a good design. Nielsen reaffirmed this notion.
- There were no cons in relevance to the percentage indicator in the Feedback section. He has obviously never tried downloading anything from the Web where the estimated time left is quite estimated.
Problems
The only real problem I found with this paper was the mumble screen diagram in the beginning section. This specific example really did not help me to see how this technique can be applied when designing a layout.
Questions
- Is the pluralistic usability walkthrough really a technique used in today’s world of development?