16 user interfacedesign

53
User- Interface Design

Upload: incarnate-technology

Post on 28-Nov-2014

609 views

Category:

Technology


0 download

DESCRIPTION

 

TRANSCRIPT

Page 1: 16 user interfacedesign

User-Interface Design

Page 2: 16 user interfacedesign

Topics

• Introduction• User-Interface Design Principles• User Interaction• Information Presentation• User Support

Page 3: 16 user interfacedesign

User Interface (UI)

• UI critically important aspect of software engineering– System users often judge system by

interface rather than its functionality• Why?

– Poorly-designed interface can cause users to make catastrophic errors

• How?

• Poor UI design discourages use of software

Page 4: 16 user interfacedesign

Graphical UIs (GUIs)

• Some old systems still use command-line or text-based UIs

• Most systems today use GUIs– Windows: simultaneous views– Icons: data, functions– Menus: choice of options, memory aids– Pointing: trackball, touchpad, mouse, eye– Graphics: charts, tables, diagrams

• Static or dynamic

Page 5: 16 user interfacedesign

Examples of GUIs (1)The First Commercial GUI:“Xerox’s Star workstation was the first commercial implementation of the graphical user interface. The Star was introduced in 1981 and was the inspiration for the Mac and all the other GUIs that followed.”

This and following screen shots are from the Computer Desktop Encyclopedia.Used with permission.

http://www.computerlanguage.com

Page 6: 16 user interfacedesign

Examples of GUIs (2)

Macintosh GUI

Page 7: 16 user interfacedesign

Examples of GUIs (3)

Page 8: 16 user interfacedesign

GUI Advantages• Easy to learn and use

– Save time in training– Apply skills to new programs

• Fast task-switching– Use different applications concurrently– Information can remain visible in its own

window• Fast, full-screen interaction possible

– Immediate access to anywhere on screen– Make full use of available “real-estate”– Supports multi-screen capabilities

Page 9: 16 user interfacedesign

Topics

• Introduction• User-Interface Design Principles• User Interaction• Information Presentation• User Support

Page 10: 16 user interfacedesign

User-Centered Design

• This chapter / lecture focus:– Design philosophy and issues– Not on implementation of UIs

• User-centered design– Needs of user are paramount– Users involved in design process

• Design UI through prototypes

Page 11: 16 user interfacedesign

UI Design Process

Executableprototype

Designprototype

Produce paper-based design

prototype

Producedynamic design

prototype

Evaluate designwith end-users

Implementfinal userinterface

Evaluate designwith end-users

Analyse andunderstand user

activities

Page 12: 16 user interfacedesign

UI Design Principles

• Determinants: learn about system users’– Needs– Experience– Capabilities

• Constraints: physical and mental limitations– Limited short-term memory

• 7±2 concepts in mind at one time– Mistakes are normal and expected– People fall into habits

Page 13: 16 user interfacedesign

Design Principles: Overview

• User familiarity• Consistency• Minimal surprise• Recoverability• User guidance• User diversity

Page 14: 16 user interfacedesign

User Familiarity

• Interface should be based on user-oriented terms and concepts

• Avoid using computer concepts• E.g., office system:

– Use “letters, documents, folders” etc.– Don’t use “directories, file identifiers” etc.

Page 15: 16 user interfacedesign

Consistency

• Display appropriate level of consistency• Commands and menus should have same

– Format / appearance– Command punctuation– Layout– Abbreviations / keyboard shortcuts

• Error-messages– Same styles / formats from place to place– Same location on screen when they appear

Page 16: 16 user interfacedesign

Minimal Surprise• Extend consistency to commands or actions

– If one command operates in known way,• User should be able to predict operation of comparable

commands• Put the default choice in the same place or sequence

on the screen• E.g.,

– Make either YES or NO the default for all commands

– If keeping a previous file version is default, then don’t make one command delete previous version by default

Page 17: 16 user interfacedesign

Recoverability

• Resilience to user errors• Allow user to recover from errors

– Confirmation of destructive actions– ‘Soft' deletes . . . .– Undo / redo facility

Page 18: 16 user interfacedesign

User Guidance (1)

• Help in same place(s) on all screens– Context-sensitive– Index– Topical– Smart questions

• On-line manuals• Tutorials . . . .

Page 19: 16 user interfacedesign

User Guidance (2)

Page 20: 16 user interfacedesign

User Diversity

• Plan for different types of user• Experience

– Casual/novice vs experienced• Ease-of-use vs efficiency & speed

• Physical disabilities– Poor eyesight

• Configurable font sizes– Blindness

• Automated reading programs– US: Americans with Disabilities Act

Page 21: 16 user interfacedesign

US ADA & GUI Design• Americans with Disabilities Act of 1992

– Widespread implications for employment, architectural design and services

– Applies to private employers with >15 employees, state and local governments, employment agencies & labor unions

• Web designers have been grappling with requirements

• Resourceshttp://consumerlawpage.com/brochure/disab.shtmlhttp://academic.evergreen.edu/g/grovesr/acc_class/resources.html

Page 22: 16 user interfacedesign

Topics

• Introduction• User-Interface Design Principles• User Interaction• Information Presentation• User Support

Page 23: 16 user interfacedesign

User-System Interaction

• Key issues• Info from user to computer system?• Info from computer system to user?• UI metaphor helps to make sense of functions

– “Desktop” for operating system– “Space invaders game” for typing tutor– “3D universe” for dataspace (e.g., TRON, Matrix,

other sci-fi movies)

Page 24: 16 user interfacedesign

Interaction Styles

• Direct manipulation• Menu selection• Form fill-in• Command language• Natural language

Page 25: 16 user interfacedesign

Advantages & DisadvantagesInteractionstyle

Main advantages Main disadvantages Applicationexamples

Directmanipulation

Fast and intuitiveinteractionEasy to learn

May be hard toimplementOnly suitable wherethere is a visualmetaphor for tasksand objects

Video gamesCAD systems

Menuselection

Avoids user errorLittle typingrequired

Slow for experiencedusersCan become complexif many menu options

Most general-purpose systems

Form fill-in Simple data entryEasy to learn

Takes up a lot ofscreen space

Stock control,Personal loanprocessing

Commandlanguage

Powerful andflexible

Hard to learnPoor errormanagement

Operating systems,Library informationretrieval systems

Naturallanguage

Accessible tocasual usersEasily extended

Requires more typingNatural languageunderstandingsystems are unreliable

Timetable systemsWWW informationretrieval systems

Page 26: 16 user interfacedesign

Direct Manipulation: Example – PowerPoint

• Open PowerPoint and study how objects can be – Grown– Shrunk– Flipped– Rotated– Copied– Colored. . . .

Through direct manipulation using “tools”

Page 27: 16 user interfacedesign

Menu Systems

• Select from lists of possibilities– Point and click with mouse– Use cursor keys– Type name of selection– Touchscreens

• Usually integrate automated help facilities– Help cursor– Pop-ups ?

Pop-uptext

Page 28: 16 user interfacedesign

Control Panel Interface

Title

Method

Type

Selection

NODE LINKS FONT LABEL EDIT

JSD. example

JSD

Network

Process

Units

Reduce

cm

Full

OUIT

PRINT

Grid Busy

Page 29: 16 user interfacedesign

Menu Systems: Benefits

• Easy to learn – no memorization• Reduced typing – faster data entry• User errors trapped by interface• Context-dependent help

Page 30: 16 user interfacedesign

Menu Systems: Problems

• Best for small # of choices– May have to provide sub-menus for complex

situations

• AND and OR relations hard to represent• Slower than command language or keyboard

shortcuts– So provide those as options

Page 31: 16 user interfacedesign

Form-Based Interface

Title

Author

Publisher

Edition

Classification

Date ofpurchase

ISBN

Price

Publicationdate

Number ofcopies

Loanstatus

Orderstatus

NEW BOOK

Page 32: 16 user interfacedesign

Command Interfaces

• User types commands to give instructions to system e.g. UNIX

• May be implemented using cheap terminals.• Easy to process using compiler techniques• Commands of arbitrary complexity can be

created by command combination• Concise interfaces requiring minimal typing

can be created

Page 33: 16 user interfacedesign

Command Interfaces: Problems

• Users have to learn and remember command language. – Unsuitable for occasional/casual users

• Need to be able to type• Users make errors in commands

– Need good error detection and recovery

Page 34: 16 user interfacedesign

Natural Language Interfaces

• User types command in natural language. • Vocabulary usually limited• Confined to specific application domains; e.g.,

– Timetable enquiries– Medical systems

• Experienced users: too much typing• See ASK JEEVES

Page 35: 16 user interfacedesign

Ask Jeeves

Page 36: 16 user interfacedesign

Multiple UIs

Operating system

GUImanager

Graphical userinterface

Commandlanguage

interpreter

Commandlanguageinterface

Page 37: 16 user interfacedesign

Topics

• Introduction• User-Interface Design Principles• User Interaction• Information Presentation• User Support

Page 38: 16 user interfacedesign

Information Presentation

Information tobe displayed

Presentationsoftware

Display

{numeric, textual} X {static, dynamic}Information may be

Page 39: 16 user interfacedesign

Information Display Factors

• Questions to consider in designing interface– Is user interested in precise information or

data relationships?– How quickly do information values change?– Must change be indicated immediately?– Must user take some action in response to

change?– Is there a direct manipulation interface?– Is information textual or numeric? – Are relative values important?

Page 40: 16 user interfacedesign

Data Visualization• Concerned with techniques for displaying

large amounts of information• Visualization can reveal relationships

between entities and trends in data• Examples of data visualization applications:

– Weather information collected from number of sources

– State of telephone network as linked set of nodes

– Chemical plant visualized by showing pressures and temperatures in linked set of tanks and pipes

– Model of molecule displayed in 3 dimensions– Web pages displayed as hyperbolic tree

Page 41: 16 user interfacedesign

Color Displays• Color adds extra dimension to interface

and can help user understand complex information structures

• Can be used to highlight exceptional events• Common mistakes in use of color in

interface design include:– Use of color to communicate non-obvious specific

meaning• E.g., red may mean “hot” to a chemist but “forbidden” to a

driver– Over-use of color in display – confusing

Page 42: 16 user interfacedesign

Guidelines for Effective Use of Color in Displays

• Don't use too many colors (max 4-5 in window)

• Don’t use colors as simply as decoration• Change of color must imply change of

state• Use color coding to support tasks• Allow users to control color coding• Design for monochrome then add color• Use color coding consistently• Avoid color pairings which clash• Use color change to show status change• Be aware that color displays usually lower

resolution• Don’t make large areas of screen BLINK

Can cause

seizures

Page 43: 16 user interfacedesign

Topics

• Introduction• User-Interface Design Principles• User Interaction• Information Presentation• User Support

Page 44: 16 user interfacedesign

User Support

• User guidance includes– On-line help– Error messages– Manuals– Tutorials

• Integrate help with interface: context-sensitive• Integrate help and error messages

– Easy to get explanation, tips, suggestions• Advanced help keeps user profile

Page 45: 16 user interfacedesign

Help and Message System

Messagepresentation

system

Error messagetexts

Helpframes

Error messagesystem

Helpinterface

Application

Page 46: 16 user interfacedesign

Error Messages• Bad error messages can lead users to

reject entire system• Consider background and experience of users

in designing messages• Messages should be

– Polite– Concise– Consistent– Constructive

• Avoid classic errors– Never be rude– Don’t try to be funny– Don’t condescend to your users

Page 47: 16 user interfacedesign

Design Factors in Message Wording

• Context-sensitive• Experience – offer verbose / terse modes• Skill level – offer beginners / expert modes• Style – positive, active (never rude, not funny)• Culture – apply localization to avoid offending

people in different cultures

Page 48: 16 user interfacedesign

System and User-Oriented Error Messages

• System-oriented message– Useful for technical staff– Detail internal states of system– Good for diagnostics and repair– Usually complete gibberish for users

• User-oriented message– Useful for user to fix a problem– Reassuring– Give instructions on whom to contact if appropriate

Page 49: 16 user interfacedesign

A Friendly, Helpful Message System

Encourages more positive attitude towards the operating system, the computer and operations:ENTER USER PASSWORD:

vsPlease enter user password:

UNKNOWN SYNTAX

vsPardon?

CAN'T INITIATE NEW SESSIONS NOWvs

System Alpha not yet available--try again later

Page 50: 16 user interfacedesign

A Friendly, Helpful Message System (cont'd)

• If possible, show what can be done to fix problem • Explain WHO can do WHAT to help user in trouble• Include telephone numbers

OUT OF DISC SPACE (FSERR 46).vs

OUT OF DISC SPACE (FSERR 46).Check :FREE for free space

Verify :BUILD or :FILE commands for typing error;use 32 extents if possible; check device class;call Ramesh @ (514) 234-5678 X.216 for help

Page 51: 16 user interfacedesign

A Friendly, Helpful Message System (cont'd)

• Gives operators critical information fast• Especially important when user gets system

information

DCU LOGGING IN PROGRESS (THIS IS NORMAL)

MAKE LDEV 3 ONLINE RIGHT NOW: PRESS UNLOAD/LOAD

STREAMS FACILITY NOT ENABLEDCall operations for :STREAMS 10

Page 52: 16 user interfacedesign

Help System Design

• Help? means ‘Help, I want information”• Help! means “HELP. I'm in trouble”• Both of these requirements have to be taken

into account in help system design• Different facilities in help system may be

required

Page 53: 16 user interfacedesign

DISCUSSION