User Interface Design Make Your Program Easy to Use and Look Good
Interface Design • Three types of interfaces • System to external context • Subsystem to subsystem (internal) • System to user
User Interface Models • User Model: What the user is like • Design Model: What the designer intended • Implementer’s Model: What the programmer built • Mental Model (or System Perception): What the user thinks the application is like • Goal: harmony between the mental model, the implementer’s model and the design model
Know Your User • Age, gender, physical capability, education, vocation, culture, nationality, motivation, preferences, experience level • Do your requirements document reflect the characteristics of your typical user? • If not, you risk missing the correct abstraction for the UI or miss an opportunity to use a helpful metaphor to enhance user understanding and acceptance.
“Golden Rules” for UI Design • Place User in Control • Use modes w/o forcing unnecessary action • Be flexible: keyboard, mouse, voice, etc. • Allow interruptions and undoing • Streamline: allow macros and shortcuts • Hide details use the correct abstraction • Implement direct manipulation • Reduce the User’s Memory Load • Don’t require memory of past actions • Establish meaningful defaults • Make mnemonics mnemonic (Alt-S for “Save”) • Use a real-world metaphor • Disclose information or functions progressively • Make the Interface Consistent • Provide indicators about system context • Be consistent across families of applications • Adhere to “defacto” practices (e.g., cut, copy, and paste)
UI Design Cycle • Analyze user, task, behavioral, and environmental requirements • Create user scenarios • Design UI look and feel • Prototype • Evaluate • Modify • Implement
Additional Points of Emphasis • Info on usability (pg 317 7/e, pg 329 6/e) • Prescriptive advice on UI design steps, (section 11.4, pgs 328-335 7/e, section 12.4 pgs 341-349 6/e) • When UI screen layout should occur (pg 329 7/e, pg 342 6/e) • Balance between UI sketches and prototyping (see “advice” pg 330 7/e, pg 343 6/e) • Four major design issues (response, help, error handling, menuing), plus two (pgs 331-334 7/e, pgs 345-348 6/e) • UIs are evaluated both quantitatively and qualitatively (pg 343 7/e, pg 350 6/e)