EST-CSE 323 Assignments

Overview

This course is organized around a term project developed by a team. The objective is to develop a multimedia application that exploits a novel approach to computer-human interaction. Documenting the development process is as important as the final prototype.

Project Proposal Example

Project Description Worksheet

Phase 1: Research and Design

In the first half of the semester students survey a wide range of applications with novel interfaces, and new input/output technologies; while reading about and discussing CHI principles and ergonomics. They brainstorm and form development teams. At mid-semester teams present their proposals to develop a multimodal, multimedia application. Significant design and research work is expected at this presentation.

In general teams should think of games, learning activities, or other tasks that would be enhanced by a novel computer interface. They should consider the end user, their age, their abilities, and their environment. They should think about a metaphor for the interaction. How is the task done now? How could it be done more productively, efficiently, and fluidly?

The team should consider which tools (transducers) are appropriate to use, and how the application will be distributed and implemented. They should also consider novel outputs (such as 3D, MIDI, actuators) to augment the interface. They also need to consider construction and/or availability of any "props" (such as a camera stand, a physical game board and playing pieces) that the project might require.

The midterm presentation is the take-home exam for the first half of the semester. It begins the project documentation process, which will be completed and submitted along with the prototype at the end of the semester. Teams should present their project ideas through a collaboratively developed project web page, which should include a Scope of Work document, a flow line, and associated graphics, pictures, and sketches.

IMPORTANT - Project documentation specifics are detailed below.

Phase 2: Prototype Development

With the design phase completed, student teams then begin an intense and iterative development process to render a prototype in 8 weeks. Teams should divide up tasks and develop parts of the application simultaneously. One team member might be working on the input, for example, while another is coding the game, and a third is developing the multimedia content and the GUI. All team members should continue to contribute to project documentation, in the form of screen captures, photos, etc.

At the end of the semester project teams demo their prototype application; and submit the demo, project source, and documentation on CD. It is anticipated that some of the projects will be presented at URECA in the spring semester, and might be developed further through a directed research project (CSE 487). Past projects have been published in journals and presented at international conferences.

The final prototype will be multimodal in that it will combine at least one novel interface (computer vision, speech recognition, handwriting recognition, or sensor input) with a traditional GUI. A prototype might have more than one novel input (such as pen-based input along with speech command).

Coding for the project will depend on what the prototype is supposed to do. If it is an educational application it might need to save student sessions to disk and provide an interface for teachers to create lessons. A multiplayer game will need a server-side component. Or maybe the project will require a database back-end. But all code should be well commented.

The multimedia components should be engaging and well-designed. The interface should be fluid and complete. A first-time user should have all the instructions and content they need to do or learn something useful with the prototype easily.

The final presentation is the take-home exam for the second half of the semester. It completes the project documentation process with the inclusion of a Software Design Document (SDD) and related documents, like a user manual.

IMPORTANT - Prototype specifications are detailed below.


Submitting your work

Initially students will have individual accounts. After the midterm project presentations student teams will share a project account to facilitate collaborative work. Students are expected to maintain a backup of all their work for the class, however.

Instructions for logging into your account on the file server >>


Project components

1. Project scope of work (SOW)
Objectives:
1. Define the project 's mission. What is the problem to be solved? Of what benefit is a multimodal, multimedia application?
2. Describe how the task is accomplished now. If applicable, critique "competitive" software solutions.
3. Create a profile of the end user(s), their age, abilities, computer literacy, computing environment, etc.
4. Establish your approach.
5. Upload to your project directory as a .doc and .pdf file, and link the .pdf to the project home page.

The SOW includes a project abstract, rationale, and a bibliography.

SmartStep CIT paper example (PDF) >>

2. Project homepage
Objectives:
1. Create a web-based journal (blog) of your project's development process. Include a log of team meetings and meeting minutes, a catalog of media assets, design ideas and sketches, code versions, etc. Content and clear navigation are important, but don't waste time decorating the site.
2. Name the start page "index.html".
3. Create a logo for your project and put it on the start page for your project.
3. Upload to your project directory. It should be at the top level.

iSign web page example >>

WriteOn! web page example >>

3. Flow line
Objectives:
1. Establish the architecture of your project. Illustrate the flow of the software; show the "repetoire of functionality".
2. Render as a .gif, .jpg, or .pdf. Include source file (probably .psd).
3. Upload to your project directory. Link to your project homepage.

Flowchart example (Presbytery of Long Island web site) >>

Flowchart example (DinoDig multiplayer game) >>

Flowchart example (SmartStep client/server architecture) >>

4. Software design document (SDD)
Objectives:
1. Write the software specifications. Include commented critical code, login and password information, testing and revision history.
2. Upload to your project directory as .doc and .pdf. Link the .pdf to your project home page.

SDD example (PDF) >>

5. GUI design and visuals
Objectives:
1. Develop the theme of your project. The theme should be content-driven. A metaphor for interaction is useful.
2. Design graphics, icons, and screens.
3. Render as .gif(s) or .jpg(s).
4. Upload to your project directory. Add to your project homepage.

6. Narrative and user help
Objectives:
1. Define the narrative for your project. Render the script as a .doc and .pdf file.
2. Create a user manual and embedded help for the application. Submit as .doc and .pdf files.
3. Upload to your project directory. Link .pdf's your project homepage.

User manual example (PDF) >>


Final Prototype
Objectives:
1. Code, comment, and debug. Save a clearly labeled final authoring version.
2. Package your application and external assets (such as Xtras) as an executable (possibly Shockwave). Save as a clearly labeled demo file.
3. Upload to your project directory as a .dir (Director file) and .dcr (Shockwave file). It should be named your project title - underscore - "final" - dot - file extension (as in SmartStep_final.dir and SmartStep_final.dcr).
4. Burn a CD-R (ISO 9660 format) with all source, and executable files, and documentation.
5. Present final project in class.

Prototype examples >>

Final Presentation

SmartStep PowerPoint presentation (html) >>

iSign PowerPoint presentation (QuickTime) >>


Grading

All students on a development team will share the same score and the same grade. The project will be evaluated as follows:

Documentation:
1. Project Scope of Work (SOW) - 10 points
2. Project web page - 10 points
3. Project flow line - 10 points
4. Narrative and user help - 10 points
5. GUI design and visuals - 10 points
6. Project Software Design Document (SDD) - 10 points

Prototype:
1. Design - 10 points
2. Content - 10 points
3. Code - 20 points

A grade of "I" (incomplete) for the semester is rarely given.