Faculty Scheduling System

Preliminary Requirements Specification

(Initial draft)


Introduction - Database Elements - Load Calculation
Scheduling Functions - Reports


Introduction

In many academic departments at MSOE, faculty workloads are calculated under a so-called "micro load" system that takes into account many aspects of a professor's teaching and non-teaching duties. (Details of the calculation method are given below.) Although it is somewhat complex, this system is generally considered to be more equitable than some simpler alternatives.

The complexity of the micro load system does cause some problems, however. Primary among these is the task of scheduling faculty workloads, which must be done for each academic quarter. The department chair (or delegate) starts with lists of courses and available faculty, and attempts to prepare a set of assignments that cover all needed class sections, while resulting in faculty workloads that are in the desired range.

For a department of any size, this scheduling process would be all but impossible without computer support. Some years ago, a scheduling program was written by an outside vendor, using a DOS database as a platform. Although this system works reasonably well, no documentation or source code is available; recently, the program has started to fail, perhaps because of the size of the accumulated database.

For this reason, it is desirable to develop a new scheduling software package. The purpose of this specification is to provide a basis for the implementation of the new system.


Database Elements

The system must keep track of the following information:

Professors
Name ("Last, First M"), academic department, status (full-time, part-time), rank (professor, associate, assistant, lecturer, etc.), requested load (minimum and maximum, in hours per week), and base monthly salary.
Courses
Course number (e.g., "CS-489"), title (e.g., "Software Engineering"), responsible academic department, class type ("Day", "Evening", "Non-credit", "In-plant", "Fox Valley", or "Misc"), lecture time (hours per week), laboratory time (hours per week), credit hours, estimated enrollment (for all sections of the course), maximum class size (including a flag that indicates whether this is a hard limit that may not be exceeded), a flag indicating whether the course textbook has been changed since the course was last offered, grading and student contact time (minutes per student per week), and any special preparation time (hours per week). Each course may have special rooms (e.g., laboratories) associated with it.
Course sections
Each section references one of the course descriptions. In addition it has a section number, zero or more assigned professors (usually zero or one), class section size (number of students), and a textual comment field.
[Should there be copies of the grading and special prep time values for each section?]
Special rooms
Room number (e.g., "S-307") and links to course sections assigned.

Load Calculation

The basic load calculation for a course section is a summation of the following components:

In addition to course sections, the following items are included in the workload calculation:


Scheduling Functions

The user of the scheduling software must be able to:

These operations should be implemented in a direct manipulation style, using the Microsoft Windows graphical user interface.


Reports

The scheduling software must produce, on demand, the following reports (samples of reports from the existing software are available for inspection):

Faculty course summary
Listing of all professors together with the course sections assigned to them.
Faculty workload summary
Listing of all professors, together with total calculated workload (hours per week).
It must be possible, at the user's option, to list full- and part-time faculty separately, to list only faculty with workloads exceeding a specified value, and to report both calculated and requested workloads (minimum/maximum).
Faculty workload sheet
Detail report of individual faculty workloads, one professor per page. It must contain the professor's name, department, and requested workload (minimum, maximum), course section data, other workload items, and a summary.
The course section data includes course number, section number, total number of sections for this course, class type, course structure, total contact time, preparation time, grading time, total course section workload, section size, and total student credit hours (section size multiplied by credit hours). Totals should be shown for number of sections taught by this professor, lecture hours, lab hours, credit hours, preparation time, grading time, total time, class size, and student credit hours.
Other workload items must be listed and totaled.
The summary breaks out workload by category ("Day", "Evening", etc.) and includes a grand total of assigned workload.
This report may be requested for one professor or all professors.
Section breakout summary
Listing of all courses with their sections. Each course entry must report course number, course type, course structure (lecture, lab, and credit hours), estimated enrollment, and total number of sections.
Each section entry must list section number, special room(s), section size, assigned professor(s) or an indication that the section has been dropped, and section comments.
Optionally, the user may request this report without the detailed section information.

This specification is maintained by Mark Sebern; it was last modified on September 18, 1998.