Upload
maria-patterson
View
233
Download
0
Embed Size (px)
Citation preview
Ch16: User Interface Design
Users often judge a system by its interface rather than its functionality
Poorly designed interfaces can cause users to make catastrophic errors
Poor interface design keeps many systems from being used
Graphics versus text:• most business users interact with systems through GUIs
• some legacy systems still use text-based interfaces
This chapter: • key issues underlying user interface design, not implementation
What makes a good UI? Examples of good and bad?
How do users differ?
Human factors in interface designLimited short-term memory
• people can remember about 7 items of information• if you present more than this, they are more liable to make mistakes.
People make mistakes• mistakes can increase stress and the likelihood of more mistakes
People are different• people have a wide range of physical capabilities• designers should not design for their own capabilities
People have different interaction preferences• pictures/text• mouse/keyboard/voice
UI design principles
Principle Description
User familiarity The interface should use terms and concepts which are drawnfrom the experience of the people who will make most use of thesystem.
Consistency The interface should be consistent in that, wherever possible,comparable operations should be activated in the same way.
Minimal surprise Users should never be surprised by the behaviour of a system.
Recoverability The interface should include mechanisms to allow users torecover from errors.
User guidance The interface should provide meaningful feedback when errorsoccur and provide context-sensitive user help facilities.
User diversity The interface should provide appropriate interaction facilities fordifferent types of system user.
16.1.1 User-system interactionTwo issues:
• providing information from the user to the computer system• providing information from the computer system to the user
Interaction styles• direct manipulation
• menu selection• form fill-in
• command language
• natural language
Give an example of each, strengths, weaknesses
Interaction stylesInteractionstyle
Main advantages Main disadvantages Applicationexamples
Directmanipulation
Fast and intuitiveinteractionEasy to learn
May be hard to implement.Only suitable where there is avisual metaphor for tasks andobjects.
Video gamesCAD systems
Menuselection
Avoids user errorLittle typing required
Slow for experienced users.Can become complex if manymenu options.
Most general-purpose systems
Form fill-in Simple data entryEasy to learnCheckable
Takes up a lot of screen space.Causes problems where useroptions do not match the formfields.
Stock control,Personal loanprocessing
Commandlanguage
Powerful and flexible Hard to learn.Poor error management.
Operating systems,Command andcontrol systems
Naturallanguage
Accessible to casualusersEasily extended
Requires more typing.Natural language understandingsystems are unreliable.
Informationretrieval systems
Multiple user interfaces
Linux operating system
X-windows GUImanager
Graphical userinterface
(Gnome/KDE)
Commandlanguageinterpreter
Unix shellinterface(ksh/csh)
16.3 Information presentation
Information tobe displayed
Presentationsoftware
Display
Note separation of information from presentation sw
Information display factorsIs the user interested in precise information or in data
relationships?
How quickly do information values change?
Must the change be indicated immediately?
Must the user respond to a change?
Is there a direct manipulation interface?
Is the information textual or numeric?
Are relative values important?
1
3
4 20 10 20
Analogue versus digital
0
1000
2000
3000
4000
Jan Feb Mar April May June
Jan2842
Feb2851
Mar3164
April2789
May1273
June2835
16.3.1 ColorColor can
• help the user understand complex information• highlight exceptional events
Guidelines• design for monochrome then add color • don't use too many colors• use color consistently• avoid color pairings which clash• change color to show status change• be aware that color displays are usually lower resolution• remember that some users are colorblind
16.4 User support
Messagepresentation
system
Error messagetexts
Helpframes
Error messagesystem
Helpinterface
Application
E.g.: on-line help, error messages, manuals etc.Integrated with the user interface to help users when they need information or make an error
16.4.1 Error messagesPoor error messages can mean that a user rejects a system
Messages should be polite, concise, consistent, constructive
The background and experience of users should determine message design
Design factorscontext: be aware of where the user is in the program
experience: beginners need more help,others may get annoyed
skill level
style: positive, not funny or demeaning
culture: reflect the country where the system is sold
Nurse input of a patient’s name
Please type the patient name in the box then click ok
Bates, J.
OK Cancel
Error #27
Invalid patient id entered?OK Cancel
Patient J . Bates is not registered
Click on Patients for a list of registered patientsClick on Retry to re-input a patient nameClick on Help f or more information
Patients Help Retry
System-oriented error messageUser-oriented error message
16.4.2 Help system designWhat do you look for?
Help? means
• I want information• I'm in trouble
Take both requirements into account
Guidelines• multiple entry points so the user can get into help from different
places• allow the user to navigate and traverse the help system• others?
16.4.3 User documentationSupply paper documentation as well as on-line information
Design for inexperienced and experienced users
Provide other help such as a quick reference card
Are 1 and 3 being phased out?
What documents might you provide with your system?
User document types
Description ofservices
Functionaldescription
Systemevaluators
How to installthe system
Installationdocument
Systemadministrators
Gettingstarted
Introductorymanual
Noviceusers
Facilitydescription
Referencemanual
Experiencedusers
Operation andmaintenance
Administrator’sguide
Systemadministrators
16.5 User interface evaluationThe user interface design needs some evaluation, but full scale evaluation is expensive
Do these belong in requirements?
Attribute DescriptionLearnability How long does it take a new user to
become productive with the system?Speed of operation How well does the system response match
the user’s work practice?Robustness How tolerant is the system of user error?Recoverability How good is the system at recovering from
user errors?Adaptability How closely is the system tied to a single
model of work?
Simple evaluation techniquesQuestionnaires
Video recording of system use
Instrument the code to collect information about use patterns and user errors
A button for on-line user feedback
Assignment wrt your projectadd user interface requirements (if any) to your chapter 3
design the user interface (include in a separate chapter or subsection)
add help requirements to your spec
describe help facilities (include in a separate chapter or appendix)