Each team should copy into the information below in their wiki pages, and edit to keep an up to date project plan. Add tasks and products as needed. Teams will present a short progress review to the class on the dates for steps 1-4, as well as a comprehensive 15 minute presentation and demonstration of their project on the dates for steps 5 and 6. The final presentation 6 will be to a panel of people including Dean Rob Clark.

Start working quickly; it is fine to run ahead of schedule, but dangerous to run behind schedule. There will be no extensions beyond the last day of class on Dec 13.
1. Specification
Nov 1
2. Detailed Design
Nov 8
3. Alpha Release
Nov 15
4. Beta Release
Nov 22
5. Production Release
Dec 6
6. Customer Evaluation
Dec 13

1. Specification

Concept: clearly describe the purpose and function of the system.
Storyboards: illustrate how system will work and appear.
Architecture: specify
  • hardware and software modules
  • box and arrow diagram showing flowing of control and data between modules
  • description of the control and data for each arrow in the diagram
Bill of materials: determine added materials needed (if any) and obtain them. The budget for materials should not exceed $100. You may need to use recycled rather than new parts. Shop wisely, prices for small parts can vary wildly.

Tasks
Task
People
Deadline
Status
Architecture



Storyboard



Concept



Bill



Products
document
initial project plan (all sections)
"
concept writeup
"
storyboards
"
architecture writeup
"
bill of materials

2. Detailed Design

API: define the function headers and data structures shared between modules.
Code skeleton: created commented code skeleton. Use "stubs" for bodies of functions that have not been finished. It should be possible to run the skeleton.
Prototype modules: implement prototype versions of all modules that are novel or challenging.

Tasks
Task
People
Deadline
Status
















Products
document
API
hardware
prototypes of ...
software
prototypes of ...
software
code skeleton



3. Alpha Release

Create an end-to-end working version of the system. Initiate alpha tests.

Tasks
Task
People
Deadline
Status
















Products
document

hardware
alpha hardware
software
alpha software



4. Beta Release

Complete alpha testing: find bugs, missing functionality, and unneeded functionality.
Redesign review: given time constraints, determine what will be fixed, added to, or eliminated from the system.
Beta release: based on redesign review, implement changes to system in order to create the beta release.
Draft the user guide.

Tasks
Task
People
Deadline
Status
















Products
document
redesign review writeup
hardware
beta hardware
software
beta software
documentation
draft user guide

5. Production Release

Beta testing: find and fix bugs.
Production release: implement final version of system.
User guide: revise and publish complete user guide.

Tasks
Task
People
Deadline
Status
















Products
document

hardware
production hardware
software
production software
documentation
user guide


6. Customer Evaluation

Give a project presentation that convinces the audience of the project's technical ingenuity, artistic merit, and/or commercial potential.

Tasks
Task
People
Deadline
Status
















Products
document
presentation materials