CS 350 – Computer/Human Interaction
Fall 2006 – Project Overview


This is an overview of the course project. You should not expect to know how to use the interface building tools at this time; we will cover them in class. This document is being handed out to give you some idea of the kind of project that is being assigned, and to let you know when the various due dates are.


The entire project is worth 70% of your grade. This breaks down into individual parts as follows:


10%


Individual HTML/Perl CGI prototype

10%


Individual Visual Basic prototype

10%


Individual Java Swing prototype

5%


Group project mid-project report

10%


Group project final written report

10%


Group project presentation

15%


Group project implementation


Since the nature of the material in this course leads to files that must be world-readable, the instructor reiterates the syllabus regarding the University Honor Code:


Project parts are to be your own work or your group’s work only unless otherwise noted. Asking another person for assistance on specific items in your own project is permitted, but you may not observe another person’s code in its entirety for the purposes of studying or copying it, with or without that student's permission.


The following statement must appear on each project assignment submission and be signed and dated by the submitter(s):


In accordance with the University of Evansville Honor Code, I/we attest that the project I/we am/are submitting is completely my/our own work, and that I/we have not received nor given any unauthorized aid on this project.

Note that this admonition is not intended to prevent the use of outside resources. E.g., looking at the resources that the instructor has provided is permitted. Also, looking at resources not directly related to this course is permitted. What is not permitted is looking at solutions written by other students in the course, even if the technology allows you to do so. If there is any doubt as to whether assistance is acceptable, consult the instructor.


Important Dates

Friday, September 1

XHTML/CGI script prototype out

Friday, September 15

XHTML/CGI script prototype due

Friday, September 15

Visual Basic prototype out

Monday, October 2

Visual Basic prototype due

Monday, October 2

Java Swing prototype out

Monday October 16

Java Swing prototype due

Wednesday, October 18

Exam 1

Friday, October 20

Group project out

Friday, November 10

Group Project mid-project report due

Wednesday, November 29

Group project presentations

Friday, December 1

Group project presentations

Monday, December 4

Exam 2

Tuesday, December 12

Group project implementation and final report due


The Project

The final group project is to build a simple interactive chat system. To this end there will be 3 prototype projects to be completed individually during the first half of the course. These prototypes will be implemented using XHTML forms with Perl CGI scripts, Visual Basic, and Java with the Swing graphics package. The goal of each prototype is to provide a vehicle for exploring some of the theoretical ideas being covered during the course and to provide enough experience using the tool so that you can make a judgment on the suitability of the tool for implementing the final group project. Generally, the prototypes will be concerned with the interface of the system, and will require only small amounts of actual computation.


The final group project will be completed in groups of 2-3 (no exceptions). For the most part, you will be allowed to choose your groups. Each team member will receive the same grade unless extenuating circumstances are brought to the attention of the instructor. The final group project consists of three parts: an implementation, a presentation and a report. The final group project specifications will outline a minimal set of features required to be fully functional for a complete project. In particular, knowledge of networking and databases is not required for this project, though may be used.


Short descriptions of the parts of the project follow in the order they will be built. A detailed handout will be given out for each portion as shown in the schedule above.


XHTML Forms with Perl CGI Scripts

The HTML forms with Perl CGI scripts prototype is due on Friday, September 15. This prototype will be a web-based message board, which has many of the same interface features as a chat program, but is not as complex. The main goal of this prototype is to work with XHTML and Perl as interface tools and explore ways of storing and retrieving information.


Visual Basic Application

The Visual Basic application is due on Friday, October 2. This prototype will be an interface-only design of a chat program. The main goal of this prototype is to work with Visual Basic as an interface tool (in particular, as an example of a GUI builder) and add more features needed in a chat program.


Java Swing Application or Applet

The Java Swing prototype is due on Monday, October 16. This prototype will be to create a rudimentary chat program. The main goal of this prototype is to work with Java Swing as an interface tool and add features needed in a chat program.


Group Project Mid-Project Report

User stories and some preliminary design work for the group project will be due on November 10.


Group Project Final Presentation

The final group project presentations will be on Wednesday, November 29, and on Friday, December 1. All groups should be prepared to make their presentations on November 29. Presentations will be 15-20 minutes long and should include a demonstration, the design rationale of the interface based on scenarios, and a usability evaluation test plan.


Group Project Final Implementation and Report

The final group project implementation and report are due at the time of the scheduled final exam time, 4:45pm on Tuesday, December 12. The report should be approximately 10-20 pages and include the design rationale of the interface based on scenarios (with screen shots), and a usability evaluation test plan.


08/31/06 3