WINTER 2004 -- Information and Computer Science -- UC Irvine -- David G. Kay -- ICS 104


This assignment is due by noon on Wednesday, February 25.

You will do the main part of this assignment (Part I) with the partner you chose at the end of the previous assignment.

Part I

In the previous assignment, you identified three applications that perform the same function. For this part, pick a single task (e.g., starting a new game, or setting the user preferences, or initiating a chat with someone on the buddy list) that each application performs with mouse or pointer movements. (If there is no common task in your applications that's pointer-based, talk to us right away to work out an alternative.) Try to identify a task that takes four or five different movements, on the average. (This is a rough guideline; don't pick a task that requires a single click in every application and don't pick one that requires a dozen steps, either.) If you have difficulty identifying an appropriate task, send Email to

(a) Which of the three applications lets the user perform the task most quickly? Consider everything--recognition time, movement time, anything else. Which application makes the task slowest?

(You'll need to decide on the characteristics of the hypothetical user you're talking about here--beginning or experienced, old or young or in between, whatever characteristics are relevant--and keep those assumptions constant throughout.)

Produce illustrations of the steps involved, with the movements marked. Describe and explain your conclusions in at most half a (single-spaced) page (not counting the illustrations).

(b) Use Fitts' Law (P = C1 + C2 (log2(2D/W))) to analyze the speed of performing the task on each system. For each step in the task, measure the distance and the target size and apply the formula. You'll have to make some assumptions and adopt some conventions (Is W the width of the target or its area? Will you use inches, centimeters, or pixels as your unit? What's the user's starting point at the beginning of the task?); just keep those decisions consistent as you analyze the three systems so your results should be valid for comparison purposes, even if the numbers might need some scaling to produce actual times. Don't bother with the constants C1 or C2, either. (If there's some reason that you think your systems aren't comparable in this way, talk to us.)

Show your calculations and analysis (probably a spreadsheet would be best, with a row for each step in the process), keyed to the illustrations in part (a). State clearly what results this analysis produced.

(c) Did your Fitts' Law analysis of part (b) reach the same conclusion as your holistic analysis of part (a)? Unless the results were identical in every respect, describe and explain the differences. (Half a page is the maximum here.)

(d) Take your best-performing application and redesign the screen(s) for the task you analyzed to make that task even faster. (If you think your winning application is perfect, choose one of the other applications and redesign it to improve it, maintaining consistency with the rest of the original application (i.e., don't just redesign it to look like the winner).)

(d.1) Sketch out your redesign on paper. You and your partner should each walk through the redesign, looking for problems and making improvements. There's nothing to turn in for this part.

(d.2) After you're satisfied with your redesign, create a mock-up using a WYSIWYG GUI builder (e.g., Visual Basic, Visual C++, Dreamweaver (for web pages), Interface Builder or OmniGraffle (on the Mac)). Some of these tools are available on the lab machines or for free trial download. You just need to show the new screen(s); you don't need to implement the functionality. This is a mock-up, not a polished design, so don't spend more than an hour or two putting this together. Incorporate your finished illustrations into the electronic document that you turn in.

(d.3) Describe your redesign and explain how it improves the original. (Half a page maximum.)

Combine all your answers into one electronic document and submit it via Checkmate. (The guidelines about hand-drawn illustrations also apply.) Just one member of your group should submit the work, but of course both group members' names must appear clearly in the body of the assignment itself.

Part II

(a) Read each of the following. They'll show up in future lectures, later assignments, and/or the final exam:

(b) Download and install the program Denim, from the Berkeley Group for User Interface Research ( Spend a few minutes reading about Denim on their web page, viewing one of the introductory videos there, and playing around with the program itself. Skim through the tutorial that comes with the software, but don't go through it in detail at this point.

There's nothing to turn in for this part.

Written by David G. Kay, Winter 2004; using GUI-building tools was suggested in assignments by Alfred Kobsa and Nayla Nassif.

David G. Kay, 406B Computer Science
University of California, Irvine
Irvine, CA 92697-3425 -- (949) 824-5072 -- Fax (949) 824-4056 -- Email

Friday, February 13, 2004 -- 12:22 PM