Place the User in Control During a requirements-gathering session for a major new information system, a key user was asked about. Following are the design principles that allow the user to maintain control: Define interaction modes in a way that does not force a user into unnecessary or undesired actions. Provide for flexible interaction. Allow user interaction to be interruptible and undoable. Streamline interaction as skill levels advance and allow the interaction to be customized. Hide technical internals from the casual user. Design for direct interaction with objects that appear on the screen. Reduce the User’s Memory Load The more a user has to remember, the more error-prone the interaction with the system will be. Following are the design principles that enable an interface to reduce the user’s memory load: Reduce demand on short-term memory. Establish meaningful defaults. Define shortcuts that are intuitive. The visual layout of the interface should be based on a real-world metaphor. Disclose information in a progressive fashion. Make the Interface Consistent The interface should present and acquire information in a consistent fashion. Following are the design principles that help make the interface consistent: Maintain consistency across a family of applications. If past interactive models have created user expectations, do not make changes unless there is a compelling (convincing) reason to do so.