Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September...

33
Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September 2010

Transcript of Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September...

Page 1: Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September 2010.

Design Principles – Part 3 of 3

Robustness PrinciplesStyleguidesSummary

Last revision September 2010

Page 2: Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September 2010.

UI Design - Georgia Tech 2

3. Robustness Principles

• Supporting user in determining successful achievement and assessment of goals Observability Recoverability Responsiveness Task Conformance

Page 3: Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September 2010.

UI Design - Georgia Tech 3

Robustness: Observability

• Can user determine internal state of system from information provided? Browsability

– Explore current state (without changing it)– Reduces memory load– But don’t overwhelm user with information either

Reachability– Navigate through observable states

Persistence– How long does observable state persist?

Observability also aids learnability

Page 4: Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September 2010.

UI Design - Georgia Tech 4

Observability - Role of Feedback

• Feedback helps create observability• Feedback taxonomy (generally don’t need

all of these) “I understand what you have asked me to do” “I am doing what you have asked me to do”

– “And it will take me this much longer”– Song and dance routine to distract user (busy interval

as opposed to idle interval)– “And here are some intermediate results to keep you

happy until I am done “All done, what’s next?”

Page 5: Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September 2010.

UI Design - Georgia Tech 5

Observability - Forest + Trees

Work area, showingpart of a larger drawing

Menus,feedback,

etc.

Representsoverall drawing

Represents portionof drawing seen in

work area

Overall displayarea

Page 6: Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September 2010.

UI Design - Georgia Tech 6

Observability - How Did I Get Here?

• Tree showing history of queries

Presidentselected before age

50

&Democratic

&from East of Mississippi

&from farm

family

&served two

terms in office

&graduate degree

Page 7: Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September 2010.

UI Design - Georgia Tech 7

Observability - How did I Get Here?

• List of pages visited

• Graphicalhistories

Page 8: Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September 2010.

UI Design - Georgia Tech 8

Observability – Where am I, How did I Get Here?

Bread crumbs on web site

Page 9: Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September 2010.

UI Design - Georgia Tech 9

Observability - Where Did I Come From, Where can I go?

Page 10: Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September 2010.

UI Design - Georgia Tech 10

Observability – Acrobat Reader

Acrobat Reader with ToC to give context

Forest is the bookmarks, tree is the single page

Page 11: Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September 2010.

UI Design - Georgia Tech 11

Observability - Scroll Bar

• Scroll bar size indicates % in view - but does not indicate absolute sizes.

• Can add other info, such as Page 5 of 12

Page 12: Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September 2010.

UI Design - Georgia Tech 12

Observability - feedback placement

• Where the eyes are Cursor shape

– In Newshole• Thumbs down – problem• Buddha – to encourage patience

• Use of sounds can supplement or sometimes replace use of cursor

Page 13: Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September 2010.

UI Design - Georgia Tech 13

Observability - Forest + Trees

Work AreaList 2

Item 1

Item 2

Item 3

Page 14: Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September 2010.

UI Design - Georgia Tech 14

Observability - Memory Load

• Use as a tool to decrease user memory load

• Also to avoid mis-steps Gray-out disabled menu items Indicate type of input (alpha, numbers)

expected

Page 15: Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September 2010.

UI Design - Georgia Tech 15

Do Not Set the User Up

• Make it hard for the user to make errors Instead of allowing them to make error

and then saying “tsk, tsk”

• Gray out disabled menu items• Ask for confirmation of major actions

Page 16: Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September 2010.

UI Design - Georgia Tech 16

Do Not Set the User Up

• Don’t let the user do something that will lead to an error message

Page 17: Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September 2010.

UI Design - Georgia Tech 17

Robustness: Recoverability

• Ability to take corrective action upon recognizing error Forward recovery

– Ability to fix when we can’t undo Backward recovery

– Undo previous error(s) Abort operation underway

– Only makes sense if is a slow operation

Page 18: Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September 2010.

Why is recoverability such an important feature?????

• Encourages experimentation (hence learnability) by reducing cost of making mistakes

• Allows us to work faster We know we can easily recover

UI Design - Georgia Tech 18

Page 19: Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September 2010.

UI Design - Georgia Tech 19

Robustness: Responsiveness

• Response to motor actions Keyboarding, mouse movement - less than 100

msec. Rich Human Factors literature on this

• Consistency is important - experimental result Users preferred longer but more consistent

response time Times that differed 10% to 20% were seen as

same (JND)

Page 20: Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September 2010.

Robustness: Responiveness

• Sometimes is argued that “too fast” is not good because: Makes user feel like they need to do

something quickly to keep up with computer?

Other reasons?? ??

• Do you agree/disagree?

UI Design - Georgia Tech 20

Page 21: Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September 2010.

UI Design - Georgia Tech 21

Robustness: Task Conformance

• Does system support all tasks user wishes to perform in expected ways? Task completeness

– Can system do all tasks of interest?

Task adequacy– Can user understand how to do tasks?

Does it allow user to define new tasks?– Extensibility

Page 22: Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September 2010.

Task Conformance - Extensibility

• What are mechanisms for providing extensibility?

• What are their pros and cons?

UI Design - Georgia Tech 22

Page 23: Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September 2010.

UI Design - Georgia Tech 23

Using the Principles

• In doing design and implementation of your project, revisit this list

• Assess your design against these usability principles

Page 24: Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September 2010.

UI Design - Georgia Tech 24

Styleguides

• Codify many of these principles for a particular look and feel Mac OS, Windows, Motif, Palm,

Blackberry

• Developed in concert with toolkit, but go beyond toolkit

Page 25: Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September 2010.

Styleguides

• “How to” for a specific UI

UI Design - Georgia Tech 25

Page 26: Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September 2010.

UI Design - Georgia Tech 26

Typical TOC - MAC OS X

Introduction to the Apple HumanInterface Guidelines

What Are the Mac OS X Human Interface Guidelines?Who Should Read This Document?Organization of This DocumentConventions Used in This DocumentSee Also

Part I: FundamentalsHuman Interface Design

Human Interface Design PrinciplesKeep Your Users in Mind

The Development ProcessDesign DecisionsManaging ComplexityExtending the InterfaceInvolving Users in the Design Process

Part II: The Macintosh ExperienceFirst Impressions

PackagingInstallationGeneral Installer GuidelinesSetup Assistants

Mac OS X EnvironmentThe FinderThe DockThe File SystemMultiple UsersRemote Log InAssistive TechnologiesNetworkingApplication ServicesDisplaysThe Always-On Environment

Using Existing TechnologiesProviding User AssistanceInternationalizing Your ApplicationStoring PasswordsPrintingChoosing ColorsSetting Fonts and Typography CharacteristicsSelecting Attributes Associated With PeopleSpeech Technologies

Part III: The Aqua InterfaceUser Input

The Mouse and Other Pointing DevicesThe KeyboardSelectingEditing Text

Drag and DropDrag and Drop OverviewDrag and Drop SemanticsSelection FeedbackDrag FeedbackDestination FeedbackDrop FeedbackClippings

TextFontsStyle

IconsIcon Genres and FamiliesIcon Perspectives and MaterialsConveying an Emotional Quality in IconsSuggested Process for Creating Aqua IconsTips for Designing Aqua Icons

CursorsStandard CursorsDesigning Your Own Cursors

Page 27: Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September 2010.

UI Design - Georgia Tech 27

More TOC

MenusMenu BehaviorDesigning the Elements of MenusThe Menu Bar and Its MenusContextual MenusDock Menus

WindowsTypes of WindowsWindow AppearanceWindow BehaviorUtility WindowsThe About WindowPreferences WindowsInspectors and Info WindowsFind WindowFonts Window and Colors Window

DialogsTypes of Dialogs and When to Use ThemDialog BehaviorThe Open DialogDialogs for Saving, Closing, and QuittingThe Choose DialogThe Printing Dialogs

ControlsButtonsSelection ControlsAdjustment ControlsIndicatorsText ControlsView ControlsGrouping Controls

Layout ExamplesPositioning ControlsSample LayoutsGrouping ControlsUsing Small and Mini Versions of Controls

Keyboard Shortcuts Quick ReferenceTab View Differences Between Mac OS X VersionsDocument Revision History

Page 28: Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September 2010.

UI Design - Georgia Tech 28

Excerpt from OS X Styleguide

Drag and Drop Overview

Ideally, users should be able to drag any content from any window to any other window that accepts the content’s type. If the source and destination are not visible at the same time, the user can create a clipping by dragging data to a Finder window; the clipping can then be dragged into another application window at another time.

Drag and drop should be considered an ease-of-use technique. Except in cases where drag and drop is so intrinsic to an application that no suitable alternative methods exist—dragging icons in the Finder, for example—there should always be another method for accomplishing a drag-and-drop task.

The basic steps of the drag-and-drop interaction model parallel a copy-and-paste sequence in which you select an item, choose Copy from the Edit menu, specify a destination, and then choose Paste. However, drag and drop is a distinct technique in itself and does not use the Clipboard. Users can take advantage of both the Clipboard and drag and drop without side effects from each other.

A drag-and-drop operation should provide immediate feedback at the significant points: when the data is selected, during the drag, when an appropriate destination is reached, and when the data is dropped. The data that is pasted should be target-specific. For example, if a user drags an Address Book entry to the “To” text field in Mail, only the email address is pasted, not all of the person’s address information.

You should implement Undo for any drag-and-drop operation you enable in your application. If you implement a drag-and-drop operation that is not undoable, display a confirmation dialog before implementing the drop. A confirmation dialog appears, for example, when the user attempts to drop an icon into a write-only drop box on a shared volume, because the user does not have privileges to open the drop box and undo the action.

(Color added for emphasis.)

Page 29: Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September 2010.

UI Design - Georgia Tech 29

Styleguides

• General User Interface Design Style Guides Apple Human Interface Guidelines (Mac OS X) Design Guidelines Microsoft User Interface Guidelines (Click in the left tree on User Interface Design...) Windows XP Guidelines Yale Web Style Guide (2nd Edition) Java Look and Feel Guidelines (version 1) Java Look and Feel Guidelines version 2 Java Look and Feel Guidelines: Advanced Topics IBM 3D design Guidelines Silicon Graphics Indigo Magic User Interface Guidelines

• Open Source Usability Guidelines Motif Style Guide KDE User Interface Guidelines Gnome Human Interface Guidelines 1.0

• Corporate User Interface Standards and Guidelines (samples) Telstra Online Standards Taligent Human Interface Guidelines Ameritech Graphical User Interface Standards and Design Guidelines

• http://www.experiencedynamics.com/science_of_usability/ui_style_guides/

Page 30: Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September 2010.

UI Design - Georgia Tech 30

And More Styleguides ….

• Government funded Usability Guidelines MITRE Guidelines for Designing User Interface Software (US Airforce) Research based Web Design and Usability Guidelines (Dept. of Health and Human Services) Cancer Institute Usability Guidelines NASA User Interface Guidelines Canadian Command Decision Aiding Technology (COMDAT) Operator-Machine Interface (OMI) Style Guide: Version

1.0

• Gaming Devices (J2ME games) Games Usability Guidelines (from Nokia)

• Wireless and Mobile Usability Guidelines Palm OS Design Guidelines Openwave GSM Guidelines Openwave Top 10 Usability Guidelines for WAP Applications Blackberry and RIM wireless handheld UI Developers Guide (PDF) Sprint Usability Requirements for XHTML (Application Developers Program) NTT DoCoMo imode service guideline (user interfaces)

• Accessibility Guidelines Techniques for Web content Accessibility Guidelines 1.0

Page 31: Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September 2010.

Design Patterns

• UI design elements that have been found useful in practice Typically follow / instantiate design guidelines Typically more macroscopic than low-level

interaction techniques such as menu selection, dialogue boxes, icon drag, slider dial

• Provide a design vocabulary – a palette• Example at http://www.welie.com/patterns/

Includes code to implement Are many other web sites

UI Design - Georgia Tech 31

Page 32: Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September 2010.

Design Pattern Books (are more)

UI Design - Georgia Tech 32

Web-centric

Page 33: Design Principles – Part 3 of 3 Robustness Principles Styleguides Summary Last revision September 2010.

UI Design - Georgia Tech 33

End Part 3 of 3