This home page and the class mailing list will be used as centers of
communication for the class. While the webpage provides you
with up-to-date information about assignments and what is currently going on in class,
the mailing list serves as an open forum: questions, answers,
suggestions, etc.
Class Hours: TR, 3:30-4:45pm
Class Location: HSSB 1236
Discussion: F, 11:00-11:50am, location: PHELPS 1448
Instructor: Tobias Höllerer
Office Hours: Wed 10-12pm or by appointment
Office: 2155 Engineering I, (805) 893 8759
e-mail: holl@cs...
TA: Stephen DiVerdi
Office Hours: Tue, 1-3pm, CSIL
e-mail: sdiverdi@cs...
The study of human-computer interaction enables system architects to design useful, efficient, and enjoyable computer interfaces. This course teaches the theory, design procedure, and programming practices behind effective human interaction with computers.
We will examine interaction design, implementation, and evaluation. The
design process requires a solid understanding of the theory behind successful
human-computer interaction, as well as an awareness of established procedures
for good user interface design, including the 'usability engineering' process.
Iterative evaluation is an important aspect of this procedure, and we will learn
and practice prototyping and evaluation using scenario-based case studies. We
will look at specific interface success stories and spectacular failures to
learn from past experiences. Students will apply their gained knowledge in a series of practical assignments that highlight selected portions of the design
cycle, as well as familiarize them with sound programming practices and effective
tools and techniques to create successful user interfaces. The course will also
introduce novel interfaces that go beyond what we normally see in today's
graphical user interfaces.
This class teaches the theory and practice of effective user interface design. You will learn about principles, procedures, and programming approaches. You will create, judge, and evaluate interaction designs.
There will be one exam (in week 8 or 9), as well as a series of design, prototype, evaluation, and implementation assignments that lead up to individual or group class projects. We will continuously assign reading material from the book and assorted handouts, which is supposed to help your design efforts and to stimulate class participation. Here is how your final grade will be determined:
In case you disagree with any grade, submit your grievance in writing
(email or paper) to the grader responsible, explaining and documenting your
case.
All assignments are due at midnight on the scheduled due date. To make
the deadlines more manageable, each student will be allowed three ``late
days'' during the quarter for which lateness will not be penalized. Late days
may be applied to all assignments, including design sketches and
programming assignments, but not the final project! Your
late days may be used as you see fit -- one
or multiple per assignment -- but once you
used a late day it's good and gone, you cannot reapply it to another
assignment. Anything turned in after 12:00:00am until
midnight the next day is one day late. Every day thereafter that an assignment
is late, including weekends and holidays, counts as an additional late day.
Absolutely no late work will be accepted after
the deadline if you have used up all your late days. If you're not done on time
you must turn in what you have to receive partial credit. There will be no
exceptions from this rule. Please make sure you understand this policy.
When making use of your late days, the online submission provides the timestamp
that counts.
We will strictly enforce UCSB's academic misconduct policies. We use electronic tools to detect plagiarism among submitted homework solutions and sources from the internet. Read these guidelines before beginning each programming assignment. Any form of plagiarism, collusion, or cheating will result in an "F" in this course and may result in suspension from UCSB for two quarters. When in doubt about any forms of receiving help on your assignments, ask us!
I would like the course to be informative and enjoyable. Let us know what you find just, good and interesting about the course. Let us know sooner if you feel something could be improved. See me, send an e-mail, or leave me a note.
See handout column in the class schedule!
Tentative Topics:
Introduction, Motivation,
Overview and History of HCIFormal Models for Interaction Design,
Usability Engineering Process,
Model-based Analysis,
Fitts' Law
Scenario-based Design,
PrototypingEvaluation,
Interaction Styles
Formative Studies, Summative Studies,
Important Statistics for Usability Studies
Feedback and Visualization
Universal Principles of Design
Success Stories and FailuresUI Taxonomies (2D WIMP, 2D/3D Interaction, Multimedia)
Toolkits, UIMS, UI Builders
Programming: Event Models, I/O Models,
Software EngineeringCase Study: Computer Games
Novel Interfaces (Post-WIMP)
Research Frontiers (1995 and now)
Intelligence (AI) in User Interfaces
Mobile Systems
Collaborative Systems
Wk |
Class |
Date | Assigned Reading |
Topics | Handout | HW out |
HW due | |
1 | C1 | Tue | Jan. 10 |
--- |
Introduction,
Motivation, Class Requirements, Policies |
OM1 ( Online Material 1): |
||
C2 | Thu | Jan. 12 | H1 Re-watch OM1 |
Knowledge Navigator Discussion History of HCI - I Starfire Video |
OM2:
Memex, full
article |
HW1 | ||
D1 | Fri | Jan. 13 | No Discussion |
|||||
2 | C3 | Tue | Jan. 17 | H4, H6, OM3 |
History of HCI -II HCI Overview Guidelines vs. Principles |
H7: Norman, DOET, Chapter 1 H8: Affordance H9: Mental Model H10: Slides: HCI History |
||
C4 | Thu | Jan. 19 | H7, H8, H9 | HCI Guidelines and Principles UI Design Principles |
H11: DTUI Chapter 1 Summary and
References H12: DTUI Chapter 2, part II H13: Recognition Over Recall |
|||
D2 | Fri | Jan. 20 | HW1, General UI flaws | |||||
3 | C5 | Tue | Jan. 24 | H7, H8, H9 (repeat) | Usability of Interactive Systems:
Guidelines, Principles, Theories Analysis of desktop use cases |
H14: 80/20 Rule | HW2 | |
D3 | Wed | Jan. 25 | HW2 | |||||
C6 | Thu | Jan. 26 | H13, H15 | Usability Engineering Process HCI Theories |
H16:
Slides: Design Principles (includes Usability Measures) H17: Chapter 4 of The Humane Interface H18: 1992 Survey of Software Developers |
|||
4 | C7 | Tue | Jan. 31 | H12 | HCI Theories Formal Models for Interaction Design, Model-based Analysis |
OM5:
Human Factors of CG interaction
techniques OM6: Chunking and Phrasing OM7: Design Space of Input Devices OM8: Miller's 1956 Article on the magical number seven, plus or minus two |
HW2 | |
C8 | Thu | Feb. 2 | H17 | GOMS/Keystroke-level model Fitts' Law |
H19:
KLM analysis example OM9: "A quiz designed to give you Fitts" H20: Visibility H21: Chunking H22: Fitts' Law H23: Hick's Law |
HW3 | ||
D4 | Fri | Feb. 3 | HW2, KLM, HW3 | |||||
5 | C9 | Tue | Feb. 7 | H8,H9,H13,H14, H20-23 |
Fitts' Law, Hick's Law, Principles of Design revisited |
H24:
Five Hat Racks H25: Mapping H26: Controlled Experiments OM10: t-tests and ANOVA in Excel |
||
C10 | Thu | Feb. 9 | H26, OM10 | Usability Testing, Controlled Experiments, Formative Studies, Summative Studies Important Statistics for Usability Studies |
H27:
Swing book H28: KLM / Fitts' slides |
HW4 | HW3 | |
D5 | Fri | Feb. 10 | HW4 | |||||
6 | C11 | Tue | Feb. 14 | H27 (esp. Chapters 1 & 2) | 2D GUI Guidelines Toolkits, UIMS, UI Builders |
H29:
Statistical Analysis Slides H30: 2D GUI Guideline Slides |
|
|
C12 | Thu | Feb. 16 | H27 (esp. Chapter 4) | Programming: Event Models, I/O Models, Software Engineering |
H31: Chapter 5, DTUI | |||
D6 | Fri | Feb. 17 | Qt designer, UICompiler | |||||
7 | C13 | Tue | Feb. 21 | H31 | SWING |
OM11:
SWING components OM12: SWING Tutorial OM13: Layout Managers OM14: Online Training: Building an Application OM15: Sample Code for H27, Chapter 4 (Layout Managers) |
||
D7 | Wed | Feb. 22 | 3pm, Eng I, 2114 | HW4 Projects |
||||
C14 | Thu | Feb. 23 | H31 | Qt - a multi-platform 2D GUI
toolkit Introduction to MS .NET |
OM16:
Qt Documentation OM17: MSDN AcademicAlliance for UCSB OM18: .NET Framework Tutorials |
HW4 | ||
8 | C15 | Tue | Feb. 28 | MS .NET (wrapup) Evaluation Tools Visualization |
H32:
Slides on UI Design Tools (Swing, Qt, .Net & Evaluation Tools) |
|||
C16 | Thu | Mar. 2 | Visualization (cont.) |
OM19:
InfoVis Resources OM20: Peripheral Awareness Study (Interact '01 paper) H33: DTUI Chapter 6 (Direct Manipulation) H34: DTUI Chapter 10 (Collaboration) H35: DTUI Chapter 14 (Information Visualization) |
||||
D8 | Fri | Mar. 3 | ||||||
9 | C17 | Tue | Mar. 7 | H33 | Direct Manipulation Interaction & Interaction Devices Review of Material |
H36:
Slides on Visualization H36: Interference Effects H37: Icons H38: Immersion |
||
D9 | Wed | Mar. 8 3pm Phelps 1401 |
Midterm Q&A | |||||
C18 | Thu | Mar. 9 | H36,H37,H38 | "Midterm" Exam | ||||
10 | C19 | Tue | Mar. 14 | Ambient UIs Collaborative UIs Novel (Post-WIMP)Interfaces |
||||
Wed | Mar. 15 2-5pm |
4EYES Lab OpenHouse |
||||||
C20 | Thu | Mar. 16 | Novel (Post-WIMP)Interfaces 3D interaction, VR, Ubiquitous Computing Research Frontiers (1995 and now) |
|||||
D10 | Fri | Mar. 17 | ||||||
11 | Final Slot |
Thu | Mar. 23 3:30pm-7pm |
Project Presentations |