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: Phelps 3523
Discussion: F, 11:00-11:50am, CTL (aka Collaborative Technology Lab, Trailer 932)
Instructor: Tobias Höllerer
Office Hours: Thu, 10-12, or by appointment
Office: 2155 Engineering I, (805) 893 8759
e-mail: holl@cs...
TA 1: Brynjar Gretarsson
Office Hours: Wed. 3-4, in the Four Eyes Lab (Trailer 935, room 101, directly east of Phelps Hall)
e-mail: brynjar@cs...
TA 2: Chris Bunch Office Hours: Thu 2:30-3:30, in the Four Eyes Lab (s.a.) e-mail: cgb@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. 8 |
--- |
Introduction,
Motivation, Class Requirements, Policies |
OM1 ( Online Material 1): |
||
| C2 | Thu | Jan. 10 | H1 Re-watch OM1 |
Knowledge Navigator Discussion Starfire Video |
OM2:
Memex, full article H3: Xerox Star Retrospective H4: DTUI Chapter 2, part I H5: Licklider Papers OM3: Sun Starfire Script H6: Starfire CHI paper OM4: The Starfire Video (240MB!) |
HW1 | ||
| D1 | Fri | Jan. 11 | No Discussion | |||||
| 2 | C3 | Tue | Jan. 15 | H4, H6, OM3 (needed for HW1) |
History of HCI HCI Overview |
H7: Slides: HCI History H8: Affordance H9: Mental Model H10: Recognition Over Recall |
||
| C4 | Thu | Jan. 17 | H8, H9, H10 | HCI Guidelines and Principles Homework 2 |
H11:
Norman, DOET, Chapter 1 H12:
Slides: Design Principles OM5: Miller's 1956 Article on the magical number seven, plus or minus two H13: DTUI Chapter 1 Summary and Literature list |
HW2 | ||
| D2 | Fri | Jan. 18 | HW1, HW2 Q&A | |||||
| 3 | C5 | Tue | Jan. 22 | H11, H13, Repeat H8,H9,H10 |
Usability of Interactive Systems:
Guidelines, Principles, Theories Analyzing Design Flaws |
OM6:
Badly Designed Form OM7: Interface Hall of Shame H14: DTUI Chapter 2, part II H15: Chapter 1 from Usability Engineering Book H16: Mapping OM8:
Nielsen's Usability Heuristics |
||
| C6 | Thu | Jan. 24 | H15 H16,H17 |
Usability Engineering Process Design example: alarm clock |
OM10: Model-View-Controller Pattern OM11: MVC and other interactive patterns: a summary and comparison H18: Chapter 4 of The Humane Interface |
|||
| D3 | Fri | Jan. 25 | SWING Programming: Toolkits and Toolbuilders |
NetBeans Swing Tutorial Code from discussion |
||||
| 4 | C7 | Tue | Jan. 29 | H14 H18 |
Usability Engineering Process GOMS/Keystroke-level model |
H19: KLM Example H20:
Fitts' Law |
HW3 | HW2 |
| C8 | Thu | Jan. 31 | H14 H20,H21 |
HCI Theories Formal Models for Interaction Design, Model-based Analysis Fitts' Law,
Hick's Law |
OM12:
"A quiz
designed to give you Fitts" H23: Controlled Experiments OM13: t-tests and ANOVA in Excel |
|||
| D4 | Fri | Feb. 1 | HW2, HW3 (KLM) SWING: Layout Managers |
H24: SWING book OM14: Sample Code for H24, Chapter 4 (Layout Managers) |
||||
| 5 | C9 | Tue | Feb. 5 | H23 | Usability Testing, Controlled Experiments, Formative Studies, Summative Studies Important Statistics for Usability Studies |
|||
| C10 | Thu | Feb. 7 | H24 Chapter 1
|
OM15: SWING components OM16: SWING Tutorial OM17: Layout Managers OM18: Online Training: Building an Application |
HW4 | HW3 | ||
| D5 | Fri | Feb. 8 | Java Interface Builders (Matisse/Netbeans, Eclipse) vs. coding by hand |
Eclipse Jigloo Jigloo tutorial Code from discussion |
||||
| 6 | C11 | Tue | Feb. 12 | H24 Chapter 2 | Project Preview Toolkits, UIMS, UI Builders 2D GUI Guidelines |
|
||
| C12 | Thu | Feb. 14 | 2D GUI Guidelines (cont.) Visualization |
H25: Slides: GUI Workflow and Design Guidelines | ||||
| D6 | Fri | Feb. 15 | Java SWING Set HW4 Questions |
|||||
| 7 | C13 | Tue | Feb. 19 | Visualization (cont.) Programming: Event Models, I/O Models, Software Engineering |
H26: Visualization slides | |||
| C14 | Thu | Feb. 21 | Project Models, I/O Models, Software Engineering SWING Qt - a multi-platform 2D GUI toolkit |
H27:
Visibility H28: Chunking H29: Five Hat Racks H30: Immersion |
Project | HW4 | ||
| D7 | Fri | Feb. 22 | Project Indiv. help w. HW4 |
|||||
| 8 | ||||||||
| C15 | Tue | Feb. 26 | H8, H9, H10, H16,H17, H20,H21, H27,H28,H29,H30 |
Principles of Design revisited OpenGL |
H31: OpenGL demos OM19: OpenGL Programming Guide v. 1.0 OM20: JOGL |
|||
| C16 | Thu | Feb 28 | Direct Manipulation Dynamic Sliders & Starfield Displays Review of Material |
H32: Exam Topics | ||||
| D8 | Fri | Feb. 29 | Design Choices and Failures 'Midterm' Q&A |
|||||
| 9 | C17 | Tue | Mar. 4 |
Novel (Post-WIMP)Interfaces 3D interaction, VR, Ubiquitous Computing Research Frontiers (1995 and now) |
OM21: Nielsen:
Non-Command User
Interfaces
OM22: M.Weiser: The Computer for the 21st Century H33: Slides
Collaboration |
|||
| C18 | Thu | Mar. 6 | "Midterm" Exam |
|||||
| 10 | C19 | Tue | Mar. 11 | Research Demos in the "Four Eyes Lab" |
||||
| C20 | Thu | Mar. 13 | Current UI Research |
|||||
| D9 | Fri | Mar.14 | Exam Answer Discussion | |||||
| 11 | Final Slot |
Fri | Mar. 21 4pm-7pm |
Project Presentations IN CSIL LAB ! |
||||