#acl +All:read AlanCooper의 저작. <> = Part 1. Goal-Directed Design = == Ch 1. A Design Process for Digital Products == Goal-Directed Design is a powerful tool for answering the most important questions that crop up durng the definition and design of a digital product: * Who are my users? * What are my users trying to accomplish? * How do my users think about what they're trying to accomplish? * What kind of experiences do my users find appealing and rewarding? * How should my product behave? * What form should my product take? * How will users interact with my product? * How can my product's function be most effectively organized? * How will my product introduce itself to first-time users? * How can my product put an understandable, appealing, and controllable face on technology? * How can my product deal with problems that users encounter? * How will my product help infrquent and inexperienced users understand how to accomplish their goals? * How can my product provide sufficient depth and power for expert users? The remainder of this bok is dedicated to answering these questions. == Ch 2. Understanding the Problem: Design Research == == Ch 3. Modeling Users: Personas and Goals == == Ch 4. Setting the Vision: Scenarios and Design Requirements == == Ch 5. Designing the Product: Framework and Refinement == == Ch 6. Creative Teamwork == === Small, Focused Teams === === Thinkng Better, Together === === Working across Design Disciplines === === The Extended Team === === Estabilishing a Creative Culture === === Identifying Skill Levels in Designers === === Collboration is the Key === = Part 2. Designing Behavior and Form = == Ch 7. A Basis for Good Product Behavior == === Interaction Design Principles === ==== Principles operate at differnt levels of detail ==== Design principles operate at several levels of granularity, ranging from the general practices of interaction design down to the specifics of interface design. Concenptual principles:: help define ''what digital products should be like'' and ''how they fit structurally'' into the broad context of use required by their users. Chapter 8 through 13 discuss conceptual-level design principles. Behavioral principles:: describe ''how a product should behave'' - in general and in specific contexts. Chapter 14 through 17 discuss general behavior-level principles. Interface-level principles:: describe effective strategies for the ''organizations, navigations, and communication of behavior and information''. Chapter 18 through 21 discuss inteface-level principles (and patterns) of interaction design. == Ch 8. Digital Etiquette == == Ch 9. Platform and Posture == == Ch 10. Optimizing for Intermediates == == Ch 11. Orchestration and Flow == == Ch 12. Reducing Work and Eliminating Excise == == Ch 13. Metaphors, Idioms, and Affordance == == Ch 14. Rethinking Data Entry, Storage, and Retrieval == == Ch 15. Preventing Errors and Informing Decisions == == Ch 16. Designing for Different Needs == == Ch 17. Integrating Visual Design == = Part 3. Interaction Details = == Ch 18. Designing for the Desktop == == Ch 19. Designing for Mobile and Other Devices == == Ch 20. Designing for the Web == == Ch 21. Design Details: Controls and Dialogs == = Appendix A. Design Principles = Chapter 1. A Design Process for Digital Products * User interfaces should be based on user mental models rather than implementation models. * Goal-directed interactions reflect user mental models. * Interaction design is not guesswork. Chapter 3. Modeling Users: Personas and Goals * Don't make the user feel stupid. * Focus the design for each interface on a single primary persona. Chapter 4. Setting the Vision: Scenarios and Design Requirements * Define ''what'' the product will do before you design ''how'' the product will do it. * In the early stages of design, pretend the interface is magic. Chapter 5. Designing the Product: Framework and Refinment * Never show a design approach you're unhappy with; stakeholders just might like it. * There is only one user experience: Form and behavior must be designed in concert. Chapter 8. Digital Etiquette * The computer does the work, and the person does the thinking. * Software should behave like a considerate human being. * If it's worth it to the user to do it, it's worth it to the application to remember it. Chapter 9. Platform and Posture * Decisions about technical platform are best made in concert with interaction design efforts. * Optimize sovereign applications for full-screen use. * Sovereign interfaces should feature a conservative visual style. * Sovereign aplications should exploit rich input. * Maximize document views within sovereign applications. * Transient applications must be simple, clear, and to the point. * Transient applications should be limited to a single window and iew. * A transient application should launch to its previous position and configuration. * Kiosks should be optimized fir first-time use. Chapter 10. Optimizing for Intermediates * Don't weld on training wheels. * Nobody wants to remain a beginner. * Optimize for intermediates. * Inflect the interface for typical navigation. * Users make commensurate effort if the rewards justify it. * Imagine users as very intelligent and very busy. Chapter 11. Orchestration and Flow * No matter how cool your inteface is, less of it would be better. * Don't use dialogs to report normalcy. * Ask forgiveness, not permission. Chapter 12. Reducing Work and Eliminating Excise * Eliminate excise wherever possible. * Don't stop the proceedings with idiocy. * Don't make users ask for permission. * Allow input wherever you have output. * Significant change must be significantly better. Chapter 13. Metaphors, Idioms, and Affordances * Most people would rather be successful than knowledgable. * Never bend your interface to fit a metaphor. * All idioms must be learned; good idioms need to be learned only once. * Rich visual feedback is the key to successful direct manipulation. * Visually communicate pliancy whenever possible. Chapter 14. Rethinking Data Entry, Storage, and Retrieval * An error may not be your application's fault, but it is your application's responsibilty. * Audit, don't edit. * Save documents and settings automatically. * Put files where users can find them. Chapter 17. Integrating Visual Design * Visually distinguish elements that behave differently. * Visually communicate function and behavior. * Take things away untuil the design breaks, and then put that last thing back in. * Visually show what; textually tell which. * Obey standards unless there is a truly superior alternative. * Consistency doesn't imply rigidty. Chapter 18. Designing for the Desktop * The utility of any interaction idioms is context-dependent. * A dialog box is another room; have a good reason to go there. * Provide functions in the window where they are used. * Use menus to provide a pedagogic vector. * Disable menu items when they are not applicable. * Use consistent visual symbols on related commands. * Toolbars give experiences users fast access to frequently used functions. * Use ToolTips with all toolbar and iconic controls. * Support both mouse and keyboard use for navigation and selection tasks. * Use cursor hinting to show the meanings of metakeys. * Single-clicking selects data or an object or changes the control state. * Double-clicking means single-clicking plus action. * Mouse-down over an object or data should select the object or data. * Mouse-down over controls means proposing an action; mouse-up means commiting to an action. * The selection state should be visually evident and unambiguous. * Drop candidates must visualy indicate their receptivity. * The drag cursor must visualy identify the source object. * Any scrollable drag-and-drop target must auto-scroll. * Debounce all drags. * Any program that demands precise alignment must offer a vernier. Chapter 19. Designing for Mobile and Other Devices * Most mobile apps have transient posture. * Limit the number and direction of animated screen transitions. * Use guided tours to orient first-time users. * Use overlays to explain gestures. Chapter 20. Designing for the Web * Use persistent headers to maintain context. * Breadcrumbs with lateral links help speed navigation. * Auto-complete, auto-suggest, and faceted search help users find things faster. * Make scrolling an engaging experience. * Infinite scrolling and site footers are mutually exclusive idioms. * If you have only one version of your site, make it responsive. Chapter 21. Design Details: Controls and Dialogs * Use links for navigation and buttons for action. * Distinguish important text items in list with graphic icons. * Aviod scrolling text horizontally. * Use bounded controls for bounded input. * Use noneditable (display) controlls for output-only text. * Put primary interactions in the primary window. * Dialogs are appropriate for functions that are out of the main interaction flow. * Dialogs are appropriate for organizing controls and information about single domain object or appliacation function. * Use verb in function dialog title bars. * Use object names in property dialog title bars. * Differentiate modeless dialogs from modal dialogs. * Do not use terminating button commands for modeless dialogs. * Don't dynamically change the labels of terminating buttons. * Inform the user when the application is unresponsive. * Never use transitory dialogs as error messages, alerts, or confirmations. * All interaction idioms have practical limits. * Don't stack tabs. * Most error dialogs stop the proceeding with idiocy. * Make errors impossible. * User get humiliated when software tells them they failed. * Do; don't ask. * Make all actions reversible. * Provide modeless feedback to help users avoid mistakes.