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

Interaction

Interaction models help us to understand what is going on in the interaction between


user and system. They address the translations between what the user wants and
what the system does.

Ergonomics looks at the physical characteristics of the interaction and how these
influence its effectiveness.

The dialog between user and system is influenced by the style of the interface.

The interaction takes place within a social and organizational context that affects
both user and system.

.
.
.
.
.

Examples of effective strategies for building interactive systems provide paradigms


for designing usable interactive systems.

The evolution of these usability paradigms also provides a good perspective on the
history of interactive computing.

These paradigms range from the introduction of time-sharing computers, through


the WIMP and web, to ubiquitous and context-aware computing

.
.

Interaction design is about creating interventions in often complex situations using


technology of many kinds including PC software, the web and physical devices

Design involves:
o

achieving goals within constraints and trade-off between these

understanding the raw materials: computer and human

accepting limitations of humans and of design

The design process has several stages and is iterative and never complete.

Interaction starts with getting to know the users and their context:

finding out who they are and what they are like ... probably not like you!

talking to them, watching them

Scenarios are rich design stories, which can be used and reused throughout design:
o

they help us see what users will want to do

they give a step-by-step walkthrough of users' interactions: including what


they see, do and are thinking

Users need to find their way around a system; this involves:


o

helping users know where they are, where they have been and what they can
do next

creating overall structures that are easy to understand and fit the users'
needs

designing comprehensible screens and control panels

Complexity of design means we don't get it right first time:


o

so we need iteration and prototypes to try out and evaluate

but iteration can get trapped in local maxima, designs that have no simple
improvements, but are not good

theory and models can help give good start points

Software engineering provides a means of understanding the structure of the design


process, and that process can be assessed for its effectiveness in interactive system
design.

Usability engineering promotes the use of explicit criteria to judge the success of a
product in terms of its usability.

Iterative design practices work to incorporate crucial customer feedback early in the
design process to inform critical decisions which affect usability.

Design involves making many decisions among numerous alternatives. Design


rationale provides an explicit means of recording those design decisions and the
context in which the decisions were made.

___

Designing for maximum usability is the goal of interactive systems design.

Abstract principles offer a way of understanding usability in a more general sense,


especially if we can express them within some coherent catalog.

Design rules in the form of standards and guidelines provide direction for design, in
both general and more concrete terms, in order to enhance the interactive properties
of the system.

The essential characteristics of good design are often summarised through 'golden
rules' or heuristics.

Design patterns provide a potentially generative approach to capturing and reusing


design knowledge.

**********

Programming tools for interactive systems provide a means of effectively translating


abstract designs and usability principles into an executable form. These tools provide
different levels of services for the programmer.

Windowing systems are a central environment for both the programmer and user of
an interactive system, allowing a single workstation to support separate user-system
threads of action simultaneously.

Interaction toolkits abstract away from the physical separation of input and output
devices, allowing the programmer to describe behaviors of objects at a level similar
to how the user perceives them.

User interface management systems are the final level of programming support
tools, allowing the designer and programmer to control the relationship between the
presentation objects of a toolkit with their functional semantics in the actual
application.

Evaluation tests the usability, functionality and acceptability of an interactive system.

Evaluation may take place:


o

in the laboratory

in the field.

Some approaches are based on expert evaluation:


o

analytic methods

review methods

model-based methods.

Some approaches involve users:


o

experimental methods

observational methods

query methods.

An evaluation method must be chosen carefully and must be suitable for the job.

Universal design is designing systems so that they can be used by anyone in any
circumstance.

Multi-modal systems are those that use more than one human input channel in the
interaction.

These systems may, for example, use:

speech

non-speech sound

touch

handwriting

gestures.

Universal design means designing for diversity, including:


o

people with sensory, physical or cognitive impairment

people of different ages

people from different cultures and backgrounds.

Users have different requirements for support at different times.

User support should be:


o

available but unobtrusive

accurate and robust

consistent and flexible.

User support comes in a number of styles:


o

command-based methods

context-sensitive help

tutorial help

online documentation

wizards and assistants

adaptive help.

Design of user support must take account of:


o

presentation issues

implementation issues.

Cognitive models represent users of interactive systems.

Hierarchical models represent a user's task and goal structure.

Linguistic models represent the user-system grammar.

Physical and device models represent human motor skills.

Cognitive architectures underlie all of these cognitive models.

There are several organizational issues that affect the acceptance of technology by
users and that must therefore be considered in system design:
o

systems may not take into account conflict and power relationships

those who benefit may not do the work

not everyone may use systems.

In addition to generic issues, designers must identify specific stakeholder


requirements within their organizational context.

Socio-technical models capture both human and technical requirements.

Soft systems methodology takes a broader view of human and organizational issues.

Participatory design includes the user directly in the design process.

Ethnographic methods study users in context, attempting to take an unbiased


perspective.

All computer systems, single user or multi-user, interact with the work-groups and
organizations in which they are used.

We need to understand normal human-human communication:


o

face-to-face communication involves eyes, face and body

conversation can be analyzed to establish its detailed structure.

This can then be applied to text-based conversation, which has:


o

reduced feedback for confirmation

less context to disambiguate utterances

slower pace of interaction

but is more easily reviewed.

Group working is more complex than that of a single person:


o

it is influenced by the physical environment

experiments are more difficult to control and record

field studies must take into account the social situation.

Task analysis is the study of the way people perform tasks with existing systems.

Techniques for task analysis:


o

decomposition of tasks into subtasks

taxonomic classification of task knowledge

listing things used and actions performed.

Sources of information:
o

existing documentation

observation

interviews.

Using task analysis to design:


o

manuals and documentation

new systems.

Dialog is the syntactic level of human-computer interaction; it is rather like the script of a
play, except the user, and sometimes the computer, has more choices.

Notations used for dialog description can be:


o

diagrammatic: easy to read at a glance

textual: easier for formal analysis.

The dialog is linked:


o

to the semantics of the system, what it does

to the presentation of the system, how it looks.

Formal descriptions can be analyzed:


o

for inconsistent actions

for difficult to reverse actions

for missing items

for potential miskeying errors.

We need to know what a system does in order to assess its usability.

Standard software engineering formalisms can be used to specify an interactive


system. These are of various types:
o

model based, such as Z, which describe the system's state and operations

algebraic formalisms, which describe the effects of sequences of actions

temporal and deontic logics, which describe when things happen and who is
responsible.

Special interaction models are designed specifically to describe usability properties,


including:
o

predictability and observability - what you can tell about the system from
looking at it

reachability and undo - what you can do with it.

Most formal models and notations focus on events and changes that happen when
they occur, but we need richer models to deal with:
o

interstitial behavior - the things that happen between events such as


dragging an icon

physical objects in ubiquitous computing or virtual reality

the tension between precise time and more fuzzy human ideas of time.

We operate within an ecology of people, physical artifacts and electronic systems, and this
rich ecology has recently become more complex as electronic devices invade the workplace
and our day-to-day lives. We need methods to deal with these rich interactions.

Status-event analysis is a semi-formal, easy to apply technique that:


o

classifies phenomena as event or status

embodies nave psychology

highlights feedback problems in interfaces.

Aspects of rich environments can be incorporated into methods such as task


analysis:
o

other people

information requirements

triggers for tasks

modeling artifacts

placeholders in task sequences.

New sensor-based systems do not require explicit interaction, this means:


o

new cognitive and interaction models

new design methods

new system architectures.

Groupware is a term for applications written to support the collaboration of several users.

Groupware can support different activities:


o

direct interpersonal communication

ideas generation and decision making

sharing computer objects.

It can be classified in several ways:


o

by where and when it happens

by the sort of information shared

by the aspects of cooperations supported.

Implementing groupware is more difficult than single-user applications:


o

because of network delays

because there are so many components to go wrong

because graphical toolkits assume a single user.

The traditional computer is a glass box - all you can do is press buttons and see the
effect.

Ubiquitous computing and augmented reality systems break this glass box by linking
the real world with the electronic worlds.

Applications include:

ubiquitous computing

virtual reality

augmented reality

information visualization.

Hypertext allows documents to be linked in a non-linear fashion.

Multimedia incorporates different media: sound, images, video.

The world wide web is a global hypermedia system.

Animation and video can show information that is difficult to convey statically.

Applications of hypermedia include online help, education and e-commerce

Design for the world wide web illustrates general hypermedia design, but also has its
own special problems.

Dynamic web content can be used for simple online demonstration or for complete
web-based business applications.