Вы находитесь на странице: 1из 22

Lecture 5 Context 1 2 3 4 5 6 7 8 9 10 11 12 13 HCI Introduction HCIThe Human Element HCIThe Computer HCIThe Interaction

Usability Paradigms
The Design Process Models of the User in Design Task Analysis Dialog Notations & Design Models of the System Support/Help Evaluation Hypertext, Multimedia, WWW

CSC3402 GUI Programming

Usability Paradigms

Usability Paradigms We have considered human and computer elements and available interaction styles. A designer has two important questions to answer: 1. How can we ensure the usability of our system? 2. How can usability be demonstrated or measured? There are two approaches to answering these questions: by example/paradigm/pattern (consider historical successes) and by deriving principles (from theory) for eective interaction. The distinction between paradigm & principle is an important reection of the history of HCI. Adopting new paradigms, or using existing paradigms cannot guarantee success in building usable interfaces. Using principles to evaluate and guide application of paradigms can ensure the creation of usable interfaces.
Usability Paradigms 2

CSC3402 GUI Programming

Lecture 5 Summary Paradigms for Interaction Usability Principles

Reading Dix et al: 2ed: Chapter 4 Usability paradigms and principles 3ed: Chapter 4 Paradigms + 7.2 Principles to support usability Reading 1.3 A brief history of HCI technology

CSC3402 GUI Programming

Usability Paradigms

Paradigms for Interaction Advances in HCI have come about as a result of interaction innovation. Considering these serves as a history of interactive systems development. The following list are not mutually exclusivesome ideas occur more than once. Time-Sharing 194050s Video Display Units VDUs mid 1950s Programming Toolkits late 1960s Personal Computing 1970s Window systems and WIMP interfaces 1980s The Metaphor Direct Manipulation 1980s Language vs action

CSC3402 GUI Programming

Usability Paradigms

Paradigms . . . Hypertext Multi-Modality multi-media Computer-Supported Cooperative Work The World Wide Web 1990s Agent-Based interfaces Ubiquitous Computing

CSC3402 GUI Programming

Usability Paradigms

History of Interaction Time-Sharing batch processing replaced by multi-user systems start of non-preplanned activity (true interactivity) Video Display Units VDUs An alternative to paper-based teletype/lineprinters Initially for presenting data 1962 Sketchpad (Sutherland): computers used for visualisation dramatic turning point in history of computing

CSC3402 GUI Programming

Usability Paradigms

History of Interaction ... Programming Toolkits Based on ideas from the 1960s NLS/Augment project (Engelbart) Key concepts: the right toolkit provides useful building blocks for creation of computing applications small components can be composed to form larger tools and applications; e.g.: Xlib X Toolkit Motif Personal Computing Alan Kay Xerox PARC the Dynabook concept: a small, powerful, personal computer 1980s: Apple II / Apple MacIntosh / IBM PC: desktop & portables 1990s: Handheld PDAs capable of signicant display/processing
Usability Paradigms 7

CSC3402 GUI Programming

History of Interaction ... Window systems and WIMP interfaces users pursue many tasks at a time multiple windows partition dialog widgets/gadgets now familiar to all users rst commercial system: Xerox Star 1981 The Metaphor a powerful way to describe & understand a system basic concept: real world object is like a computer object Computer World screen desktop le document directory folder wordprocessor typewriter metaphor sometimes fails; e.g. Early Mac computers: Why should dragging a oppy to the wastepaper basket eject the disk?
Usability Paradigms 8

CSC3402 GUI Programming

History of Interaction ... Direct Manipulation phrase coined by Shneiderman 1982: visibility of objects of interest incremental action with rapid feedback reversibility encourages users to explore syntactic correctness of actions: every user action possible is a legal operation. Xerox Star, Apple Lisa/Mac

CSC3402 GUI Programming

Usability Paradigms

History of Interaction ... Direct Manipulation .... command language replaced by action model-world metaphor: the interface is the system
Command line interface Command User Interface Action System

Direct manipulation interface Action User System

what you see is what you get (WYSIWYG). Problems: What you see is all you get!! Wordprocessors may restrict exibility in order to maintain the D.M metaphor (e.g. oating image placement) Processing cost: (re-)displaying a partially completed task incrementally can be expensive.
Usability Paradigms 10

CSC3402 GUI Programming

History of Interaction ... Language vs action Are language (e.g. command based) interfaces better than action (e.g. direct manipulation) interfaces? direct manipulation uses actions to perform tasks  clear feedback reduces errors  repetitive tasks can be very tedious... some tasks are very dicult to simply achieve with actions e.g. select and print all program les in directory language can provide a means to achieve complex tasks e.g. for f in *c; do lpr $f done Use of agents and programming by example can capture action sequences and create generic procedure.

CSC3402 GUI Programming

Usability Paradigms

11

History of Interaction ... Hypertext non-linear text browsing via linked documents invented by Vannevar Bush 1945; e.g. electronic textbook Multi-Modality (multi-media) modes are human communication channels * visual, haptic, audio * olfactory?, taste? Computer-Supported Cooperative Work PC + network + appropriate software tools ability for geographically separate individuals to work as groups asynchronous tools: electronic mail most obvious success story synchronous tools: chat-style communication, web-video
Usability Paradigms 12

CSC3402 GUI Programming

History of Interaction ... The World Wide Web = TCP/IP + HTTP + HTML + Servers + Browsers WWW project @ CERN 1989 (Tom Berners-Lee) Mosaic @ NCSA 1993 (Marc Andreeson) Netscape Mozilla Agent-Based interfaces agents act on our behalf; embodied agents: Hypercard and Eager the cat; Word paperclip icon diuse agent distributed through system: Excel and , mail lter agents act in a world the user could act upon Compare: behind-the-counter shopkeeper vs roaming shop-assistant

CSC3402 GUI Programming

Usability Paradigms

13

History of Interaction ... Ubiquitous Computing computers thought of as box on desk, but computers exist in many devices watches, microwaves, cars, videos, TVs Weiser (Xerox PARC) envisions a range of computing devices of dierent scale (yard, foot, inch) some examples foot: one/person: laptop yard: shared resource: LiveBoard, entertainment systems inch: many/person: PDAs, cameras, GPS, phones, wireless devices enabling technology: LCD screens wireless networking pen based systems, voice recognition Virtual Reality technology
Usability Paradigms 14

CSC3402 GUI Programming

Usability Principles There are dierent views about categorisation of usability principles. Dix et al provide one version: Learnability the ease of learning for new users : Predictability, Synthesizability, Familiarity, Generalizability, Consistency Flexibility how many ways can human and computer exchange information: Dialogue initiative, Multi-threading, Task migratability, Substitutivity, Customizability Robustness support for users to successfully achieve their goals: Observability, Recoverability, Responsiveness, Task conformance Other views will be presented later

CSC3402 GUI Programming

Usability Paradigms

15

Learnability Predictability The user is able to reliably base actions on past experience. The user should be able to predict the outcome of an action. Operation Visibility is the degree to which the possible actions are suggested by the interface. Synthesizability Support for the building of user mental models.  Direct manipulation Immediate honesty helps build models  Command Line Interface Eventual honesty poor for novices Familiarity Can other knowledge be used in understanding a new application? Sometimes called the guessability of a system. Related to aordance: placing a familiar looking object on a screen can suggest its use.
Usability Paradigms 16

CSC3402 GUI Programming

Learnability .... Generalizability Can specic interaction patterns be applied in other contexts? Example: copy/cut/paste operations Generalization can be within an application or across applications. This is related to ... Consistency similar look & feel across the system/s

CSC3402 GUI Programming

Usability Paradigms

17

Flexibility Considers how the user and the system exchange information. Dialogue initiative The user should be freed from articial constraints user pre-emptive dialogue (e.g. command line interface) system pre-emptive dialogue (e.g. GUI Wizard) Multi-threading Can user do > 1 task at a time? Input to computer systems is usually interleaved (cf. car) Responses to user are usually concurrent Multi-modal communication is common. Task migratability It should be possible for tasks to be transferred between user & computer. (In both directions.) Dierent tasks should be dealt with primarily by computer or user, and some shared cooperatively. E.g. spell checking
Usability Paradigms 18

CSC3402 GUI Programming

Flexibility ... Substitutivity Allow equivalent values for input/output. Simple example: dierent measurement units allowed Representation Multiplicity: permitting multiple equivalent representations e.g. digital vs analogue Equal opportunity: input and output are not distinct. Output object may be also used as input Can possibly be confusing to user does not t their expectations Example: a currency converter (Lab 1 Exercises) Customizability adaptability: can the user customise the interface? e.g. user preferences; user editable conguration les. adaptivity: can the system automatically adapt to suit the user? e.g. system recognises kind of user and adapts verbosity of dialogue.

CSC3402 GUI Programming

Usability Paradigms

19

Robustness A robust system supports a user in carrying out tasks and in assessing the outcome of the tasks. Observability user can evaluate state based on its perceived representation Browsability can user investigate state space without side eect? Defaults suggested actions invoke recognition not recall. Reachability Can all states be navigated to? Persistence Does information remain to be perceived later? Compare audible beep vs persistent window to convey message. Operation visibility can we see potential operations? Recoverability Can user recover from an error and reach the desired goal? If actions are revokable, use backward error recovery (undo). Otherwise, forward error recovery allows user to correct errors.

CSC3402 GUI Programming

Usability Paradigms

20

Robustness .... Responsiveness: communication rate short response rates are desirable consistent response rates are perhaps even more important Task conformance: Does the system provide sucient services to allow the user to perform all the tasks required to reach a goal. Task completeness System must provide services to address all tasks Task adequacy System must correctly support the tasks.

CSC3402 GUI Programming

Usability Paradigms

21

Other Usability Principles Throughput of tasks by users How fast do users perform tasks? Frequency of errors Does the interface prevent or cause errors? Seriousness of errors When errors occur, what are the consequences? Can users recover from errors easily? Subjective Satisfaction with the system Does the system perform at an adequate level? Attitude of users to the system Do users enjoy working with the system?

CSC3402 GUI Programming

Usability Paradigms

22