Homework #7:
(Due 04/27/05 05/04/06)
A digital alarm clock
Overview
For this design homework you will build a simple interface
for an alarm clock, which allows users to set an alarm by time and days of
the week. For example, you can have different wake up times on weekdays
and weekends. You have the creative license to design an interface of your
choice. The clock should also display the current time and date.
What you have to do
-
Design the digital clock interface. The interface should
let users set time, and set an alarm by time and days of the week. The
clock should also display the current time and date. The interface shall
be based on hand interaction (e.g. pressing buttons, dragging a slider), but
shall not rely on the keyboard (i.e. no command-line clock). Remember to keep
in mind the requirements of a KLM analysis.
-
Implement your design. See below for the implementation
guide lines.
-
Using the KLM model, predict the time it will take to:
-
Set the clock date and time,
-
Set a new alarm time and day of week,
-
Cancel an alarm,
-
Stop the alarm.
-
Using at least 6 different users, measure the average
time it takes to:
-
Set the clock date and time,
-
Set a new alarm time and day of week,
-
Cancel an alarm,
-
Stop the alarm.
Implementation
For this project, you have to choose the specifics of how
to implement your project within certain limits.
Platform
All projects must be able to run under Windows 2000 (or
NT), or Windows XP. You can expect that the machine you will be running
your project on will have a Java 2 virtual machine, and can execute Flash
web pages. Finally you can expect the computer to have at least a CD-ROM
drive.
Software
You are free to pick any programming languages (C++,
Virtual Basic, C#, Java, Flash, Director...) and development environment
you wish as long as the resulting program runs on the configuration
described under the Platform section.
Deliverables
Your homework should contain:
-
(20 points) For each of the following features, at least
10 ideas (described by a sketch or a short paragraph) showing how to
implement this feature:
-
Set the clock date and time,
-
Set a new alarm time and day of week,
-
(20 points) A half page rationale explaining your final
design. The rationale has to be based on HCI principles (theories like
Cognitive models, Perceptual models, KLM, etc.) and heuristics (e.g.,
Neilson heuristics) discussed in the
class. Please include illustrations of your final implementation, using
screen snapshots, and explain them.
-
(20 points) Your KLM analysis and the time you are
predicting for:
-
Set the clock date and time,
-
Set a new alarm time and day of week,
-
Cancel an alarm,
-
Stop the alarm.
-
(10 points) The average time measured (and how you
measured it) for:
-
Set the clock date and time,
-
Set a new alarm time and day of week,
-
Cancel an alarm,
-
Stop the alarm.
In addition, please include a copy of your consent form, a description
of your participant population (anonymously), a description of how you
measured time, as well as the checklist followed by the experimenter.
-
(10 points) An explanation of the discrepancies between
predicted and measured times. This includes any confounding
variable that might have influenced your results
-
(20 points) The executable code (in running order).
A webpage will be setup for submitting your program and
instructions about submission will be sent to the class mailing list. |