Hci Chapter 5
Hci Chapter 5
❖Design involves: - achieving goals within constraints and trade-offs 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.
Interaction design basics …
❖Scenarios are rich design stories, which can be used and reused throughout design: –
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.
❖This involves: – 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.
Interaction design basics …
– but iteration can get trapped in local maxima, designs that have no simple
❖In fact, the opposite is the case: physical materials are treated better in most designs
than people.
❖The phrase ‘human error’ is taken to mean ‘operator error’, but more often than not the
disaster is inherent in the design or installation of the human interface.
❖Bad interfaces are slow or error-prone to use. Bad interfaces cost money and cost lives.
❖People make mistakes.
❖Often when an aspect of an interface is obscure and unclear, the response is to add
another line in the manual.
The process of design
❖If you design using a physical material, you need to understand how and where failures
would occur and strengthen the construction, build in safety features or redundancy.
❑The central message – the user
❖We will discuss the information on basic psychology, on particular technologies, on
methods and models.
❖This is the core of interaction design: put the user first, keep the user in the center and
remember the user at the end.
The process of design…
➢ Requirements – what is wanted
➢ Analysis - These techniques can be used both to represent the situation as it is and also the
desired situation.
➢ Design -Well, this is all about design, but there is a central stage when you move from what
you want, to how to do it.
❖ Iteration and prototyping Humans are complex and we cannot expect to get designs right
first time.
❖We therefore need to evaluate a design to see how well it is working and where there can be
improvements.
➢ Implementation and deployment Finally, when we are happy with our design, we need to
create it and deploy it.
❖This will involve writing code, perhaps making hardware, writing documentation and manuals
– everything that goes into a real system that can be given to others
The process of design…
what is
wanted
scenarios
task analysis
guidelines
principles precise
analysis
interviews specification
ethnography design
dialogue
implementation
what is there notations and deployment
vs. evaluation
prototype
what is wanted heuristics architectures
documentation
help
User focus
❖ As we’ve already said, the start of any interaction design
exercise must be the intended user or users.
❖ This is often stated as: know your users.
❖ So, how do you get to know your users?
✓ Who are they?
✓ Probably not like you!
✓ Talk to them.
✓ Watch them.
✓ Use your imagination
Navigation design
❖ The design would make sense to the user and also that
proposed implementation architectures would work.
❖In addition scenarios can be used to:
➢ Communicate with others – other designers, clients or users.
➢ Validate other models A detailed scenario can be ‘played’
against various more formal
❖representations such as task models or dialog and navigation
models.
➢Express dynamics Individual screen shots and pictures give
you a sense of what a system would look like, but not how it
behaves.
Navigation design
❖ This linearity has both positive and negative points:
➢ Time is linear: Our lives are linear as we live in time and so we find it easier to understand
simple linear narratives.
➢ But no alternatives: Real interactions have choices, some made by people, some by
systems. A simple scenario does not show these alternative paths.
▪ Scenarios are a resource that can be used and reused throughout the design process: helping
us see what is wanted, suggesting how users will deal with the potential design, checking that
proposed implementations will work, and generating test cases for final evaluation.
Navigation design…
❖ But now we are focusing on the computer system itself. You interact at several levels:
➢ Widgets The appropriate choice of widgets and wording in menus and buttons will help
➢ Screens or windows: You need to find things on the screen, and understand the logical
grouping of buttons.
➢ Navigation within the application: You need to be able to understand what will happen
➢ Environment The word processor has to read documents from disk, perhaps some are on
remote networks. You swap between applications, perhaps cut and paste.
Navigation design…
❖ The structure of an application is to think about actual use:
➢ Who is going to use the application?
➢ How do they think about it?
➢ What will they do with it?
❖This can then drive the second task – thinking about structure.
❖Here we will consider two main kinds of issue :
➢ Local structure
– looking from one screen or page out
➢ Global structure
– structure of site, movement between screens.
Navigation design…
❖ Local structure
➢ Much of interaction involves goal-seeking behavior.
➢ Users have some idea of what they are after and a partial model of the system.
➢ However, in a world of partial knowledge users meander through the system.
❑The Levels of interaction
▪ PC application
➢Widgets
➢Screen design
➢Navigation design
➢Other apps and operating system
Navigation design…
❑ The Levels of interaction
▪ Physical device
➢ Buttons, dials, lights, displays
➢ Physical layout
➢ Main modes of device
▪ The real world!
➢ Website
➢ Form elements, tags and links
➢ Page design
▪ Site structure
➢ The web, browser, external links
Navigation design…
❑Here are four things to look for when looking at a single web page, screen or state of
a device.
➢ Knowing where you are
➢ Knowing what you can do
➢ Knowing where you are going – or what will happen
➢ Knowing where you’ve been – or what you’ve done.
Navigation design…
▪ The screen, web page or device displays should make clear where you are in terms of
the interaction or state of the system.
▪ It is also important to know what you can do – what can be pressed or clicked to go
somewhere or do something.
▪ Some web pages are particularly bad in that it is unclear which images are pure
decoration and which are links to take you somewhere.
▪ You then need to know where you are going when you click a button or what will
happen.
▪ Of course you can try clicking the button to see.
▪ In the case of a website or information system, this may mean you then have to use
some sort of ‘back’ mechanism to return, but that is all; however, in an application or
device, the action of clicking the button may already have caused some effect.
Global structure – hierarchical organization
▪ This is the way the various screens, pages or device states link to one another. One
way to organize a system is in some form of hierarchy.
▪ This is typically organized along functional boundaries (that is, different kinds of
things), but may be organized by roles, user type, or some more esoteric breakdown
such as modules in an educational system.
➢ Allowing the embedding of data from one application in another, or, in the mail
system,
➢ being able to double-click an attachment icon and have the right application
launched for the attachment.
Screen Design and Layout
➢ A single-screen image often has to present information clearly and also act as the
locus for interacting with the system. The basic principles at the screen level reflect
those in other areas of interaction design:
➢ Ask What is the user doing?
➢ What comparisons may the user need to make? In what order are things likely to be needed?
➢ Design Form follows function: let the required interactions drive the layout.
HCI in the Software Process
➢ 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 that affect usability.
HCI in the Software Process…
➢ 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.
➢ Within computer science there is already a large sub-discipline that addresses the
management and technical issues of the development of software systems – called software
engineering.
➢ One of the cornerstones of software engineering is the software life cycle, which describes
the activities that take place from the initial concept formation for a software system up until
its eventual phasing out and replacement.
The Software Life Cycle …
➢ One of the distinguishing characteristics of any engineering discipline is that it entails the
➢ A fundamental feature of software engineering, therefore, is that it provides the structure for
➢ The software life cycle is an attempt to identify the activities that occur in software
development.
➢ These activities must then be ordered in time in any development project and appropriate
techniques must be adopted to carry them through.
The waterfall model
Requirements
specification
Architectural
design
Detailed
design
Coding and
unit testing
Integration
and testing
Operation and
maintenance
Activities in the life cycle
➢ The graphical representation is reminiscent of a waterfall, in which each activity
naturally leads into the next.
➢ The analogy of the waterfall is not completely faithful to the real relationship
between these activities, but it provides a good starting point for discussing the
logical flow of activity.
➢ We describe the activities of this waterfall model of the software life cycle next.
Activities in the life cycle
▪ Requirements specification
➢ The designer and customer try to capture what the system is expected to provide can be expressed in natural
language or more precise languages, such as a task analysis would provide
▪ Architectural design
➢ A high-level description of how the system will provide the services required factor system into major
components of the system and how they are interrelated needs to satisfy both functional and non-functional
requirements
▪ Detailed design
➢ refinement of architectural components and interrelations to identify modules to be implemented separately the
refinement is governed by the nonfunctional requirements
Verification and validation
Real-world
Verification requirements
designing the product right and constraints The formality gap
Validation
designing the right product
Detailed
design
Coding and
unit testing
Integration
lots of feedback! and testing
Operation and
maintenance
Usability engineering
The ultimate test of usability based on measurement of user experience
Usability engineering demands that specific usability measures be made explicit as requirements
Usability specification
• usability attribute/principle
• measuring concept
• measuring method
• now level/ worst case/ planned level/ best case
Problems
• usability specification requires level of detail that may not be
• possible early in design satisfying a usability specification
• does not necessarily satisfy usability
part of a usability specification for a VCR
• effectiveness
• can you achieve what you want to?
• efficiency
• can you do it without wasting effort?
• satisfaction
• do you enjoy the process?
some metrics from ISO 9241
Usability Effectiveness Efficiency Satisfaction
objective measures measures measures
• Prototypes
• simulate or animate some features of intended system
• different types of prototypes
• throw-away
• incremental
• evolutionary
• Management issues
• time
• planning
• non-functional features
• contracts
Storyboards
Techniques for prototyping
need not be computer-based
can be animated
• Two examples:
• Issue-based information system (IBIS)
• Design space analysis
Issue-based information system (IBIS)
• basis for much of design rationale research
• process-oriented
• main elements:
issues
– hierarchical structure with one ‘root’ issue
positions
– potential resolutions of an issue
arguments
– modify the relationship between positions and issues
Sub-issue generalizes
questions
Sub-issue
Sub-issue
Design space analysis
• structure-oriented
• QOC – hierarchical structure:
questions (and sub-questions)
– represent major issues of a design
options
– provide alternative solutions to the question
criteria
– the means to assess the options in order to make a choice
• DRL – similar to QOC with a larger language and more formal semantics
the QOC notation
Criterion
Option
Option
Criterion
… Consequent …
Question
Question
Psychological design rationale
• to support task-artefact cycle in which user tasks are affected by the systems they use
• aims to make explicit consequences of design for users
• designers identify tasks system will support
• scenarios are suggested to test task
• users are observed on system
• psychological claims of system made explicit
• negative aspects of design can be used to improve next iteration of design
Summary
The software engineering life cycle
• distinct activities and the consequences for interactive system design
Usability engineering
• making usability measurements explicit as requirements
Iterative design and prototyping
• limited functionality simulations and animations
Design rationale
• recording design knowledge
• process vs. structure