- •Contents
- •Figures and Tables
- •Introduction to the Aqua Human Interface Guidelines
- •The Benefits of Applying the Interface Guidelines
- •Deciding What to Do First
- •Tools and Resources for Applying the Guidelines
- •If You Have a Need Not Covered by the Guidelines
- •Human Interface Design
- •Human Interface Design Principles
- •Metaphors
- •See-and-Point
- •Direct Manipulation
- •User Control
- •Feedback and Communication
- •Consistency
- •WYSIWYG (What You See Is What You Get)
- •Forgiveness
- •Perceived Stability
- •Aesthetic Integrity
- •Modelessness
- •Knowledge of Your Audience
- •Worldwide Compatibility
- •Cultural Values
- •Language Differences
- •Default Alignment of Interface Elements
- •Resources
- •Universal Accessibility
- •Visual Disabilities
- •Hearing Disabilities
- •Physical Disabilities
- •The Dock
- •The Dock’s Onscreen Position
- •Dock Notification Behavior
- •Dock Menus
- •Clicking in the Dock
- •Menus
- •Menu Elements
- •Menu Titles
- •Menu Items
- •Grouping Items in Menus
- •Hierarchical Menus (Submenus)
- •Menu Behavior
- •Scrolling Menus
- •Toggled Menu Items
- •Sticky Menus
- •Standard Pull-Down Menus (The Menu Bar)
- •The Apple Menu
- •The Application Menu
- •The Application Menu Title
- •The Application Menu Contents
- •The File Menu
- •The Edit Menu
- •The View Menu
- •The Window Menu
- •The Help Menu
- •Menu Bar Status Items
- •Other Menus
- •Contextual Menus
- •Using Special Characters and Text Styles in Menus
- •Using Symbols in Menus
- •Using Text Styles and Fonts in Menus
- •Using Ellipses in Menus and Buttons
- •Windows
- •Window Layering
- •Window Appearance and Behavior
- •Textured Windows
- •Opening and Naming Windows
- •Positioning Windows
- •Closing Windows
- •Moving Windows
- •Resizing and Zooming Windows
- •Active and Inactive Windows
- •Click-Through
- •Scroll Bars and Scrolling Windows
- •Automatic Scrolling
- •Minimizing and Expanding Windows
- •Windows With Changeable Panes
- •Special Windows
- •Drawers
- •When to Use Drawers
- •Drawer Behavior
- •Utility Windows
- •The About Window
- •Dialogs
- •Types of Dialogs and When to Use Them
- •Document-Modal Dialogs (Sheets)
- •Sheet Behavior
- •When to Use Sheets
- •When Not to Use Sheets
- •Alerts
- •Dialog Behavior
- •Accepting Changes
- •The Open Dialog
- •Saving, Closing, and Quitting Behavior
- •Save Dialogs
- •Closing a Document With Unsaved Changes
- •Saving Documents During a Quit Operation
- •Saving a Document With the Same Name as an Existing Document
- •The Choose Dialog
- •The Printing Dialogs
- •Controls
- •Control Behavior and Appearance
- •Push Buttons
- •Push Button Specifications
- •Radio Buttons and Checkboxes
- •Radio Button and Checkbox Specifications
- •Selections Containing More Than One Checkbox State
- •Pop-Up Menus
- •Pop-Up Menu Specifications
- •Command Pop-Down Menus
- •Command Pop-Down Menu Specifications
- •Combination Boxes
- •Combo Box Specifications
- •The Text Entry Field
- •The Scrolling List
- •Placards
- •Bevel Buttons
- •Bevel Button Specifications
- •Toolbars
- •Pop-Up Icon Buttons and Pop-Up Bevel Buttons
- •Slider Controls
- •Slider Control Specifications
- •Tab Controls
- •Tab Control Specifications
- •Progress Indicators
- •Text Fields and Scrolling Lists
- •Tools for Creating Lists
- •Text Input Field Specifications
- •Scrolling List Specifications
- •Image Wells
- •Disclosure Triangles
- •Layout Guidelines
- •Group Boxes
- •Sample Dialog Layouts
- •Using Small Versions of Controls
- •User Input
- •The Mouse and Other Pointing Devices
- •Using the Mouse
- •Clicking
- •Double-Clicking
- •Pressing
- •Dragging
- •The Keyboard
- •The Functions of Specific Keys
- •Character Keys
- •Modifier Keys
- •Arrow Keys
- •Function Keys
- •Key Combinations Reserved by the System
- •Recommended Keyboard Equivalents
- •Creating Your Own Keyboard Equivalents
- •Keyboard Focus and Navigation
- •Full Keyboard Access Mode
- •Type-Ahead and Auto-Repeat
- •Selecting
- •Selection Methods
- •Selection by Clicking
- •Selection by Dragging
- •Changing a Selection With Shift-Click
- •Changing a Selection With Command-Click
- •Selections in Text
- •Selecting With the Mouse
- •What Constitutes a Word
- •Selecting Text With the Arrow Keys
- •Selections in Graphics
- •Selections in Arrays and Tables
- •Editing Text
- •Inserting Text
- •Deleting Text
- •Replacing a Selection
- •Intelligent Cut and Paste
- •Editing Text Fields
- •Entering Passwords
- •Fonts
- •Icons
- •Icon Genres and Families
- •Application Icons
- •User Application Icons
- •Viewer, Player, and Accessory Icons
- •Utility Icons
- •Non-Application Icons
- •Document Icons
- •Icons for Preferences and Plug-ins
- •Icons for Hardware and Removable Media
- •Toolbar Icons
- •Icon Perspectives and Materials
- •Conveying an Emotional Quality in Icons
- •Suggested Process for Creating Aqua Icons
- •Tips for Designing Aqua Icons
- •Drag and Drop
- •Drag and Drop Design Overview
- •Drag and Drop Semantics
- •Move Versus Copy
- •When to Check the Option Key State
- •Selection Feedback
- •Single-Gesture Selection and Dragging
- •Background Selections
- •Drag Feedback
- •Destination Feedback
- •Windows
- •Text
- •Multiple Dragged Items
- •Automatic Scrolling
- •Using the Trash as a Destination
- •Drop Feedback
- •Finder Icons
- •Graphics
- •Text
- •Transferring a Selection
- •Feedback for an Invalid Drop
- •Clippings
- •Language
- •Style
- •Terminology
- •Developer Terms and User Terms
- •Labels for Interface Elements
- •Capitalization of Interface Elements
- •Using Contractions in the Interface
- •Writing Good Alert Messages
- •User Help and Assistants
- •Apple’s Philosophy of Help
- •Help Viewer
- •Providing Access to Help
- •Help Tags
- •Help Tag Guidelines
- •Setup Assistants
- •Files
- •Installing Files
- •Where to Put Files
- •Handling Plug-ins
- •Naming Files and Showing Filename Extensions
- •Displaying Pathnames
- •Speech Recognition and Synthesis
- •Speech Recognition
- •Speakable Items
- •The Speech Recognition Interface
- •Speech-Recognition Errors
- •Guidelines for Implementing Speech Recognition
- •Speech Synthesis
- •Guidelines for Implementing Speech Synthesis
- •Spoken Dialogues and Delegation
- •General Considerations
- •Installation and File Location
- •Graphic Design
- •Menus
- •Pop-Up Menus
- •Windows
- •Utility Windows
- •Scrolling
- •Dialogs
- •Feedback and Alerts
- •The Mouse
- •Keyboard Equivalents
- •Text
- •Icons
- •User Documentation
- •Help Tags
- •Document Revision History
- •Glossary
- •Index
C H A P T E R 1 6
Speech Recognition and Synthesis
Spoken Dialogues and Delegation
The most powerful, successful, and compelling way to use speech technology is to engage users in spoken dialogues. Spoken dialogues are multi-turn conversational interactions in which the computer asks a question, the user speaks an answer, the computer asks another question, and so on. When the computer asks a question, the user automatically knows how to answer, and the speech engine has a better chance of recognizing what was said. For example:
User: Schedule a meeting.
Computer: What day would you like to meet? User: Friday.
Computer: What time? User: 6 P.M.
Computer: Whom do you want to invite?
User: Tom, Jerome, Devang, Kevin, Matthias, and Kim.
Computer: OK. Scheduling a meeting on Friday at 6 P.M. with Tom, Jerome, Devang, Kevin, Matthias, and Kim.
With spoken dialogues of this form, it’s possible to provide users with a means of delegating a goal to the computer (scheduling a meeting, in the previous example), rather than performing a sequence of steps that each involves the keyboard and mouse. The computer can ask the user for any extra information it needs to reach that goal. Speech is an ideal way to delegate a goal to an intelligent assistant.
260Spoken Dialogues and Delegation
Apple Computer, Inc. June 2002
A P P E N D I X A
Checklist for Creating Aqua
Applications
This checklist is designed to help guide you in the process of making a great Aqua application. Use it to remind yourself of important interface-related issues.
Consider the questions in the checklist as you review your software. Answering every question with a “yes” will ensure that your product conforms to the Aqua human interface guidelines. Even if you can’t answer “yes” to every question, this checklist can help your product maintain the spirit of the guidelines and principles.
Although business realities (such as product schedules and budgets) often force you to make design tradeoffs, remember that, for many users and product reviewers, the extent to which you adopt Aqua is the most visible means of measuring how “Mac-like” your product is. (You may also want to refer to “Deciding What to Do First” (page 23).)
General Considerations
■Do you use standard Aqua controls provided by the system, instead of inventing custom ones? Do you avoid assigning new behaviors to existing interface elements?
■Does the application have the Mac OS X “feel,” including window minimization, live scrolling, live window dragging, and sheets?
■If a metaphor is being used, is it suitable for the application? Does the metaphor match a “real” visual and behavioral representation?
■Is the user always able to find an object or action on the screen? In other words, does your interface follow the see-and-point principle of design?
General Considerations |
261 |
Apple Computer, Inc. June 2002 |
|
A P P E N D I X A
Checklist for Creating Aqua Applications
■Do document printouts exactly replicate what the user sees on the screen? Do movies, sounds, and other types of data reproduce faithfully regardless of what medium they’re in? In other words, is the application WYSIWYG?
■Is your application forgiving and explorable by supporting Undo? Are there warnings about risky actions? Are users allowed to back away gracefully from risky territory?
■If an operation can be interrupted, do you provide a Cancel or Stop button? Can Escape or Command-period be used to cancel or stop these operations?
■Does the application feel stable?
■Do you respect all of the accessibility features in Mac OS X, such as keyboard navigation and focus?
■Have you made a clear, consistent distinction between basic and advanced features?
■If your application has modes, is there a clear visual indication of the current mode? Does the visual indication of the mode appear near the object most affected by the mode? Are there enough landmarks to remind the user what area of the application he or she is in? For example, many graphics applications change the pointer to an eraser in erase mode.
■Is each mode absolutely necessary? Do the modes within the application properly track the user’s own modes? Do users consistently avoid the kind of errors caused by the program being in a mode other than what the user wants or expects? Making a mode visually apparent is no guarantee that the user will track it: Test the application on users and find out what sorts of mistakes they are making. If the errors are caused by modes, find ways to communicate the modes more clearly, or eliminate them.
■Can the user save a document or quit an application at any time?
■Are the widest possible range of user activities available at any time? The user should spend most of his or her time being able to interact with the application— not waiting for it to complete a process.
■Does your application always use the file’s display name when the filename is visible to users, except in expanded help tags?
■Is your application speech-enabled?
■Has all user-visible text been reviewed by a professional writer?
■Does all user-visible text use “curly” apostrophes and quotation marks rather than straight ones (except for measurements or in code examples)?
262General Considerations
Apple Computer, Inc. June 2002
Installation and File Location
■Can a user install your application by dragging a single file or folder? Did you provide an application bundle so that users can manipulate only certain files? Are you using the Mac OS X interface to handle plug-ins?
■Does your application put application support files—user preference settings, plug-ins, databases, and so on—in the user’s Library folder? Does it avoid putting files in the Documents folder (except for user-created files)?
Graphic Design
■Does the application have the overall Mac OS X “look,” including high-quality Aqua-style icons, controls, anti-aliased text, windows, and menus?
■Do windows, dialogs, and palettes look “clean” and free from clutter?
■Does the user have control over the design of the workspace (location and sizing of windows, toolbar customization), allowing him or her to individualize it?
■Is the information in windows organized so the most important information can be read first?
■Do you use white space and graphics to break up long pieces of text?
Menus
■Are the application, File, Edit, and Window menus present, with at least the standard items?
■Does the application support Undo, Cut, Copy, and Paste, and are these items in the Edit menu?