CS252. User Interface Design

Solutions to Homework 2 - Chapters 3 and 4 in Jordan book


Questions from Chapter 3


1. Explain the difference between consistency and compatibility using examples from your experiences with software interfaces.

Answers will vary. The important distinction to make is that consistency has to do with how the steps needed to carry out one task (using one portion of the interface) relate to the steps needed for another task, while compatibility reflects how well interface operations match up with those in other products or in the "outside world."

An example could be that in Excel, the actions needed to calculate a sum and an average are almost identical: in the cell where the sum/average will be displayed, you indicate that the formula should be "SUM(" and highlight the cells to be summed,; all that changes to compute the average is that you specify a different function name. While this is compatible with the way things are done in Lotus, it is not particularly compatible with the "outside world," where a sum just requires successively adding values, while an average requires adding them, then counting how many values there were, then dividing the sum by the count.


2. Which user resources are involved in each of the following types of software use?


6.Name three ways that Visual Basic prioritizes the functionality and information presented to the user.

VB uses the concept of priorization extensively. Examples include:

  1. There are many separate menus and they are organized hierarchically, so the user sees only a small subset of functionality at a time.

  2. Complex operations are grouped together and presented in separate popup dialogs; they remain invisible until they are needed, and disappear once the operation is complete.

  3. Toolbars (at top and side) present the most commonly needed features.

  4. Separate windows control the source code and the form appearance; only one is shown at startup; the user must explicitly bring up others.

  5. Since project groups may be very complex, a "project explorer" pane is used so that only one project is visible at a time; the user navigates through the hierarchy in this pane to see other projects.

  6. Since a project potentially has many objects, each with its own properties, the properties pane shows only one object at a time; the user switches objects using the drag-down list at the top of the pane.

  7. Debugging windows are not normally displayed, but are always available; once the user invokes them, they continue to come up even after the program has been stopped and then re-started -- this is an example of using mode to prioritize functionality and information.


center>Questions from Chapter 4


5. List three reasonable user requirements for the automatic translation software.


6. For any one of the user requirements you just identified, define two usability criteria that could be tested empirically.

Examples corresponding to the first requirement: