As we discussed in Part I, personas and scenarios help us focus our design efforts on the goals, behaviors, needs, and mental models of real users. In addition to the specific focus that personas can give a design effort, there are some consistent and generalizable patterns of user needs that should inform the way our products are designed. In this chapter, we’ll explore some strategies for serving these well-known needs.
Two concepts are particularly useful in sorting out the needs of users with different levels of experience: Command vectors and working sets. Command vectors are distinct techniques for allowing users to issue instructions to the program. Direct manipulation handles, drop-down and pop-up menus, toolbar controls, and keyboard accelerators are all examples of command vectors.
Good user interfaces provide multiple command vectors, where critical application functions are provided in the form of menu commands, toolbar commands, keyboard accelerators, and direct manipulation controls, each with the parallel capability to invoke a particular command. This redundancy enables users of different skill sets and attitudes to command the program according to their abilities and inclinations.
Direct manipulation controls, like pushbuttons and toolbar controls, are immediate vectors. There is no delay between clicking a button and seeing the results of the function. Direct manipulation ...