CS 350 – Computer/Human Interaction
Fall 2006 –
Homework 5
20 points
Out: November 6
Due: November 13 (at the beginning of in class, no late work)


Reminder: Mid-project progress reports are due on November 10. Peer review forms will be given out in class on November 8.


One of the most popular analytical evaluation methods used in industry is heuristic evaluation, where multiple experts do a critique of a user interface with reference to a set of high-level guidelines (see p. 233 in the textbook). Your task is to conduct a heuristic evaluation of the www.amazon.com website. We will compile and discuss the implications of your analyses in class.


As a usage context for the analysis, imagine that you are looking for books related to HCI - guidelines for UI construction, tools for development of GUIs, etc. You visit www.amazon.com and browse or search for such books. Here is an elaboration of the ten heuristics defined by Nielsen (1994):


  1. Use simple and natural dialog: The user interface should make the interaction sequences expected from users as straightforward and intuitive as possible.

  2. Speak the users' language: The terminology used in menus, buttons, other labels, and so on should be familiar to users.

  3. Minimized memory load: The interactions expected of users should not force them to hold too much information in memory, e.g., to keep track of where they are, what they are doing, or what to do next.

  4. Be consistent: The overall look and feel of the user interface should "hang together"; users should be allowed to carry out similar tasks in similar ways.

  5. Provide feedback: When the user takes an action, the user interface should provide feedback that makes clear what just happened, where they are, what they can do next, etc.

  6. Provide clearly marked exits: Users should not find themselves in a position where they have to carry out several actions to "leave" or "shutdown" a task.

  7. Provide shortcuts: It should be possible to create or use fast-paths for tasks that are attempted frequently.

  8. Provide good error messages: If the user makes a mistake or slip, it should be clear what has happened and what to do next.

  9. Prevent errors: The user interface should have some mechanisms for anticipating and helping users to avoid mistaken actions.

  10. Include good help and documentation: The user interface should provide elaboration of concepts or procedures that users can understand if they are wondering what to do or what has just happened.


Organize your answer by the heuristics themselves, e.g., use the guideline as a subheading, followed by the results of your analytic evaluation efforts. You can make your evaluation very informally, but please base it on your own observations, not on questions you ask of other users. Try to find at least one potential usability problem, even if it is a small one, relating to each guideline. Each problem identified should be rated as minor, moderate, or severe with respect to system usability. Conclude with a short set of recommendations for re-design that are based on your evaluation.


11/6/06 2