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