CS 484 Spring 2009, Readings & Assignments



Week 1: (Jan. 12-16) Introduction

Read chapter 1 in the text on Interaction Paradigms. Also read Jakob Nielsen's article introducing Usability.

The ultimate interface?


Week 2: (Jan. 19-23) Frameworks & Coping with Complexity

Read chapter 2 in the text . Evaluation/Action cycle. Gulf of execution/evaluation. Coping with complexity, design principles (visibility, mapping, affordance ...). Interaction Styles.

HW1 was assigned and is due at the start of class, Wed Jan 28.


Week 3: (Jan. 26-30) Interaction Styles - UI Design Process

Read chapter 3 in the text on UI Design Process.  Information about the International Festival can be found online here.



Week 4: (Feb 2-6) UI Design Process - BUFD, Agile etc.

We finished discussing some of the approaches to interaction design process. This is an area of much interest, and some contention, as researchers and practioners are studying how different approaches can be blended together for the best result.
Often emphasized, is a strong focus on the users and their activities. See the controversial article by Norman commenting on User Centered Design actually being the wrong focus.

Also of interest is how to blend the interaction design together with the design and development of the entire system.
Kent Beck (representing XP/Agile software development) and Alan Cooper (representing interaction designers) had this interesting exchange back in 2002. Since then, there have been some inroads and more research on working together. For instance, see: Agile Methods and User Centered Design: How These Two Methodologies are Being Successfully Integrated in Industry


Week 5: (Feb. 9-13) Discovery in UI Design Process

Read chapter 4 in the text on the discovery phase of UI Design Process.  This concerns building collecting and interpreting information about the proposed system, its stakeholders and anticipated tasks. After collecting data through observation, interviews, questionnaires etc., the data must be interpreted. Often this results in artifacts useful in organizing and explaining what has been learned about an existing system, or what is to be expected of the new system.

This week, work began on a small system: PolygonMaker.


Week 6: (Feb. 16-20) Early UI Design Artefacts

We continue discussing the sorts of data and artefacts collected and created during the discovery phase. Work continues towards completion of the PolygonMaker assignment due Friday (2/20).  For that system, abstract prototypes of major interaction spaces, a interface Flow Diagram, and screen sketches are to be created (see assignment for details).

No class meeting on Wed. Please use the time to visit the International Festival and meet up with you project partner. While in the Student Center, stop by the bowling lanes and observe the interaction and context of the score keeping software. Hierarchical Task Analysis was discussed with a tea making example - here are some details that might have been collected by asking George Orwell ("A Nice Cup of Tea").

Gathering more background on users and the context of use. User errors as classified by Norman (summarized nicely in a review of his book "The Design of Everyday Things")

PolygonMaker assignment due Friday 2/20.
Exam 1 will be a week from today on Friday 2/27.


Week 7: (Feb. 23-27)

Personnas, Affinity Diagrams/Card Sorting, Heuristics, HE, Requirements

Exam 1 on Friday 2/27.


Week 8: (Mar. 2-6) Prototypes and Prototyping with code

Meet in the Faner 2102 Lab on Wed., March 4 for a hands on session with the Netbeans GUI Builder.
There is an assignment based upon continuing this exercise. (Due Wed. March 25)
Chpt 5.3, 5.6, Prototypes, UI Toolkits (event loop, window events, button events etc.), Visual Builders.


March 9-13  - - - - SPRING BREAK - - - - 


Week 9: (Mar. 16-20)

Chpt 10 Interface Components.  Windows, layouts, Look & Feel, buttons, dialogs etc. Our discussion uses examples from Swing. Java has Look and Feel Guidelines and other information about Swing interface components on the web.


Week 10: (Mar. 23-27)

The  code prototyping assignment due Wed. March 25, should be submitted using cs484submit.

Note that we have a mixed Linux environment (32-bit and 64-bit), and the submit command is 32-bit so it does not work on 2102 64-bit machines under Linux. Use terminal/putty and ssh to either PC00 or PC01 to run the command in 2102. For our other Linux computers, the command works fine.

Fitts' Law (also in text 7.6) , Menus, Cursors, Text etc., Hick's Law(also in text 7.4) , MVC, Observer Pattern

Week 11: (Mar. 30 - April 3)

Finished discussing MVC, Design Principles(Chpt 6), Introduced ProjectReporter project.
Chpt 6 Design Principles esp 6.2-6.5. (Utility, Safety, Flexibility, Stability; Simplicity, Memorability, Predictability, Visibility)

ProjectReporter project groups develop scenarios/questions for user feedback about requirements discovery.
E-mail before Monday's class.  Recall that scenarios (text p161) are used to describe how users go about trying to accomplish something with the proposed system - they are usually written with a specific user in mind, in user language (not describing internal states but what the user sees/does) and may include user goals, motivations and environmental factors. Here are a couple more examples/descriptions from: infodesign and  agilemodeling.


Week 12: (April 6 - April 10)

Exam 2 on Monday 4/6.

Paper Prototyping is lo-fi prototyping technique that provides a quick and expensive way to explore ideas and get feedback. Here are a couple of online articles explaining the technique: A List apart; paperprototyping

We start discussing Chapter 8: Usability Testing. Groups work on preparing a paper prototype for the ProjectReporter application. Initial feedback was given on proposed scenarios and questions.

Week 13: (April 13 - April 17)

Groups prepare for "customer" visit on Wed. The paper protoypes will be used in a evaluation with potential customers. Please be prepared - see Chapter 8.3-5. Have a script (welcome, introductions, today's goal etc.) and specific scenario(s) that the user should try to accomplish with your prototype(see 8.3.4). Know your group roles (moderator/facilitator, computer(co-processor), note taker(s)). Always treat your users with courtesy and respect. After trying out your scenarios, you should have a chance to debrief your user (Was the task scenario realistic?, Any suggestions to the design? Any particular problems/confusions? etc. ) Don't forget to thank them (and record their name). You will have about 15 minutes for your sessions.

Week 14: (April 20 - April 24)

Statecharts, Usability Metrics(this paper talks about many metrics - we discussed Essential Efficiency(EE) & Task Concordance(TC) in particular) Heuristic Evaluation, Applying usability testing to the real world (RITE)

Groups submit UI Designs (as an electronic document) due Friday, April 24

Week 15: (April 27 - May 1)

GOMS-Keystroke(or Keyboard) Level Model (discussed in chapter 7)
An example of how studying real users might lead to guidelines- reading text on the web. Remember real user experiences - don't just focus on numbers (i-phone alarm setting usability example). Codifying what's worked before - interaction patterns for user interfaces.

Heuristic Evaluation of UI Designs due Friday, May 1


Final Exam - Tuesday, May 5 @3:10-5:10



Emphasis will be on material covered since last exam.