The topic of this term project is a collaborative project management application which we will call PMT.
Each team will pick a particular event or project to manage, e.g. construction, publishing, software development, event organization, etc.
PMT interface will provide the following services to its users:
1. Individual and project leader user registration.
2. Project management in the form of task definition, task dependency definition, task assignment to personnel, task status modification and viewing.
3. Individual task status viewing, project overall status viewing (all tasks) by various criteria.
The three main functions expected from the tool are (1) Support persistency so that the tool can maintain state between sessions. (2) Provide multiple users and user types (individuals/administrator) and enable user updates to the persistent data. (3) Generate dynamic reports based on the current status of the project. The project may be done using multiple languages/technologies as long as one is object-oriented. The class model should demonstrate the use of inheritance and composition relationships.
Details of the deliverable schedule will be posted to the class web site.
| Date Due | Deliverable |
| Tuesday, Oct 24th | Three or more use case descriptions & UML use case diagrams |
| Tuesday, Oct 31st | CRC cards corresponding to two use cases |
| Tuesday, Oct 31st | UML Class diagram; UML Sequence and collaboration diagrams for two or more scenarios. |
| Tuesday, Nov 14th | Three or more programming by contract implementations. |
| Tuesday, Nov 21st | Three or more unit tests. |
| The week of Nov 28th | Demonstration & final documentation including all source code. The project should demonstrate three or more examples of class design heuristics, inheritance and composition relationships, one design pattern, 3+ programming by contract examples, 3+ unit tests and project status persistence. |