4. Developer Overview
The Scheduler Tool is arranged in this hierarchy:
- Administrator Application
- Menu Operations
- Schedule Generation*
- Schedule Fine-Tuning
- Schedule Viewing*
- Databases
- Room Database
- Course Database
- Teacher Database
- Directory Information and Preferences
- Constraints*
- Teacher Application
- Directory Information
- Time Preferences
- Class Preferences
- Student Application
- My Plan
- Teacher
- Schedule
- Feedback
Items marked with a (*) are expected to be the most important and at the same time the most difficult portions to implement.
Schedule Generation
This portion is expected to be the most algorithm intensive portion of the implementation. It must take all the Database information (including teacher preferences, room hours and locations, features and facilities, etc.), contain a fairness algorithm, and conform to a set of inviolable and preferred constraints.
Schedule Viewing
This portion is expected to have the most operations of any portion of the implementation. It must conform to the view standards laid out in the functional requirments sections, including responses to Administrator Fine-Tuning actions and awareness of constraints violations.
Constraints
The Constraints file has several "must achieve" elements, and must be able to modify the priority of several "preferred constraints." Implementation in this version may not be extremely difficult, but in later versions where the Administrator may add his/her own constraints, parsing and/or scripting is expected to require very intelligent code.
Prev: non-functional
| Next: spec
| Up: index
| Top: index