This is an old version of the class. Please see the 2017 version instead.

05-830, Advanced User Interface Software, Spring, 2013

Homework #1: Evaluate the Usability of a User Interface Tool or Toolkit

10% of grade. Tuesday, Jan. 15, 2013 - Tuesday, Jan. 22, 2013 (due at 12 noon!!)


List of tool choices from class are in this GoogleDoc. (Email the professor if you want to change, as long as you pick a tool no-one else has picked).

Here is a file of the students' presentations: PDF.

User Interface tools are generally designed to be used by programmers, but programmers are people too! Pick a user interface tool or toolkit. It doesn't have to be an interactive tool -- you can evaluate a library or framework. For example, so candidate tools are things like: the Java language, Swing, Microsoft Visual Basic, Apple xCode, Adobe Flash, etc. There is a preliminary example list of such tools here as a GoogleDoc. In order to help fill out this list, the first part of this homework is for each person to do the following (this part is due with the rest of the homework on Jan 22):

Separately, everyone in the class must pick a different toolkit to evaluate (see list of possibilities and list of what people selected). Note: it is fine to evaluate a tool already on the list, as long as it is a tool no-one else has selected. Some tools have many parts, so it is OK if different people do different parts of the same tool. For example, someone could do the Java language, while someone else does the Swing toolkit for Java, while someone else does the Eclipse IDE for Java, etc. We will assign tools during the first lecture on Tuesday, Jan. 15, 2013 during class, so be prepared with which tool you would like to do (note that you might not get your first choice, since everyone must do a different tool).

You will evaluate your tool with either Neilsen's Ten Usability Heuristics or T.R.G. Green's Cognitive Dimensions Framework. (It would alternatively be OK to do an actual user study, like Jeff Stylos's, but I don't think there is time!) Your report should discuss both problems and things done well. You should include pictures or code or documentation snippets that illustrate each of your points. Each point should be annotated with the particular guidelines or cognitive dimensions that are being violated or being followed. If violated, you might suggest a fix. Discuss at least 10 points that illustrate at least 5 different heuristic guidelines or at least 5 different cognitive dimensions. I am looking for insight, subtlety and depth (thus saying "the system doesn't have good color choices because it doesn't use color" is pretty trivial and won't count for much).

Turn in a hardcopy of your report and slides in class on Tuesday, Jan. 22, 2013, and also upload your report and slides (as a ZIP file containing two (2) PDFs--one of your report and one of your slides) to blackboard before class. (See the instructions about turn-ins and the late policy.) **PLEASE UPLOAD YOUR ZIP FILE BEFORE 12:00 noon on Tuesday, Jan. 22, 2013, so I have time to put them all together before class**.


If you are not familiar with Heuristic Analysis, read about it in the following resources. Note that the list of heuristics on the web site are slightly different than those in Nielsen's Text. To avoid confusion, please use only the ones that Nielsen lists on his web site.

If you are not familiar with Cognitive Dimensions Analysis, here are some resources:


Here is a GoogleDoc with a tentative assignment of class members to tools (see the list of possible tools to choose from)


Back to Homework Overview
Back to 05-830 main page