In this chapter, we've looked at some of the underlying principles in designing user interfaces. We began with a look at three interface models: the users' mental model of the system (what they think is going on), the system's implementation model (what's really going on), and the manifest model (what the system shows users about what's going on).
We then looked at three categories of users: beginner, intermediate, and expert. We briefly discussed the special requirements of each category and how those requirements might be best met by the system's user interface. Finally, we examined the three cardinal rules for user interface design: putting users in charge, minimizing the memory load, and being consistent.
In the next chapter, we'll turn to the overall system architecture and look at more tangible issues in user interface design.