In the Schedule you will notice days designated as team project milestones. These are opportunities for your group to demonstrate progress on your team project.
This document describes the expectations for each milestone.
Date Milestone Mar 13 Milestone 1: Minimal Working System Mar 27 Milestone 2: Progress on features Apr 17 Milestone 3: “75%” Working System, Persistence using SQL database May 1 Milestone 4: “95%” Working System
Expectations
Milestone 1: Minimal Working System. Your team should demonstrate
- Model classes, controllers, and unit tests associated with a small number of “essential” requirements
- A persistence interface and a “fake” in-memory implementation of the persistence interface (e.g., using array lists to store model objects rather than database tables)
- A minimal web-based user interface (e.g., JSPs and servlets) that implements a small number of essential features in some minimal form
The idea of a minimal working system is to create a working foundation early in the project’s development. Subsequent iterations of the development process will build upon this foundation to implement additional features.
Milestone 2: Progress on features. In this milestone, your team should demonstrate some progress on features, such that at least some use cases are fully or partially implemented. It is fine if your system is using the “fake” database at this point.
Milestone 3: “75%” Working System, Persistence using SQL database. Your team should demonstrate a working system that implements most of the major system requirements. Also, Your team should demonstrate that there is a working implementation of the persistence interface that uses an SQL database to store and retrieve data (e.g., using Derby). Note that it is not expected that the system has a high degree of “polish”: the UI doesn’t have to be beautiful, for example. However, the features that are implemented should be functional and free of bugs.
Milestone 4: “95%” Working System. Your team should demonstrate a working system that is nearly complete. Nearly all of the required features should be implemented. The system should have a reasonable degree of “polish”. Your team should be prepared to discuss what remains in order to reach a point where the system is complete.
Evaluation
For each of these milestones, I will give your team one of the following grades: below expectations, meets expectations, or exceeds expectations. Below expectations means that I am concerned that your team is not making sufficient progress.