CMPUT 301: Lecture 18 Usability Paradigms and Principles Lecturer: Martin Jagersand Department of...
-
Upload
juliana-gwen-rice -
Category
Documents
-
view
225 -
download
0
Transcript of CMPUT 301: Lecture 18 Usability Paradigms and Principles Lecturer: Martin Jagersand Department of...
CMPUT 301: Lecture 18Usability Paradigms and Principles
Lecturer: Martin JagersandDepartment of Computing Science
University of Alberta
Notes based on previous courses byKen Wong, Eleni Stroulia
Zach Dodds, Martin Jagersand
2
Lecture notes:
• Prepare for lectures by reading chapters in Dix according to the course plan (on the course home page)
• After the lecture the notes are available in
http://www.cs.ualberta.ca/~jag/courses/c301/
(recently the links to my notes have been overwritten from the main page. The main page is in an account the I don’t have access to)
3
Usability Principles
• Three main categories:– learnability
– ease for new users to begin effective interaction and achieve maximal performance
– flexibility– multiplicity of ways for the user and system to
exchange information
– robustness– level of support provided to the user for assessing
achievement
4
Learnability
• Principles affecting learnability:– synthesizability
– Access how past operations affect state
– predictability– Predict effects of future observations
– Familiarity– Affordance, real world metaphor
– Generalizability– Consistency
– Similar situations -> similar interaction patterns
5
Learnability
• Synthesizability:– the user can form a mental model of the
behavior of the system– important for the user to predict system
behavior
6
Learnability
• Honesty:– related to synthesizability– the user interface provides an observable and
informative account of a change in the system state(immediately or eventually)
– e.g., file management(direct manipulation versus command line)
7
Learnability
• Predictability:– avoid surprises
(unless you are designing a game)– the user can learn the effect of an action based
on what has already happened– user-centered concept, since computers are
largely deterministic
8
Learnability
• Useful heuristics in design:
1. Operation visibility:– related to predictability– the user can discover what operations can be
done
2. State dependence• Difficult for user to anticipate effects of an
operation if it depends on an invisible state• Example vi editor: edit or command mode
9
Learnability
• Familiarity:– the user can exploit existing knowledge in one
domain for effective interaction with a new system– metaphors or guessability
– e.g., typewriter and word processors
– affordances– i.e., appearances suggest behavior
– e.g., stop/play buttons
10
Learnability
• Generalizability:– the user can extend their knowledge of specific
behaviors to similar, unencountered situations– e.g., drawing squares and circles– e.g., cut and paste, drag and drop
11
Learnability
• Consistency:– the likeness in behavior from similar situations– many forms of consistency
– within the product
– with earlier versions
– with standards
– with metaphors
– with user expectations
12
Flexibility
• Principles affecting flexibility:– dialog initiative– multi-threading
– multi-modality
– task migratability– substitutivity
– representation multiplicity
– equal opportunity
– customizability
13
Flexibility
• Dialog initiative:– system preemptive
– system initiates dialog
– user responds to requests for information
– e.g., alert dialog
– user preemptive– user initiates dialog
– system responds
– more flexible
– need to balance both forms of initiative
14
Flexibility
• Multi-threading (and multi-tasking):– support user interaction pertaining to more than one
task at a time– interleaved
– direct interaction with a single task at a time
– e.g., using multiple windows for overlapping tasks
– concurrent– interaction among tasks is “simultaneous”
– e.g., working in one window while beep goes off for new email in another window
15
Flexibility
• Multi-modality:– related to multi-threading– the user interface combines channels of
communication for input or output– separate
– e.g., mouse, keyboard, or speech input to open a window
– fused– e.g., mouse + keyboard
– e.g., visual error warning with sound
16
Flexibility
• Task migratability:– the ability to transfer control for executing tasks
between the system and the user– manual, semi-automatic, automatic– e.g., spellchecking
17
Flexibility
• Substitutivity:– allowing equivalent values of input and output
to be substituted for each other– e.g., using arithmetic expressions in numeric
fields
18
Flexibility
• Representation multiplicity:– related to substitutivity– providing many ways to render the system state– e.g., graphic image and levels
19
Flexibility
• Equal opportunity:– related to substitutivity– blurring the distinction between input and
output– use output as input– e.g., dimensioned lines, spreadsheets, math
equations
20
Flexibility
• Customizability:– allowing the user interface to be modified by the
user or the system– adaptability
– user initiated
– e.g., write scripts, change looks, etc.
– adaptivity– system initiated adjustments
(based on its knowledge from observing the user)
– e.g., record scripts, etc.
21
Robustness
• Principles affecting robustness:– observability
– browsability
– defaults
– reachability
– persistence
– recoverability– commensurate effort
– task conformance– responsiveness
22
Robustness
• Observability:– the user can evaluate the system internal state
through its perceivable interface representation– four related principles …
23
Robustness
• Browsability:– related to observability– the user can explore the current internal system
state via the limited view provided at the interface
– browsing has no side-effects on the state
24
Robustness
• Defaults:– related to observability– the user is assisted by default values that suggest an
appropriate response– recognition versus recall of what is right– static
– defaults do not evolve during the session
– dynamic– defaults do evolve (i.e., the system adapts)
25
Robustness
• Reachability:– related to observability– the user can navigate through the observable
system states
26
Robustness
• Persistence:– related to observability– the duration of the effect of a communication
and the ability of the user to exploit that effect– versus transient– e.g., visual versus audio information
27
Robustness
• Recoverability:– the user can take some corrective action after
recognizing an error has occurred– forward error recovery
– effect cannot be revoked
– fix effect somehow or start over
– backward error recovery– effect can be undone
28
Robustness
• Commensurate effort:– if it is difficult to undo a given effect on the
state, then it should have been difficult to do in the first place
– e.g., deleting files
29
Robustness
• Task conformance:– the system supports all the tasks of interest in a
way the user understands– requires task analysis
30
Robustness
• Responsiveness:– the rate of communication between the system
and the user– in general, the shorter, the better