Bill Manaris : Fall 2015 / CSCI 380 Notes

Why study HCI (Human Computer Interaction)?

What is HCI?

HCI - a discipline concerned with the design, evaluation, and implementation of interactive computer systems for human use and with the study of major phenomena surrounding them.
HCI - is about designing computer systems that support people so that they can carry out their activities productively and safely.
HCI - is the study of people, computer technology and the ways these influence each other. We study HCI to determine how we can make computer technology usable by people.
HCI - understanding the work that people try to perform using the technology

Task analysis and user centered design - study what it is that people are trying to do.
They may not even know.
Which tasks are more important. Task that is most important is one the user may not know they’re doing. Try to make them as usable as possible.
Most users won’t understand what your program is doing, but will say “How beautiful” or “this is terrible”.
Identify who your coding for, figure out what it is they want.

Who is involved in HCI


Identify the grammar in doing things
Smartphone uses: emails, calls, calendar.
To check calendar you can identify a language, with words like swipe, tap, click, etc.
The program that has concise and simple grammar of interaction will be the best.

Artificial Intelligence (AI)
user models
Natural language processing, speech recognition (SIRI, for example, is based on ELIZA, developed in the 1960s)
Intelligent agents
Graphic Design
Color, font, layout, images, animation


Ubiquitous computing - the act of rendering invisible the interface metaphor so technology can be used unconsciously/effortlessly - focus on the task not on the tool.
Someone who acts on behalf of others
Interface – “Abstraction Barrier”
A shared boundary where independent systems meet and act on, or communicate with each other.
Examples -
Wristwatch controls
We are system A
System A interacts via the knob on the side.
Language would be:

Output (system B)
The face, long hand, short hand, second hand, date.
The watch is System B
System A doesn’t know if it functions digitally or by gears, and we really don’t care, as long as we’re able to get the correct time from it.
Automobile controls
System A's interface:

Other interface language examples:

System A, System B example - hand drawn diagram (rights to attach an image file unknown)
What system A knows is what it “sees” (the interface).


shut-in syndrome - (Stephen Hawking would be an example - limited to one means of communication (added by notes author as an explanation of the example).



Referenced and reviewed Usability 101 article available from course readings.

Design and Analysis Concepts (Author: Donald Norman)

“You Need an Engineering Degree from MIT to Work This” (Norman, D.A., The Psychopathology of Everyday Things, 1988)

Design Analysis Concepts

(Important definitions are in bold, they will be on the test!)

Affordances are the perceived properties of an artifact that determine how it could possibly be used.

gave examples of affordances associated with a magic marker (i.e., write with it, remove the cap, replace the cap, etc.). Affordances – “to give a clue”

*Buttons – pushing
*Menus – choosing
*Pens – Writing
*Knobs – Turning

When affordances are taken into account, the user knows what to do just by looking. Affordances are specific to your target audience.

Constraints are the physical, semantic, cultural, and logical factors that encourage proper actions and prevent erroneous ones. Dr. Manaris gave an example of constraints showing an example with a pair of scissors with an emphasis on the handle constraint.

Conceptual Models are mental models of a system which allow users to understand the system, to predict the effects of their actions, and to interpret their results. Two types of conceptual models (structural vs. functional)

Mappings describe the relationship between controls and their effects on a system.

*Ex: move a control to the left should move a corresponding display model to the left.
*Ex: Dr. Manaris gave example of moving mouse for display and also flying a plane.
*Ex: Dr. Manaris gave example of stove control with three burners and three buttons (which button would you pick to turn on a burner…gave examples with 3 and 4 burner configurations).

Visibility in the design of a system makes apparent to users the conceptual model of the system and the actions they are allowed to make.

Feedback from a system provides information about the effects of the user’s actions.

Goals (high-level) vs. Tasks (middle-level) vs. Actions (low-level)


*Design UI to have similar operations and use similar elements for similar tasks.
*Makes the UI easer to learn and use
*Internal (inside the interface) vs. external (among other interfaces) consistency

Nielsen’s Usability Principles

Nielson's Usability Design Principles

Visibility of system status - Designers need to always keep users informed about what is going on.

Match between system and the real world

Facilitate user control and freedom

Use consistency and standards

Error Prevention

Recognition rather than recall

Flexibility and Efficiency of Use

Aesthetic and Minimalist Design

Link to the 7 +- 2 Rule

7 Plus Or Minus 2 rule:

Chunking: The act of creating chunks

User Interface Life Cycle Models:

One: Waterfall model

  1. Requirements analysis
  2. System/Software design
  3. Implementation and Unit Testing
  4. Integration and system testing
  5. Release and Maintenance

Two: Spiral Model (the shampoo model <- This is my own name for it to help remember, it might be considered wrong on tests)

Three: Star model

Four: The Usability Engineering Lifestyle (Mayhew)

Interaction Design Terms

Guidelines - refer to high-level, low-authority guidance (e.g. design to prevent errors)

Standards - refer to low-level, high-authority rules (e.g. dialog boxes should have OK and Cancel buttons)

Style Guides compile usability goals as standards (specific to the target audience, platform, application, etc.)


(From Usability 101

Principles to support usability

A structured presentation of general principles to apply during design of an interactive system.

Principles of Flexibility

Principles of Robustness

The User Interface as an Iceberg

Interaction Frameworks (from Chapter 2 of Norman’s book)

Task Analysis

Approaches to Task Analysis

Definition: A goal is a high-level objective a human wishes to accomplish

Definition: A task is the activities required to accomplish a goal using a particular device

Definition: An action is a low-level activity that involves no problem solving

Example Hierarchy Description

(Printable View of