CSC 484 Lecture Notes Week 1
Introduction to the Course
-
Relevant reading.
-
Textbook Chapter 1.
-
Paper of the week (covering both weeks 1 and 2, due to short week 1):
Investigating attractiveness in web user interfaces
by Hartmann, Sutcliffe, and De Angeli, from the University of Manchester.
-
Go over first-day handouts:
-
Syllabus.
-
Questionnaire on areas of project interest and expertise.
-
Assignment 1.
-
Introduction to the class subject matter, and the text book (Preface, Chapter
1, Section 1.1).
-
To a large extent, the organization of the book will provide the framework for
the lectures.
-
Following a recommendation in the book's preface, we will start with Chapters
1,9, and 12.
-
Subsequently, we will proceed in order of the remaining chapters.
-
On good and poor design (Section 1.2).
-
"Good" means an interactive product has certain important traits, such as
-
easy to learn
-
effective to use
-
provides an enjoyable user experience.
-
There are some systematic ways to measure such traits.
-
We can rely on experts' judgment in the design and evaluation process.
-
We can conduct controlled experiments with users of a finished product.
-
The bottommost line is know the user of whatever
interactive artifact you're developing -- before, during, and after the
development.
-
High-level interaction design principles (Section 1.2.1).
-
Again, know your audience (cf. the bulleted items on Page 6 of the book).
-
The users RULE.
-
Know what they're good at and bad at.
-
Understand what they know and don't know.
-
Provide interface contexts they're familiar with.
-
Know how they currently do things.
-
Know what they like and dislike.
-
Listen to them and involve them fully in the interaction
design process.
-
If in doubt, do things electronically the way they're are done non-
electronically.
-
Always ask the user what's "aesthetically pleasing" and "elegant".
-
For example, the book authors did not know me very well as a user when they
decided to cite the marble phone answering system as an example of good design.
-
I find the marble-based design childish and inelegant.
-
I would much prefer a digital screen with the instructions "You have 3
messages; press the 'Listen' button to hear them."
-
The principle of least astonishment.
-
Simple tasks should be performable quickly, in a few number of steps.
-
More complicated tasks should be performable in some form, but it's OK if they
take longer.
-
Use "real-world" metaphors judiciously.
-
Treasure simplicity.
-
Be prepared to work with people who may have vastly different views than you
do.
-
Interaction design compared to software engineering (Section 1.3).
-
Everybody wants their own particular discipline to "run the show".
-
Software engineers may think that they're role is central, or over-arching in
the process of building a usable software product.
-
Interaction designers may well think the same thing.
-
In practice, having a product manager run the show can be quite
effective.
-
The product manager carries the "vision thing" for what the product should be.
-
This person oversees and coordinates all of the people from the different
disciplines shown in Figure 1.4.
-
Interaction design (ID) and other disciplines (Sections 1.3.1 - 1.3.2).
-
As we'll see next week, there is a good deal of similarity between the ID
process and the SE process.
-
In both cases, product end-users should play a key role in the steps of the
process that involve the design of the end-user interface.
-
The analogy to building architects and engineers is apt, from page 9 of the
book:
-
Interaction designers are analogous to building architects -- they deal with
people who'll use the product.
-
Software engineers are an analogous to civil engineers -- they deal with proper
product construction.
-
While today's software engineers may see they're job as both of these things,
not everyone else does.
-
Overall, the book is good for computer scientists and software engineers, to
help us broaden our perspectives.
-
CS and SE practitioners must keep in mind that software artifacts are deployed
in many different settings these days, beyond desktop and web-based
applications.
-
That said, the focus of 484 is necessarily more on the HCI aspects of ID, than
on its other aspects.
-
Ideally, 484 could involve genuinely multi-disciplinary teams, but this is
logistically infeasible given the current course structure.
-
There may well be some role playing in the 484 team projects, where selected
team members will assume the duties of domain experts from areas outside of the
computing disciplines.
-
The elusive "user experience" (Section 1.4).
-
It's highly subjective and very personal.
-
There is yet no established science to measure, categorize, or analyze it.
-
In 484, you'll get a chance to describe yours, and try to capture that of
others.
-
You'll start in Assignment 1.
-
The process of interaction design -- ID (Section 1.5).
-
This is very much like the user-centered requirements acquisition process we
followed in CSC 308.
-
When the book talks about "design", they're referring to the interface design,
not the underlying software model or program design.
-
When they refer to "building interactive versions of the design", they
generally mean prototyping the behavior, rather than building an operational
product.
-
The idea that the activities "inform one another and are repeated" is the same
concept as iteration in a software development process.
-
A key difference between the ID process and the SE requirements process is that
ID typically involves more explicit steps to analyze usability, throughout the
process.
-
In the parlance of Fisher's 308 process, usability analysis can be considered a
pervasive step of the ID process.
-
Usability analysis is covered in Chapters 9-12, and will be a recurring subject
of 484 assignments.
-
Another part of the ID process often missing from SE is the analysis of
cognitive and social aspects of human behavior that affect the interactive
experience.
-
This follows the "know your users" design principles.
-
Chapters 3-5 of the book focus on issues of understanding users.
-
ID goals (Section 1.6).
-
Usability goals -- how the product behaves
-
User experience goals -- how the user feels about it
-
Design principles -- how to achieve the goals
-
Usability goals (Section 1.6.1).
-
Effectiveness -- how well does an interactive product do its thing?
-
Efficiency measures -- how long does it take to get something done?
-
The number of discrete interactions required to accomplish a task.
-
The amount of real time that elapses from initiation to completion of a task.
-
Safety -- how well does the product protect the user for doing
(dangerously) erroneous things.
-
For software products, "dangerous" can include more mundane aspects of behavior
than physical harm, such as loss of critical data.
-
In some cases, software can in fact be unsafe, in that its failures lead to
physical property damage or harm to humans.
-
Utility -- the product does (just) what it's supposed to do.
-
No missing critical features.
-
No clearly superfluous features.
-
Learnability -- how easy is the product to learn initially?
-
Memorability -- how easy is it to remember how to use, once learned?
-
User experience goals.
-
These are highly subjective and personalized among users.
-
There is a laundry list of them on the top of Page 26 in the book.
-
The importance of such goals had been historically downplayed in HCI usability
studies, until rather recently.
-
This is likely do to the difficulty in quantifying such subjective usability
characteristics, compared to the more specific usability goals like efficiency
and utility.
-
Even Donald Norman, a pioneer of cognitive science and user-centered design,
has changed his way of thinking in this regard.
-
New HCI research braves this frontier, such as this week's 484 research reading
on "attractiveness".
-
Design principles -- "dos and don'ts" of ID (Sections 1.6.3, and 15.2).
-
Those listed in Chapter 1 are quite intuitive:
-
Visibility -- what you see is what you can do.
-
Feedback -- let the user know what the heck is going on.
-
Constraints -- limit interactions based on context.
-
Consistency -- don't do the same thing two different ways.
-
Affordance -- let the user know how to use something by its structure
or layout.
-
From Chapter 15, Nielson's usability heuristics are a more specific version of
the general design principles, and are the ones you'll use in Assignment 1:
-
Visibility of system status
-
Match between system and the real world
-
User control and freedom
-
Consistency and standards
-
Help users recognize, diagnose and recover from errors
-
Error prevention
-
Recognition rather than recall
-
Flexibility and efficiency of use
-
Aesthetic and minimalist design
-
Help and documentation
-
There are lots of examples online, accompanied by lots of opinion.
-
Nielson's site is
useit.com.
-
Another site mentioned in the book is
asktog.com
-
There's also
baddesigns.com
-
Looking at lots of examples, and gaining your own experience by "doing" are how
you'll get good at ID.