The golden rules
- Place the user in control.
- Reduce the user’s memory load.
- Make the interface consistent
Design Issues
The chapter highlights four (+ two global) common design issues that frequently arise during UI design: system response time, user help facilities, error information handling, and menu/command labeling. Addressing these issues early in the design process is crucial to avoid unnecessary iteration, project delays, and user frustration.
- System Response Time:
- Length and variability of response time are critical. Long response times lead to user frustration, while variability disrupts user interaction rhythm.
- Low variability is preferable even if response time is relatively long.
- User Help Facilities:
- Help facilities should be available for all system functions and accessible during system interaction.
- Design considerations include how users request help, how help is represented, and how users return to normal interaction.
- Error Information Handling:
- Error messages should be understandable, provide constructive advice for recovery, indicate negative consequences, be accompanied by audible/visual cues, and be nonjudgmental.
- Menu and Command Labeling:
- Design considerations include ensuring consistency across applications, providing corresponding commands for menu options, defining command forms, facilitating command learning and customization, and ensuring menu labels are self-explanatory.
- Application Accessibility:
- Design interfaces to accommodate users with special needs, providing accessibility features for those with physical challenges.
- Internationalization:
- Design interfaces to be globalized, accommodating different locales and languages through localization features. Guidelines address both broad design issues and discrete implementation challenges.
- Understand the importance of addressing system response time, user help facilities, error handling, and menu/command labeling early in the UI design process.
- Know the key considerations for each design issue, including factors affecting system response time, design principles for user help facilities and error handling, and best practices for menu and command labeling.
- Recognize the broader design considerations of application accessibility and internationalization, and understand their significance in UI design.
Interface Design Principles and Guidelines
- First Impression and Characteristics:
- The interface of a WebApp is the "first impression" and must immediately engage users.
- Effective interfaces should be visually apparent, and provide users with a sense of control.
- Design Principles:
- Anticipation: Design interfaces to anticipate user actions and facilitate navigation without requiring users to search extensively.
- Communication: Ensure the interface communicates activity status, user identification, and location within the content hierarchy.
- Consistency: Maintain consistency in navigation controls, menus, icons, and aesthetics throughout the WebApp.
- Controlled Autonomy: Enable user movement within the WebApp while enforcing established navigation conventions.
- Efficiency: Optimize user work efficiency over developer or system efficiency.
- Flexibility: Provide flexibility in the interface to accommodate different user preferences and navigation styles.
- Focus: Keep the interface focused on the user's tasks to prevent distractions from loosely related content.
- Fitt's Law: Design interfaces where targets for user actions are physically close and easy to acquire.
- Human Interface Objects: Utilize reusable human interface objects to enhance user experience.
- Latency Reduction: Minimize delays and provide feedback during processing to keep users informed.
- Learnability: Design interfaces to minimize learning time and facilitate easy relearning for returning users.
- Metaphors: Use appropriate interaction metaphors to assist users in understanding and navigating the interface.
- Maintain Work Product Integrity: Automatically save user work to prevent loss in case of errors.
- Readability: Emphasize readable type styles, font sizes, and color background choices for better readability.
- Track State: Track and store user interaction state to allow users to resume activities later.
- Visible Navigation: Design interfaces where navigation is seamlessly integrated, allowing users to focus on content and functions.