CMSC 434 - Spring 2006
Prof Guimbretiere

Introduction to Human-Computer Interaction


Home Contact Syllabus Schedule HW & Project Links

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.