throbber
0_I001
`
`EICROSOET
`/INDowS
`
`1
`
`CYPRESS 1031
`
`

`

`2
`
`

`

`3
`
`

`

`PUBLISHED
`
`BY
`
`Microsoft
`
`Press
`
`of Microsoft
`
`Division
`One Microsoft
`Way
`Redmond Washington 98052
`
`Corporation
`
`6399
`
`Copyright
`
`1995 by Microsoft
`
`Corporation
`
`All rights reserved No part of the contents
`of this book may be reprodoced or transmitted
`in any form or by any means withoot
`of the publisher
`the written permission
`
`Publication
`
`Data
`
`Library of Congress Cataloging-in
`The Windows
`interface guidelines
`cm
`index
`Includes
`ISBN 1-55615 679-0
`Microsoft Windows Computer file
`systems
`Computer
`software--Development
`Corporation
`QA76 76.W56W553
`dc2O
`005.265-
`
`for software
`
`design
`
`User interfaces Computer
`Microsoft
`
`95 330
`CIP
`
`t995
`
`Printed
`
`and bound
`
`in the United States of America
`
`QEQE
`
`Distributed
`
`to the book
`
`trade in Canada by Macmillan
`
`of Canada
`
`division of Canada Publishing
`
`Corporation
`
`CIP catalogue
`
`record
`
`for this book
`
`is available
`
`from the British Library
`
`Microsoft
`
`Press books
`
`are available
`
`through
`
`booksellers
`
`and distributors worldwide
`
`Por further
`
`information
`
`about
`
`international
`
`editions
`
`contact Microsoft
`
`Press International
`
`contact yoor local Microsoft
`fax 206 936 7329
`
`directly at
`
`Corporation
`
`office Or
`
`Information
`
`in this document
`
`is subject
`
`notice
`
`and does
`
`not
`
`commitment
`
`on the
`
`to change without
`represent
`names and data used
`in examples herein
`Corporation Companies
`part of Microsoft
`are fictitious
`unless
`noted No part of
`this document may be reproduced or transmitted
`in any form or by any means
`or mechanical
`for any purpose without
`the express written permission
`of Microsoft
`Corporation
`
`otherwise
`
`electronic
`
`Microsoft
`
`property
`
`any license
`
`copyrights
`
`may have patents or pending patent applications
`in this document
`subject matter
`rights covering
`trademarks
`to these patents
`
`trademarks
`or other
`copyrights
`The furnishing of this document
`intellectual
`or other
`
`intellectual
`
`does
`
`not give you
`
`property
`
`rights
`
`Adobe Postscript
`of Adobe Systems Inc Apple and TrueType
`and 11FF are trademarks
`are registered
`Inc Borland and Quattro
`of Borland International
`trademarks
`of Apple Compoter
`trademarks
`are registered
`trademark of Eltra Corporation HP and LaserJet
`Inc Frutiger
`trademarks
`are registered
`registered
`by Colorado Memory Systems Inc
`Hewlett Packard Company
`was developed for Microsoft
`Backup
`division of Hewlett Packard Company Hyperlerminal
`trademark of Hilgraeve Inc
`and Lotus
`of Lotus Development
`Corporation Microsoft Microsoft
`Press Microsoft
`trademarks
`Press logo
`registered
`MS MS DOS PowerPoint
`logo and XENIX are registered
`Visual Basic Windows Windows
`trademarks
`and Windows NT is
`Corporation Anal Bodoni Swing and Times New Roman are
`trademark of Microsoft
`PLC Paintbrush
`trademark of Wordstar Atlanta
`Corporation
`
`is
`
`trademarks
`registered
`Technology Center
`
`of The Monotype
`
`of
`
`are
`
`is
`
`is
`
`4
`
`

`

`Contents
`
`Introduction
`
`Whats New
`How to Use This Guide
`How to Apply the Guidelines
`Conventions Used in This Guide
`
`PART
`
`FUNDAMENTALS
`
`OF DESIGNING
`
`USER INTERACTION
`
`at
`
`flesigft erirtqiplos
`
`and Metiwliptoqy
`
`Design Principles
`User-Centered
`User in Control
`
`Directness
`
`Consistency
`
`Forgiveness
`Feedback
`
`Aesthetics
`
`Simplicity
`
`Design Methodology
`Balanced Design Team
`The Design Cycle
`Usability Assessment
`
`in the Design Process
`
`Understanding
`
`Users
`
`Design Tradeoffs
`
`xv
`
`xvi
`
`xvii
`
`xviii
`
`12
`
`15
`
`16
`
`5
`
`

`

`Contents
`
`Chapter
`
`Baslu Concepts
`
`IF
`
`Data-Centered
`
`Design
`
`Objects
`
`as Metaphor
`Object Characteristics
`
`Relationships
`Composition
`Persistence
`
`Putting Theory into Practice
`
`The Desktop
`
`The Taskbar
`The Start Button
`Window Buttons
`The Status Area
`
`Icons
`
`Windows
`
`Mouse Input
`Mouse Pointers
`Mouse Actions
`
`Keyboard Input
`Text Keys
`Access Keys
`Mode Keys
`Shortcut Keys
`
`Pen Input
`Pen Pointers
`
`Pen Gestures
`
`Pen Recognition
`Ink Input
`
`Targeting
`
`iv
`
`The Windows
`
`Interface
`
`Guidelines
`
`for Software Design
`
`6
`
`17
`
`18
`
`18
`
`19
`
`19
`20
`
`20
`
`23
`
`24
`
`25
`26
`
`26
`
`26
`
`28
`
`29
`29
`
`31
`
`32
`
`33
`
`33
`
`34
`
`35
`
`37
`39
`
`40
`
`41
`
`41
`42
`
`

`

`Navigation
`Mouse and Pen Navigation
`Keyboard Navigation
`
`Selection
`Selection Feedback
`
`Scope of Selection
`Hierarchical Selection
`Mouse Selection
`Pen Selection
`
`Keyboard Selection
`Selection Shortcuts
`
`Common Conventions
`
`for Supporting
`
`Operations
`
`Operations
`
`Default Operations
`View Operations
`
`for Multiple Selection
`and Shortcut Techniques
`
`Editing Operations
`
`Editing Text
`Handles
`
`Transactions
`
`Properties
`
`Pen-Specific Editing Techniques
`
`Transfer Operations
`Command Method
`Direct Manipulation Method
`Transfer Feedback
`Specialized Transfer Commands
`Shortcut Keys for Transfer Operations
`
`Creation Operations
`Copy Command
`New Command
`Insert Command
`
`Using Controls
`
`Using Templates
`
`Operations
`
`on Linked Objects
`
`Contents
`
`43
`44
`
`44
`
`45
`46
`
`47
`47
`
`48
`
`55
`
`56
`
`57
`
`58
`
`58
`
`59
`59
`
`62
`62
`
`63
`
`64
`
`65
`66
`
`72
`74
`77
`
`83
`
`86
`
`87
`
`87
`
`87
`
`88
`
`88
`
`88
`
`88
`
`89
`
`The Windows Interface
`
`Guidelines
`
`for Software Design
`
`7
`
`

`

`Contents
`
`PART II WINDOWS INTERFACE
`
`COMPONENTS
`
`Common Types of Windows
`Primary Window Components
`Window Frames
`Title Bars
`
`Title Bar Icons
`
`Title Text
`
`Title Bar Buttons
`
`Basic Window Operations
`and Deactivating Windows
`Activating
`Opening and Closing Windows
`Moving Windows
`Resizing Windows
`Scrolling Windows
`Splitting Windows
`
`Menus Controls
`
`and Toolbars
`
`Menus
`The Menu Bar and Drop-down Menus
`Cnmmon Drop-dnwn Menus
`Pop up Menus
`Pop up Menu Interaction
`Common Pop-up Menus
`Cascading Menus
`Menu Titles
`Menu Items
`
`Controls
`
`Buttons
`
`List Boxes
`
`Text Fields
`
`Other General Controls
`
`Pen-Specific Controls
`
`Toolbars
`
`and Status Bars
`
`Support
`
`Interaction with Controls in Toolbars
`for User Options
`and Status Bar Controls
`Toolbar
`Common Toolbar Buttons
`
`and Status Bars
`
`vi
`
`The Windows
`
`Interface
`
`Guidelines
`
`fnr Software
`
`Design
`
`8
`
`95
`
`95
`96
`
`96
`97
`
`98
`
`101
`
`103
`
`103
`
`104
`
`106
`
`106
`
`109
`
`116
`
`121
`
`121
`
`124
`
`126
`
`128
`
`129
`
`133
`
`134
`
`135
`
`140
`
`141
`
`149
`
`157
`
`163
`
`169
`
`172
`
`173
`
`174
`
`175
`
`176
`
`

`

`Chapter
`
`Secondary Windows
`
`of Secondary Windows
`Characteristics
`Appearance and Behavior
`Window Placement
`Modeless vs Modal
`
`Navigation
`
`Default Buttons
`in Secondary Windows
`of Input
`
`Validation
`
`Property Sheets and Inspectors
`Interface
`Property Sheet
`Property Sheet Commands
`Property Sheet
`
`Closing
`
`Property Inspectors
`Properties of Multiple Selection
`Properties of Heterogeneous Selection
`Properties of Grouped Items
`
`Dialog Boxes
`Dialog Box Commands
`Layout
`Common Dialog Box Interfaces
`
`Palette Windows
`
`Message Boxes
`Title Bar Text
`Message Box Types
`Command Buttons
`Message Box Text
`Popup Windows
`
`in Message Boxes
`
`Contents
`
`179
`
`179
`
`183
`
`183
`184
`
`185
`
`187
`
`187
`
`188
`
`190
`
`191
`
`191
`
`192
`
`193
`
`193
`
`193
`
`194
`194
`
`195
`
`207
`
`209
`
`209
`209
`212
`
`213
`
`215
`
`The Windows
`
`Interface
`
`Guidelines
`
`for Software Design
`
`vii
`
`9
`
`

`

`Contents
`
`PART Ill DESIGN SPECIFICATIONS
`
`AND GUIDELINES
`
`Single Document Window Interface
`
`Multiple Document
`Interface
`Opening and Closing MDI Windows
`and Sizing \4D1 Windows
`Moving
`Between MDI Child Windows
`Switching
`MDI Alternatives
`Workspaces
`Workbooks
`
`Projects
`Selecting Window Model
`or Task
`Presentation of Object
`
`Display Layout
`Data-Centered
`Design
`Combination of Alternatives
`
`The Registry
`
`Registering Application
`
`State Information
`
`Registering Application
`
`Path Information
`
`Registering File Extensions
`
`Creation
`
`Supporting
`Registering Icons
`Registering Commands
`
`Enabling
`Printing
`Registering OLE
`Registering Shell Extensions
`the Quick View Command
`Sound Events
`
`Supporting
`
`Registering
`
`Installation
`
`Copying Files
`Providing Access to Your Application
`Designing Your Installation
`Program
`
`viii
`
`The Windows Interface
`
`Guidelines
`
`for Software Design
`
`10
`
`219
`
`220
`222
`
`223
`225
`
`225
`227
`
`229
`
`231
`
`233
`233
`
`234
`235
`
`235
`
`237
`238
`
`241
`
`242
`249
`250
`
`251
`253
`
`253
`
`254
`256
`
`257
`
`257
`257
`
`260
`
`260
`
`

`

`Installing
`
`Installing
`
`Uninstalling
`
`Supporting
`
`Fonts
`on Network
`Your Application
`Your Application
`AutoPlay
`
`System Naming Conventions
`
`Taskbar
`Integration
`Taskbar Window Buttons
`
`Status Notification
`
`Message Notification
`
`Application Desktop Toolbars
`
`Full-Screen Display
`
`Recycle Bin Integration
`
`Control Panel
`
`Integration
`Adding Control Panel Objects
`Adding to the Passwords Object
`
`Plug
`
`and Play Support
`
`System Settings and Notification
`
`Modeless Interaction
`
`The Interaction Model
`Creating OLE Embedded and OLE Linked Objects
`Transferring Objects
`Inserting New Objects
`
`Displaying Objects
`
`Selecting Objects
`Accessing Commands for Selected Objects
`
`Activating Objects
`
`Outside-in Activation
`
`Inside-out Activation
`
`Container Control of Activation
`
`OLE Visual Editing of OLE Embedded Objects
`The Active Hatched Border
`
`Contents
`
`262
`262
`263
`
`264
`
`266
`
`268
`268
`
`269
`270
`
`271
`
`272
`
`273
`
`273
`
`273
`273
`
`275
`
`275
`
`276
`
`277
`
`279
`279
`
`285
`
`290
`
`293
`295
`
`297
`
`297
`
`297
`298
`
`300
`304
`
`The Windows Interface
`
`Goidelines
`
`for Software Design
`
`ix
`
`11
`
`

`

`Contents
`
`Menu Integration
`Keyboard Interface Integration
`and Palette Windows
`Toolbars Frame Adornments
`Opening OLE Embedded Objects
`Editing an OLE Linked Object
`Automatic and Manual Updating
`and Links
`
`Operations
`Types and Links
`Link Management
`Accessing Properties of OLE Objects
`The Properties Command
`The Links Command
`
`Converting
`
`Types
`
`Using Handles
`Undo Operations
`
`for Active and Open Objects
`
`Displaying Messages
`
`Messages
`ObjectApplication
`OLE Linked Object Messages
`Status Line Messages
`
`Contextual User Assistance
`
`Context
`
`Sensitive Help
`Guidelines
`for Writing Context-Sensitive
`
`Help
`
`Tooltips
`Status Bar Messages
`for Writing Status Bar Messages
`Guidelines
`The Help Command Button
`
`Help
`Task-Oriented
`Task Topic Windows
`for Writing Task Help Topics
`Guidelines
`
`Shortcut Buttons
`
`305
`308
`
`310
`313
`
`316
`
`318
`319
`
`320
`320
`
`321
`
`321
`324
`
`326
`
`329
`
`330
`
`332
`
`332
`334
`
`336
`
`339
`
`339
`342
`
`343
`344
`345
`
`346
`
`347
`347
`
`348
`
`349
`
`The Windows Interface
`
`Guidelines
`
`for Software
`
`Design
`
`12
`
`

`

`Reference Help
`The Reference
`
`Guidelines
`
`Help Window
`for Writing Reference Help
`
`The Help Topics Browser
`The Help Topics
`Tabs
`
`Wizards
`
`Guidelines
`
`Guidelines
`
`for Designing Wizards
`for Wizard Pages
`for Writing Text
`
`Visual Communication
`Composition and Organization
`Color
`
`Fonts
`
`Dimensionality
`
`Design of Visual Elements
`Basic Border Styles
`Window Border Style
`Button Border Styles
`Field Border Style
`Status Field Border Style
`Grouping Border Style
`Visual States tor Controls
`
`Layout
`Font and Size
`
`Capitalization
`Grouping and Spacing
`Alignment
`Placement
`
`Design of Graphic
`Icon Design
`Pointer Design
`
`Images
`
`Selection Appearance
`
`Highlighting
`Handles
`
`TransferAppearance
`
`Open Appearance
`
`Animation
`
`Contents
`
`350
`
`351
`
`352
`
`354
`354
`
`358
`359
`
`363
`
`365
`366
`
`362
`
`370
`
`371
`
`372
`
`372
`373
`
`374
`375
`376
`
`376
`
`377
`
`384
`384
`387
`
`388
`389
`389
`
`390
`
`391
`
`394
`
`395
`
`396
`397
`
`398
`
`399
`
`400
`
`The Windows Interface Guidehnes for Software
`
`Design
`
`xi
`
`13
`
`

`

`401
`
`403
`
`404
`406
`
`408
`411
`
`411
`412
`
`413
`414
`
`414
`
`415
`416
`
`417
`418
`
`419
`419
`
`420
`420
`
`421
`421
`
`421
`422
`
`422
`
`423
`
`424
`
`424
`424
`
`425
`
`425
`
`Contents
`
`Sound
`
`Accessibility
`Types of Disabilities
`Types of Accessibility Aids
`with Screen Review Utilities
`
`Compatibility
`The Users Point of Focus
`Timing and Navigational
`
`Interfaces
`
`Color
`Keyboard and Mouse Interface
`and Support
`Documentation
`Packaging
`
`Usability Testing
`
`Internationalization
`
`Text
`
`Graphics
`
`Keyboards
`Character
`
`Sets
`
`Formats
`
`Layout
`References
`
`to Unsupported Features
`
`Network Computing
`Leverage System Support
`Client-Server Applications
`Shared Data Files
`
`Record Processing
`
`Telephony
`
`Microsoft Exchange
`Coexisting with Other
`Information
`Adding Menu Items and Toolbar
`Connections
`
`Supporting
`
`Installing
`
`Information
`
`Services
`
`Services
`
`Buttons
`
`xli
`
`The Windows Interface
`
`Guidelines
`
`for Software
`
`Design
`
`14
`
`

`

`Contents
`
`PART IV APPENDIXES
`
`Appendix
`
`Mouse
`
`Interface Summary
`
`for Common
`Interaction Guidelines
`Unmodified Mouse Actions
`for Using the SHIFT Key
`Interaction Guidelines
`to Modify Mouse Actions
`for Using the CTRL Key
`Interaction Guidelines
`to Modify Mouse Actions
`
`Appendix
`
`Keyboard Interface Summary
`
`Common Navigation
`Keys
`Common Shortcut Keys
`Windows Keys
`Accessibility Keys
`Access Key Assignments
`
`Appendix
`
`Guidelines Summary
`
`General Design
`Design Process
`Input and Interaction
`Windows
`Control Usage
`
`Integration
`User Assistance
`
`Visual Design
`Sound
`
`Accessibility
`
`International Users
`Network Users
`
`429
`
`431
`
`435
`
`437
`438
`
`439
`440
`
`441
`
`443
`
`444
`444
`
`445
`446
`
`447
`448
`448
`
`449
`449
`
`450
`450
`
`The Windows Interface
`
`Guidelines
`
`for Software
`
`Design
`
`xiii
`
`15
`
`

`

`Contents
`
`Microsoft Windows
`Microsoft Windows NT 3.51
`
`3.1
`
`International Word Lists
`
`Glossary
`
`Bibliography
`
`Index
`
`451
`
`453
`
`455
`
`511
`
`523
`
`527
`
`xiv
`
`The Windows Interface
`
`Guidelines
`
`for Software Design
`
`16
`
`

`

`1717
`
`

`

`18
`
`

`

`Introduction
`
`Welcome to The Windows
`Interface Guidelines for Software Design
`runs with the
`to designing software that
`an indispensable guide
`Microsoft Windows0 operating system The design of your
`interface more than anything else affects how
`softwares
`your product This guide promotes good interface
`design
`experiences
`within and across Windows-
`and visual and functional
`consistency
`
`user
`
`based applications
`
`Whats New
`the direction set by Microsoft OLE the enhancements in
`Continuing
`the Windows user interface provide
`from the
`design evolution
`basic and graphical
`is from an
`to the more object oriented
`that
`to more data centered
`one
`In re
`application-centered
`interface
`and designers may need to rethink the interface
`of
`sponse developers
`the basic components and the respective operations
`their software
`and properties that apply to them This is important because from
`users perspective
`applications have become
`focus
`less the primary
`and more the engines
`behind
`the objects in the interface
`now interact with data without having
`to think about applications
`on their
`allowing them to better
`concentrate
`
`Users can
`
`tasks
`
`When adapting
`you consider
`
`your existing Windows
`the following
`important
`
`based
`
`software make certain
`
`design
`
`aspects
`
`Title bar text and icons
`
`Property sheets
`
`Transfer model
`
`including
`
`drag and drop
`
`19
`
`

`

`Introduction
`
`Pop-up menus
`
`New controls
`
`Integration with the system
`
`Help interface
`OLE embedding and OLE linking
`
`Visual design of windows controls
`
`and icons
`
`Window management
`
`Presentation of minimized windows
`
`These elements
`
`are covered
`
`in depth throughout
`
`this guide
`
`How to Use This Guide
`
`for those who are designing and developing
`This guide is intended
`Windows
`software It may also be appropriate for
`based
`those inter
`better undertanding of the Windows environment and the
`interface principles it supports The content
`of the
`human-computer
`the following
`covers
`areas
`
`ested in
`
`guide
`
`Basic
`
`fundamental
`design principles and process
`design phi
`about human behavior design methodol
`losophy assumptions
`embodied in the interface
`ogy and concepts
`
`Interface elements
`
`descriptive information
`the various
`about
`as when and how to use them
`components in the interface as well
`
`Design details
`information
`about
`and style when using the elements
`
`tive design
`
`specific
`
`the details of effec
`
`of the interface
`
`Additional
`
`information
`
`tion
`
`bibliography
`
`guages
`
`to assist
`
`in product
`
`summary and quick
`comprehensive word list
`localization and
`
`reference informa
`in numerous lan
`
`glossary
`
`xviii
`
`The Windows Interface
`
`Guidelines
`
`for Software Design
`
`20
`
`

`

`Introduction
`
`of an applications
`
`reference is
`
`ou the design and elements
`This guide focuses
`user interface Although an occasional
`technical
`included
`does not generally cover detailed information
`this guide
`about
`technical
`or application programming
`implementation
`faces APIs because
`there are many different
`types of develupment
`software for Windows
`The docu
`tools that you can use to develop
`included with the Microsoft Win32 Software Develop
`mentation
`ment Kit SDK is one source of information
`specific APIs
`about
`
`inter
`
`How to Apply the Guidelines
`
`within and
`This guide promotes visual and functional
`consistency
`across the Windows operating system Although following
`guidelines is encouraged you are free to adopt
`the guidelines that
`best suit your software However by following
`these guidelines
`you
`from one task to
`their skills and experience
`enable users to transfer
`the next and to learn new tasks easily In addition
`evolution toward
`breaks down the lines between traditional
`data-centered
`appli
`design
`in the interface more obvi
`cation domains making inconsistencies
`ous and distracting
`
`to users
`
`these
`
`to the design guidelines does not guarantee
`Conversely adhering
`usability The guidelines are valuable tools but they must be com
`software design pro
`as part of an effecti\
`bined with other factors
`as application of design principles task analysis
`and usability
`
`cess such
`
`prototyping
`
`evaluation
`
`that you do so in the
`You may extend
`these guidelines
`provided
`spirit of the principles on which they are based and maintain
`rca
`with the visual and behavioral
`sonable level of consistency
`aspects of
`the Windows interface
`new elements
`In general avoid
`or
`adding
`them More
`behaviors
`unless the interface does not otherwise support
`for common ele
`avoid
`an existing behavior
`changing
`importantly
`ments
`user builds up expectations
`about
`the workings of an inter
`they also add
`Inconsistencies
`not only confuse
`the user
`
`face
`
`unnecessary
`
`complexity
`
`The Windows Interface
`
`Guidelines
`
`tor Software Design
`
`xix
`
`21
`
`

`

`Introduction
`
`those issued for Windows
`These guidelines supersede
`to the development
`all previous releases arid are specific
`of applica
`for Microsoft Windows Microsoft Windows NTTM
`tions designed
`Workstation and Mic cosoft Windows NT Server
`There is no direct
`relationship between these guidelines and those provided
`for other
`
`version 3.1 and
`
`operating systems
`
`For more information
`
`about special considerations
`concerning
`for both Windows 95 and Windows NT
`developing
`applications
`operating system see Appendix
`Supporting Specific Versions
`of Windows
`
`Conventions Used in This Guide
`
`The following
`
`conventions
`
`are used
`
`throughout
`
`this guide
`
`Convention
`
`Indicates
`
`reference
`
`in this guide
`tn related tnpics
`or other books
`that provide more
`information about
`
`the topic
`
`rI
`LJ
`
`SMALL
`
`CAPITAL
`
`LETTERS
`
`KEYKEY
`
`Italic text
`
`Bold text
`
`Additional
`
`or special
`
`information about
`
`the topic
`
`Names of keys on the keybnard
`example SHIFT CTRL or ALT
`
`fnr
`
`for which the user
`Key combinations
`must press and hold down one key and
`for example
`another
`then press
`CTRLP or ALTF4
`
`New terms and variable
`such as parameters
`
`Win32 API keywords
`entries
`
`expressions
`
`and registry
`
`key
`
`Registry text
`
`Examples of registry entries
`
`Optional
`
`information
`
`xx
`
`The Windows
`
`Interface
`
`Guidelines
`
`for Software Design
`
`22
`
`

`

`
`
`23
`
`

`

`24
`
`

`

`CHAPTER
`
`Design Principles and
`Methodology
`
`user interface is built on principles and
`develop
`well-designed
`tasks This chapter sum
`that centers on users and their
`ment process
`marizes the basic principles of the interface design
`for Microsoft
`Windows
`and methodologies
`includes techniques
`It also
`in an effective human computer
`interface design process
`
`employed
`
`User-Centered Design Principles
`
`Thc information
`in this section describcs the dcsign prineiplcs on
`which Windows
`are based You will
`and the guidelines in this book
`find these principles valuable when designing software for Windows
`
`User in Control
`
`An important principle of user interface design
`the user should
`is that
`in control of the software rather than feeling controlled
`always
`number of implications
`by the software This principle has
`
`feel
`
`The first implication
`is the operational
`assumption
`the user plays an
`tiates actions not
`the computer or software
`role You can use techniques
`active rather than reactive
`to automate
`tasks but implement them in way that allows the user to chose
`the automation
`control
`
`that
`
`the user mi
`
`or
`
`25
`
`

`

`Chapter
`
`Design Principles
`
`and Methodology
`
`The second implication
`of their widely varying
`is that users because
`must be able to personalize aspects of the
`skills and preferences
`The system software provides user access to many of these
`interface
`aspects Your software should
`for different
`sys
`user settings
`reflect
`tem properties
`such
`as color
`
`fonts or other options
`
`is
`
`The final
`be as interactive
`is that your software should
`implication
`mode
`as possible Avoid modes whenever possible
`and responsive
`interaction
`or otherwise limits the
`that excludes
`general
`state
`user to specific interactions When
`mode is the only or the best
`for example for selecting
`particular tool
`design
`in
`make certain the mode is obvious visible the
`drawing program
`result of an explicit user choice and easy to cancel
`
`alternative
`
`For information
`
`about applying the design principle of user in con
`Input Basics and Chapter
`General
`Interac
`trol see Chapter
`These chapters
`tion Techniques
`cover
`the basic forms of interaction
`your software should
`
`support
`
`Directness
`
`Design your software so that users can directly manipulate
`representations of information Whether dragging
`an object
`document
`location in
`users should
`cate it or navigating to
`see
`how the aetiosss
`they take affect
`the objects oil the sereess Visibility
`and choices
`the users mental workload
`of information
`also reduce
`command easier than they can recall
`
`Users
`
`can recognize
`
`its syntax
`
`software
`to relo
`
`and intuitive interface to user
`Familiar metaphors provide
`tasks By allowing
`their knowledge and experience
`users to transfer
`metaphors make it easier to predict and leam the behaviors
`of
`software-based
`
`direct
`
`representations
`
`When using metaphors
`you need not limit
`computer-based
`to its real orld counterpart For example
`mentation
`folder on the Windows
`counterpart
`paper-based
`variety of objects such
`used
`as printers calculators
`to organize
`other folders Similarly Windows
`re
`be more easily
`folder can
`sorted The purpose of using metaphor
`in the interface is to provide
`is not an end in itself
`cognitive bridge the metaphor
`
`imple
`
`unlike its
`can be
`
`desktop
`
`and
`
`The Windows
`
`Interface
`
`Guidelines
`
`for Software Design
`
`26
`
`

`

`Design Principles and Methodology
`
`Chapter
`
`Metaphors
`support user recognition rather than recollection
`Users
`familiar object more easily
`remember
`meaning associated with
`particular command
`the name of
`than they remember
`
`For information
`
`about applying the principle of directness and meta
`General
`and Chapter
`Interaction Techniques
`phor see Chapter
`13 Visual Design These chapters
`cover
`the use of
`respectively
`drag and drop and the use of
`directness in the interface inclnding
`metaphors when designing icons or other graphical elements
`
`Consistency
`
`allows users to transfer existing knowledge to new
`Consistency
`and focus more on tasks be
`tasks learn new things more quickly
`they need not spend time trying to remember
`the differences in
`cause
`interaction By providing
`sense of stability
`interface familiar and predictable
`
`makes
`
`the
`
`consistency
`
`all aspects of the interface
`through
`is important
`Consistency
`ing names of commands
`and
`visual presentation of information
`operational behavior To design consistency
`into software you must
`consider several aspects
`
`includ
`
`consistent
`
`Consistency
`
`product Present common fnnctions nsing
`within
`set of commands and interfaces For example avoid
`Copy command that
`implementing
`carries out an
`immediately
`dialog box that
`operation in one situation
`but
`in another presents
`corollary to this ex
`destination As
`user to type in
`requires
`ample use the same command to carry out functions that seem
`similar to the user
`
`Consistency
`
`within the operating environment By maintaining
`between the interaction
`and interface
`high level of consistency
`by Windows
`your software benefits from
`provided
`skills they have already learned
`users ability to apply interaction
`
`conventions
`
`Consistency
`
`If
`
`particular
`
`behavior
`
`is more
`
`with metaphors
`of
`than its metaphor
`characteristic
`different
`user may have difficulty
`learning to associate that behavior
`communicates
`with an object For example an incinerator
`ferent model
`than
`wastebasket
`for the recoverability of objects
`
`object
`
`implies the
`
`dif
`
`placed
`
`it
`
`The Windows Interface
`
`Guidelines
`
`for Software Design
`
`27
`
`

`

`Chapter
`
`Design Principles and Methodology
`
`is the primary goal
`Although applying the principle of consistency
`common
`focus on the elements
`of this guide the follcwing
`chapters
`Chapter Windows Chapter
`to all Windows-based
`software
`Secondary Win
`Menus Controls
`and Toolbars
`and Chapter
`dows For informatinn
`about closely integrating
`your software with
`the Windows environment see Chapter
`10 Integrating
`with the
`11 Working with OLE Embedded and OLE
`System and Chapter
`Linked Objects
`
`Forgiveness
`
`Users like to explore an interface and often learn by trial and erron
`An effective interface allows for
`interactive discovery
`It provides
`and warns users about potential
`only appropriate sets of choices
`situations where they may damage
`the system or data or better
`makes actions reversible or recoverable
`
`interface
`
`users can make mistakes
`Even within the best designed
`These mistakes
`to the
`can
`be both physical accidentally
`pointing
`wrong command or data and mental making
`wrong decision
`about which command or data to select An effective design
`avoids
`in errors It also accommodates
`that are likely to result
`situations
`potential user errors and makes
`
`it easy for the user to recover
`
`For information
`about applying the principle of forgiveness
`12 User Ass utance which provides information
`about
`Chapter
`the use of contex
`supporting discoverability in the interface through
`reference forms of user assistance For infor
`and
`tual
`task-oriented
`14
`mation about designing for the widest
`range of users see Chapter
`Special Design Considerations
`
`see
`
`The Windows Interface
`
`Guidelines
`
`for Software Design
`
`28
`
`

`

`Feedback
`
`Design Principles and Methndnlngy
`
`Chapter
`
`users actions Visual and sometimes
`Always provide feedback
`be presented with every user interaction to con
`audio cues
`should
`to the users input and to com
`the software is responding
`firm that
`that distinguish the nature of the action
`details
`
`municate
`
`for
`
`is pro
`
`regarding
`
`Effective feedback
`the users interaction
`
`unresponsive
`
`to input
`
`tolerate
`
`is timely and is presented
`as close to the point of
`as possible Even when the computer
`particular task provide the user with information
`cessing
`and how to cancel
`the state of the process
`option Nothing is more disconcerting
`than
`typical user will
`
`is an
`that process
`dead screen that
`few seconds
`only
`
`if that
`
`is
`
`of an unresponsive
`
`interface
`
`It
`
`that
`
`you use be appro
`the type of feedback
`is equally important
`can com
`bar message
`to the task Pointer
`or
`changes
`status
`priate
`municate simple information
`feedback may require
`more complex
`the display of message box
`
`For information
`
`about applying the principle of visual and audio
`14 Special
`13 Visual Design and Chapter
`feedback
`see Chapter
`Design Considerations
`
`Aesthetics
`
`The visual design
`Visual attributes
`
`is an important part of
`softwares
`interface
`and communicate
`provide valuable impressions
`of particular objects At
`cues
`to the interaction behavior
`important
`to remember
`the same time it is important
`that every visual element
`that appears on the screen potentially competes for the users atten
`pleasant environment that clearly
`tion Provide
`contributes to the
`users understanding
`of the information
`graphics or
`presented
`visual designer may be invaluable with this aspect of the design
`
`For information
`
`and guidelines related to the aesthetics
`of your
`13 Visual Design This chapter
`face see Chapter
`covers every
`to font use and window layout
`thing from individual element
`design
`
`inter
`
`The Windnws Interface
`
`Guidelines
`
`fur Snttware Design
`
`29
`
`

`

`Chapter
`
`Design Principles and
`
`ethodology
`
`Simplicity
`
`An interface should
`be simple not simplistic
`easy to use It must also provide access to all
`functionality provided
`by an application Maximizing functionality and maintaining
`sim
`other in the interface An effective design
`plicity work against each
`balances
`these objectives
`
`easy to learn and
`
`phrases
`
`clutter
`
`One way to support simplicity is to reduce
`the presentation of infor
`mation to the minimum required to communicate
`For
`adequately
`for command names or messages
`avoid wordy descriptions
`example
`your design making it difficult
`Irrelevant or verbose
`Another way to
`information
`for users to easily extract essential
`interface is to use natural mappings and
`and presentation of elements
`
`simple but useful
`design
`semantics The arrangement
`their meaning and association
`
`affects
`
`complexity
`
`You can also help users manage
`by using progressive
`of
`disclosure Progressive disclosure involves
`careful organization
`it is shown only at the appropriate time By hid
`information
`so that
`ing information
`the amount of
`to the user you reduce
`presented
`menu displays its
`to process For example
`information
`clicking
`the number of menu
`choices the use of dialog boxes can reduce
`
`options
`
`not imply using unconventional
`Progressive disclosure does
`such
`as requiring modifier
`key as
`for revealing information
`niques
`the only way to access basic functions or forcing the user down
`This can make an inter
`of hierarchical
`interaction
`longer sequence
`face more complex and cumbersome
`
`tech
`
`For information
`about applying the principle of simplicity see Chap
`ter Menus Controls
`and Toolbars
`discusses pro
`This chapter
`and describes how and when to use the
`gressive disclosure in detail
`system supplied elements
`standard
`interface
`
`in your
`
`The Windows Interface
`
`Guidelines
`
`for Software Design
`
`30
`
`

`

`Design Methodology
`
`Design Principles and Methodology
`
`Chapter
`
`Effective interface design
`
`is more than just
`set of rules
`following
`and design methodology
`It also
`user centered
`It requires
`attitude
`work through
`involves early planning of the interface and continued
`the software development
`
`process
`
`consideration
`
`Balanced Design Team
`An important
`is the compo
`in the design of
`product
`and builds it Always try to balance
`sition of the team that designs
`disciplines and skills
`visual design writing
`development
`including
`human factors
`and usability
`assessment Rarely are these character
`istics found in
`team of individuals
`single individual
`so create
`who specialize in these areas and who can contribute uniquely
`final design
`
`to the
`
`Ensure that
`
`team can effectively work and communicate
`the design
`them with
`them in close proximity or providing
`together Locating
`better commu
`common area to work out design
`details often fosters
`nication and interaction
`
`The Design Cycle
`An effective
`
`number of
`involves
`user-centered design
`testing and iterating
`important phases designing
`prototyping
`The following
`sections describe these phases
`
`process
`
`Design
`
`can be the most critical
`The initial work on
`softwares
`be
`design
`cause during this phase you decide the general shape of your prod
`If the foundation work is flawed it is difficult
`uct
`to correct
`
`afterwards
`
`involves not only defining the objectives and
`This part of the process
`who your users are and
`features for your product but understanding
`and goals This includes understanding
`tasks intentions
`their
`as their background
`age gender expertise
`experience
`limitations and special needs their work environment
`
`such
`
`physical
`
`factors
`
`level
`
`The Windows Interface
`
`Guidelines
`
`for Software
`
`Design
`
`31
`
`

`

`Chapter
`
`Design Principles and Methodology
`
`and cultural
`
`equipment
`and their current
`
`social
`
`and physical
`influences
`surroundings
`the depen
`task organization
`the steps
`required
`and the output objective An order-
`dencies redundant
`activities
`entry system may have very different
`users and requirements
`than an
`kiosk
`information
`
`At this point
`framework
`begin defining your conceptual
`your product with the knowledge and experience
`of your
`Ideally you want
`ence
`design model
`to create
`that
`view of the tasks to be performed Consider
`the basic
`and different
`can be employed
`types of metaphors that
`organization
`Observing users at their current
`tasks can provide ideas on effective
`metaphors to use
`
`to represent
`target audi
`the users
`
`fits
`
`conceptual
`
`Document
`
`your design Committing your planned
`to written
`design
`valuable reference point and form of
`format not only provides
`but often helps make the design more concrete
`communication
`reveals issues and gaps
`
`and
`
`Prototype
`
`design model prototype some of the basic
`After you have defined
`aspects of the design This can be done with pencil and paper
`models
`where you create illustrations
`interface to which
`of your
`can be attached
`comic book-like
`other elements
`storyboards
`of sketches
`
`processes
`software using
`
`animation
`
`prototyping
`
`sequences
`movie-like
`or operational
`simulations
`tool or normal development
`tools
`
`that
`
`illustrate specific
`
`in many ways First it provides an
`valuable asset
`prototype is
`the design Second
`effective tool
`for communicating
`it can help you
`define task flow and bet

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket