Quick Links: Project
Class Schedule Design Notes
Project Part 1: Selection Project Part 2: Prototype
Project Part 3: Evaluation Project Presentations

CSC 481 Winter 2002 Project

Project Overview

An important part of this course is the term project. As a member of a design team of around 5 students, you will apply the methods and skills learned in class (and hopefully elsewhere) to the design, prototypic implementation, and evaluation of a realistic application. The project consists of several parts, which will be graded separately. Each team has to produce joint deliverables, which will be the basis for the grades of all team members. The team members will also be asked for feedback on the performance of the other team members. This subjective feedback may be used to adjust individual scores. Team members are also required to document their activities, e.g. in the form of work sheets.

Project Organization

The first part of the task will be to select an application, and to establish the requirements that will serve as the basis for the later evaluation of the applicatoin. Then a prototype of your selected application will be implemented. Note that in many cases, due to time constraints, this prototype will not be fully functional, but it should have a "front end" that can be used for evaluation purposes. In the last part, the prototype will be evaluated. Since it is obviously difficult to evaluate your own product, the evaluation will be performed by a different team. Finally, there will be a presentation on the project. This presentation will focus on the last part, the evaluation, and must include information on the initial user requirements, design, and implementation performed by the original project team. Both for the evaluation and the presentation it is very important to provide the evaluators with good documentation. This will be done with the help of design notes described next.

Design Notes
Design Notes Template

In your design notes, you should capture all relevant information about your project, such as user requirements, reasons for design choices, technical problems encountered, reasons for the selection of development tools and environments, status reports, etc. These design notes serve at least two important purposes: First, they will be graded. Second, they will be used by the evaluation team to perform the review of your project, and will contribute substantially to the technical aspects of the final presentation given by the evaluation team.

Organizational Aspects

In order to facilitate the exchange of information, especially between the design/implementation and the evaluation teams, the design notes must be kept as a Web-based document; a template is available to give you some guidance on the organization of your notes.
If desired, a Web Page coordination group can develop a alternative Web framework for the documentation of the projects. This must be done early in the term, however, so that the individual teams can develop their Web pages accordingly.

The following paragraphs provide you with more details on the different parts of the project. Included is information on the time frame, and the contribution of the part to the overall grade. For exact information on the time frame, please consult the class schedule.

Project Part 1: Selection and Requirements
Completion: Week 3 Points: 15
Class Schedule Part 1 Template
| Back to Top

The first part of the project has two main objectives:
  1. Selection of the application.
  2. Elicitation of the user requirements.
Your team needs to identify an application to be working on, and to clearly specify the task the system is supposed to solve. In many cases, it will be useful to look at existing systems for the selected or a similar application, and identify features that are missing or can be improved. In the ideal case, a summative evaluation should be performed on a fully developed system that is used in a real-world application by the actual users. Since this is practically impossible in a classroom setting, you will have to "switch hats" from your customary designer or programmer's perspective, and look at the task to be performed from a user's point of view. To establish the required functionality as well as usability aspects is also known as requirements elicitation. For large systems, these requirements are sometimes translated into a formal system specification, which serves as blueprint for the actual implementation, and as the basis for the evaluation and testing of the system. Again, it is not practical here to perform a full requirements elicitation or a formal specification, but you need to put down the crucial functional features of your system together with important usability aspects. Please note that especially the usability aspects will be used by the evaluation team to perform the assessment of your project. By providing concise and clear definitions of these aspects, you will be able to focus more on the technical aspects of the prototype implementation, and it will be much easier for the evaluation team to derive the evaluation criteria for the assessment of the system. Please use this template to prepare your documentation of the first part of the project.

Project Part 2: Prototype
Completion: Week 6 Points: 20
Class Schedule Part 2 Template
| Back to Top

The two important aspects for this part are:
  1. Implementation of the prototype.
  2. Preparation of a testing and evaluation plan.
After clarifying the requirements for your system, you will implement a prototype of it. The prototype should be substantial enough for users to play around with, and to get a feeling for the interaction with the system. For this part of the project, you will need to concentrate on the technical aspects, relying on the specifications and design notes from the first part of the project. This is the kind of work you're probably most familiar with; nevertheless, you should not underestimate the amount of time that is needed to build the prototype. In addition to the actual prototype of the system, you will work on a a plan for the testing and evaluation of the system. Again building on previous work, you will describe a collection of usage scenarios, ideally in combination with some clearly defined benchmarks that allow a well-founded evaluation of the system, and its comparison with other, similar ones. You should show the overall user interface to potential users as early as possible, even if the prototype is not finished, and get some feedback from them. This will help you to incorporate changes early in the design stages, when they are relatively cheap to implement. Make sure to have a record of the user feedback, either as video, audio tape, or interview notes.
The testing and evaluation plan should be based on principles and methods from Software Engineering and Human Computer Interface Design. Keep in mind that this plan will be the basis for the evaluation performed by another team; even if you have a wonderful prototype, a lousy testing and evaluation plan is an excellent basis for an unsatisfactory evaluation ;-) In order to facilitate collaboration between teams, all implementations and documents must be accessible via the Internet, either as Web-based application, or by making the executable downloadable.

Project Part 3: Evaluation
Completion: Week 9 Points: 15
Class Schedule Part 3 Template
Assignment Evaluation Teams Back to Top

For this part, each team will evaluate another team's project. The evaluation team will perform the tests and evaluations described in the previous part by the development team. The overall evaluation will be presented to class in a final presentation, and documented as Part 3 of the project. The evaluation team also may suggest changes to the system itself, and to the testing and evaluation plan. Remember that this evaluation is done on the prototype of the system. Changes are still relatively easy to incorporate into the final design, and improvements for the testing and evaluation of the final system will also be easy to incorporate. On the other hand, this evaluation is probably restricted to a partial functionality, and might not cover the full scope of the final system.

Project Presentations
Completion: Week 10 Points: 30
Class Schedule Presentation Template
| Back to Top

The final presentations for the project will be given as a joint presentation by the development and the evaluation team. The development team will present the task, purpose, design, and implementation of the system, and the evaluation team will report on the evaluation of the system. The overall presentation must not be longer than 20 minutes, plus 5 minutes for discussion. The development team has 15 minutes for its presentation, and the evaluation team 5 minutes. Presentations that go over their time limit may be interrupted, get a lower grade, or both. The total of 30 points per team consists of 20 points for the development presentation, and 10 for the evaluation presentation. If time and circumstances permit, a quick demo of the main functionality of the system should be integrated into the development team's part. The discussion time can be used for questions and feedback from the audience, or for the clarification of misunderstandings or controversies between the development and the evaluation team.


Project Grading Scheme
Selection and Requirements 15
Prototype 20
Project Evaluation 15
Presentations 30
Mutual Team Member Evaluation 20
The overall score for the project is 100 points, which contributes 30% to your overall grade. 80 out of these 100 points come out of my evaluation of the team project, and usually every team member gets the same core. Up to 20 points come from an evaluation of your team mates, calculated as the average of all your team mates' scores for your work. I reserve the right to change the allocation of points for extreme cases, however (e.g. if everybody agrees to give all the other team members the full 20 points). I may also ask you for further documentation to support your contribution to the team, or your evaluation of a team member's contribution. Follow this link to a template for the Mutual Team Member Evaluation Sheet, or download it (with more refined formatting) as an Excel file.

A Few Notes on Teamwork

A substantial degree of your grade in this class depends on the overall performance of your team. This can be good (you do nothing, and still get a good grade) or bad (you do all the work, but it is not enough). Ideally, every team member should contribute a roughly equal share. In reality, this is not the case because team members have different backgrounds, experience, work habits, cultures, etc. Just like in a professional work environment, you have to find a balance between looking after your own interest, and contributing to the overall team effort. If at any point you feel that there are serious problems with your project team, feel free to talk to me, and we will try to find a solution.

Web pages Copyright © 1996-2002, Franz J. Kurfess, Email: fkurfess@csc.calpoly.edu
Last modified: Tue Jan 15 18:33:22 PST 2002