Student Scheduling Manual
Last Updated: October 2025

Table of Contents

Introduction

Student scheduling, sometimes called student sectioning, involves assigning students to classes (course sections) based on their individual course demands. It consists of courses that have already been timetabled, students and their individual course demands, and producing a class schedule for each student. It is modeled as an assignment of student course requests with enrollments, i.e., valid combinations of classes that the student needs to take to enroll in a course. There are various hard constraints, such as students not having a time conflict (unless allowed, in which case the overlapping time is to be minimized), classes and courses being limited in size, or restrictions limiting who can attend a particular class or course. It is also an optimization problem, combining a long list of various criteria, such as maximizing the number of courses each student gets, considering student and course priorities, student preferences, penalizing alternatives and substitutes, minimizing distance conflicts or travel times, etc. In the rest of this section, the most interesting aspects of the student scheduling problem are discussed.

Course Structure

Each course may be offered in multiple configurations, such as face-to-face or online, each with multiple components (subparts), such as a lecture and a lab. Each subpart may contain multiple alternative classes. A student requesting a course will get one class of each subpart of a single configuration. There can be additional parent-child relations between individual classes, which also must be followed. So, for example, a student may get Lec 1 - Lab 1, Lec 1 - Lab 2, Lec 2 - Lab 3, or Lec 2 - Lab 4 class combination if attending the course face-to-face, or Dist 1 when attending the course online. Each class can also have a limit, allowing only a certain number of students to get in.

Reservations and Restrictions

Access to courses or certain components of courses, such as configurations or individual classes, may be restricted with reservations. A reservation reserves a certain number of seats in the course, or some of its components, for a particular group of students, e.g., identified by their study program. A restriction does not reserve any space, but the students must follow it. For example, a student of an online program may be restricted to the online course configuration, while other students may freely choose between the two configurations, assuming space is available. Similarly, there can be 100 spaces in a course reserved for students of a Computer Science major, or the space in one of the Labs may be reserved for a particular cohort.

Alternative and Substitute Courses

A student may provide alternatives to each course. The aim is to get a given number of courses, and one or more alternative courses can be provided for each course. It is also possible to provide substitute courses that can act as alternatives to any other course requests except those that have been marked as no-sub by the advisors (typically those that the student must take). The order in which the courses are requested is also important, as it helps us to break the ties, e.g., when it is not possible to get both courses because they are overlapping in time, or when there are more students requesting the course than the space available.

Student Preferences and Requirements

A student can indicate which course configurations and/or classes are preferred for each course. It is also possible to provide free time requirements, which can act as unavailabilities (i.e., a student cannot get a class at the time) or preferences (i.e., an overlapping time with the free time should be minimized), depending on the position of the free time among the courses.

Students may also indicate whether they prefer online or face-to-face classes and whether back-to-backs are preferred or discouraged. For the Summer terms, which are organized into three four-week modules, it is also possible to indicate during which modules the student can have classes and whether they can attend classes on campus.

Student and Course Request Priorities

Student and course request priorities have been added to help students graduate on time and to deal with popular courses of limited capacity. First of all, advisors may indicate courses as vital to the student, which means that the student absolutely needs the course (or one of the provided alternatives) to progress towards their degree. Moreover, students are divided into priority students (such as athletes and students in university bands and orchestra), students near graduation (with 100 or more credits earned), senior students (60 or more credits), and the rest. Vital course requests take priority over student priorities.

Batch vs Online

Student scheduling in UniTime can be done in two modes. In batch mode, the Student Scheduling Solver is used to compute individual student schedules for all (or a selected population of) students simultaneously. This is an optimization process aimed at maximizing the number of courses students can take, as well as considering various optimization criteria, including travel times and the aforementioned preferences and priorities. This process includes a pre-registration step where students provide information about the courses they need (usig Student Course Requests), along with additional preferences, alternatives, and requests for free time.

The online student scheduling serves students as they come. They can use the Student Scheduling Assistant to either modify their existing schedule or create a new one from scratch (e.g., if only the online mode is used, or the student did not complete the batch for some reason).

The two modes are not mutually exclusive. Typically, the online mode is enabled once the students have been provided their initial schedule using the pre-registration & batch process. In this case, the students use the Student Scheduling Assistant to make changes to their schedule, and possibly wait-list for courses that are currently full.

Student Scheduling Prerequisites

The student scheduling component requires that the course timetabling be already completed with the course timetabling solution(s) saved and committed. Additionally, it makes use of Reservations, the Associated Course relations, and two distribution preferences:

Besides the courses and the course timetable, the student scheduling also needs to have students imported, possibly with their course requests when the batch is used without doing pre-registration in UniTime. Students cannot be entered directly in UniTime; the expectation is that they will be imported from an external Student Information System. This can be done using the Students XML or the Student Course Requests XML format using the Administration > Academic Sessions > Data Exchange page (see XML Interfaces for more details).

Batch Student Scheduling

The batch student scheduling is done using the Students > Batch Solver page. The student schedules are computed using the student course requests that can be either filled in by students in UniTime using the Student Course Requests page (see below) or imported using the Administration > Academic Sessions > Data Exchange page using the Student Course Requests XML format (see XML Interfaces for more details).

To enable pre-registration, the academic session needs to be in a status that allows for Student Scheduling: Course Requests (see Status Types for more details), the students need to exist in UniTime, and if an external authentication is used (such as LDAP, CAS, or OAuth2), their external IDs must match the user ID of the authenticated user. Such users will be granted the Student role upon logging in to UniTime and will have the related permissions.

Advisor Course Recommendations

It is possible to use UniTime for advising. Advisors can use the Online Student Scheduling Dashboard to monitor their students’ and their (pre-)registration progress. They can use the Advisor Course Recommendations page to change their students’ status and provide a list of courses that they need to register for.

Please note that the Advisor Course Recommendations page is an optional component and does not need to be used for students to pre-register. And even when used, students still need to use the Student Course Requests page, which will get pre-populated with the advisor course recommendations, and need to Submit the page to complete their pre-registration.

Advisor Course Recommendations

When opened, the advisor can look up a student, and the page gets pre-populated with the existing data. A different student can also be looked up by clicking the Lookup Student button or when the student’s name or ID is clicked. If advisor course recommendations from multiple academic sessions can be viewed and/or edited, an academic session can be selected afterward. It can be changed at any time by clicking the term field. When there are any unsubmitted changes, the user is prompted when leaving the page or changing the student or session.

The page automatically offers course suggestions as the course name is being typed in (but it is possible to put in free text too), fills in credits, counts the credit totals, etc. When submitted, there is a PDF version generated that can be printed and signed by the student. It is also possible to email the document to the student (with the advisor on CC) when the page is submitted (and the Send email confirmation toggle is checked). In this case, the Send email… dialog pops up after the form has been successfully submitted, and the user can provide an additional message and email address if needed.

The page also allows for a student status change when submitted. This eliminates the need for the advisor to also use the Online Student Scheduling Dashboard to change the student status (e.g., to let the student fill in his/her course requests). UniTime keeps a record of these advisor course recommendations for possible auditing/reporting (what students requested versus what they have been advised, list students who have already been advised that did not fill their course requests in, etc.). Some of these can be seen on the Online Student Scheduling Dashboard.

Recommendation Settings

The student advisors can be defined on the Administration > Academic Sessions > Student Advisors page. If an external authentication is used (such as LDAP, CAS, or OAuth2), their external IDs must match the user ID of the authenticated user. Such users will be granted the Advisor role upon logging in to UniTime and will have the related permissions.

The page requires the Advisor Course Requests permission. A user (typically an advisor) can look up and see advisor recommendations for all students; he/she may be only allowed to edit no students, only his/her students, or all students (depending on the Student Scheduling Advisor Can Modify All Students or Student Scheduling Advisor Can Modify My Students permissions).

The following additional flags can be provided by the advisor (for each course request) when enabled:

Student Course Requests

Students can use the Student Course Requests page to fill in the courses they would like to get, together with their alternatives, substitutes, course preferences, and free time requests.

Student Course Requests

The Student Course Requests page can be used to collect course requests (course pre-registrations) from students. It is a variant of the Student Scheduling Assistant page that is used during online scheduling, without the ability to create a student schedule right away. Course requests can be collected during the timetabling process, once it is known which courses will be offered. Once student course requests are collected, the Student Sectioning Solver can be used to create an optimized schedule for all the students. After that, online student scheduling can be enabled, allowing students to use the Student Scheduling Assistant page to review their schedule and make any necessary modifications.

A student may request one or more courses, ordered by their priority. Each course may include any number of alternatives. Preferences can be set on individual classes and/or for instructional method when the course has multiple configurations with different methods (e.g., Face-to-Face and Online). The student may also mark the class and instructional method preferences as required. This is not enabled by default as it effectively restricts the list of available enrollments into the course to those that include the class(es) or instructional method(s) that are marked as required. It is possible to type in the course name or part of its title directly into the page and use the available suggestions to find the matching course, or click the Course Finder icon to open the Course Finder dialog. Please note that on the Course Finder dialog, the List of Classes is only available, and the preferences can be set only after the course timetable has been published.

Free time requirements can also be put in the Course Requests table. They can be either typed in (day or days of the week + start time + end time) or selected using the Course Finder dialog by clicking the Course Finder icon. The position of a free time request is quite important. Any courses below the free time cannot overlap with the free time (the free time has higher priority), while courses above the free time are allowed to overlap. The solver will try to minimize the overlapping time in this case.

Additional substitute courses can be entered in the Substitute Course Requests table at the bottom of the page. Unlike with alternatives, the substitute course (possibly also with alternatives provided) can substitute any of the above courses to ensure the student will get the desired number of courses. Only courses that are marked with the Wait-List or No-Sub toggle (when allowed) cannot be substituted.

The Preferences button allows students to indicate their preference for class modality (face-to-face or online) and schedule gaps (prefer or avoid back-to-back classes).

Course Requests Settings

In order for students to have access to the Student Course Requests, the Student role needs to have Student Scheduling Can Register permission. The Student Scheduling Can Require Preferences permission is needed to be able to mark class and instructional method preferences as required.

If student statuses are being used (see Administration > Other > Student Status Types), the student’s status must allow for Registration for the page to be available and Student Register to make changes. The default student status is set on the Administration > Academic Sessions > Academic Sessions page; individual student statuses can be set on the Online Student Scheduling Dashboard or by advisors using the Advisor Course Recommendations page.

Students may or may not have the ability to indicate that a course can be wait-listed when it is not available (assuming that the course in question allows for wait-listing), or not replaced by a substitute (No-Sub). The ability to indicate the desire to wait-list a course is included in the student scheduling status. A wait-listed or no-sub course cannot be replaced by a substitute course; however, alternative courses are possible.

Courses of a particular Course Type can be made unavailable for students to select on the Student Course Requests page, when the appropriate course type is not allowed on the student scheduling status. Such a course does not show up in the Course Finder dialog. Courses controlled by a department that does not have Student Scheduling enabled will also not be available for the students to find and select. This can be further adjusted using the Student Scheduling Rules.

The available options on the Student Scheduling Preferences dialog can be adjusted by various unitime.enrollment.studentPrefs.* parameters on the Application Configuration page. Namely:

Student Preferences

When unitime.sectioning.alternativeCourse is set to true, the Edit Course Offering page can be used to provide a Default Alternative Course Offering for a course that will be used when the student requests the course without providing any alternatives.

A custom course request validation can be implemented using the CourseRequestsValidationProvider interface. This interface also provides an API for checking a student’s eligibility to submit their course requests. This is used at Purdue University to check the student’s ability to register for the selected courses and to request overrides for any potential registration errors. For example, please see the Purdue-specific UniTime Course Requests User Manual

Page access control is available for the page. It can be configured using the following properties:

Student Scheduling Solver

Once students have filled out their student course requests or the requests have been imported from an external system, the Student Scheduling Solver page can be used to run the solver and produce individual student class schedules.

Student Scheduling Solver

There are the following properties that can be selected

The data can be loaded into the solver using the Load button, and the solver can be started using the Start button. When no data are loaded into the solver, using Start will first load the solver and then start it. This can be combined with the When finished parameter, for example, to save and unload the solver once it is done automatically.

The Stop button can stop a running solver, or it can be left running until it stops itself. The solver run is typically 8 hours, which can be adjusted with the other student scheduling solver parameters on the Administration > Solver > Configurations page. The solver works with two student schedules: the current one (displayed on other pages and manually changeable using the Batch Student Solver Dashboard page) and the best schedule that the solver uses to record the best solution it has seen during the search. To save the current student schedule, click the Save button. The solver can be unloaded from memory using the Unload button.

The Clear button will unassign all student schedules, allowing the solver to start from scratch, even when existing schedules have been loaded. It can also be used to unassign all student schedules in the database (delete the existing solution) by using the Load, Clear, and Save buttons in this order.

The Reload Input Data button can be used to reload the input data (courses with their structure, timetable, and reservations, student course requests) without losing the current student schedule. This will load everything into the solver, using the newly selected configuration, except for the saved student schedules. Afterward, the current student schedule will be reassigned to the newly loaded requests. This is particularly useful when changes have been made to the input data, eliminating the need to perform Save, Unload, and Load again. Please note that some requests may be left unassigned if their current assignment is incompatible with the changes made to the input data. Please check the solver warnings for any such cases once the reload is done.

The Save To Best and Restore From Best buttons at the bottom of the page can be used to copy the current schedule over to the best manually or vice versa.

Solver Configuration

Optimization weights and other parameters can be adjusted on the Administration > Solver > Configurations page. Student scheduling solver configurations have the Student Scheduling Solver appearance.

The solver is working with variables (one variable is a requested course or free time, including its alternatives) and values (one value is a valid combination of sections for the course or its alternative). Besides of hard constraints that cannot be violated (class/configuration/course limits, time conflicts, reservations, linked sections, availability for students with teaching assignments, etc.), the batch solver tries to maximize the weighted sum of all assigned variables (course/free-time requests). The weight is computed using the request priority, the alternativity of the course in the request (1st alternative has a lower weight than the main course, etc.), distance conflicts and time overlaps (when allowed), and section and instructional method preferences. There are also additional penalties for classes that are without a time assignment, to promote section balancing, minimize changes (in MPP mode), and to keep students of the same group together. The solver can also consider last-like student demands or curricula to ensure that students avoid sections that are expected to be needed by students who have yet to arrive. These projected demands can be also used to compute expectations for the online student scheduling solver (which considers a few more weights, namely avoiding over-expected sections, considering current selection and locked sections, etc.).

The base weights for the priority-based weighting (course priorities are considered) are 0.501 for the first priority course, 0.251 for the second priority course, 0.126 for the third priority course, etc. (using 0.501^n, where n is 0, 1, 2, …). So, getting the first priority and nothing else has a slightly higher weight than all the other courses. However, the alternatives are also factored in using the 0.501 factor, so the 1st alternative of the 1st priority course has the same weight as the 2nd priority course, etc.

As for the other weights, the time conflict can eat up to 1/2 of the weight of the lower priority course, proportional to how much time is being overlapped.

The following weights are much lower, mostly to provide order to the available enrollments:

Free time requests also play a role. If a course is below a free time request (in the priority), it cannot overlap with the free time. If it is above the free time request, the time conflicting with the free time is considered (in the same way as a time conflict between two courses).

Teaching assignments can prohibit time overlaps (a student cannot enroll in a class that overlaps with their time assignment) or minimize time overlaps (there is a penalty for overlapping time with a teaching assignment). When the instructor scheduling module of UniTime is used to assign teaching assistants, this can be configured for each assignment (e.g., a TA must be available for the sections they are teaching, but may have a time conflict during the lecture).

The solver does not guarantee that it will just maximize the course request priority. The requests may be prioritized one level lower due to other penalties (especially those lower on the list, where time and distance conflicts can play a bigger role), but typically not more.

Vital (critical) course requests (and possibly also priority students) are handled by assigning them first and not allowing the solver to make a change that would favor a course request that is not critical over a critical one (despite their priorities). There are no additional weights associated with these. Moving the priority course requests to the top of the list of requested courses also helps the solver to ensure it gets as many of those assigned as possible.

Student Priority

It is possible to prioritize some students over others. There can be six priority groups (Priority, Senior, Junior, Sophomore, Freshmen, and Normal). Students can be assigned to a particular priority group (other than Normal) via the student groups feature. So, for instance, a Priority group can be created for students who should be assigned first. For the solver to recognize the groups, there needs to be an appropriate solver parameter created (Administration > Solver > Parameters page, e.g., Load.PriorityStudentFilter for priority students, Load.SeniorStudentFilter for senior students, etc.) and populated with a student filter that would match the students that should have that priority. Here is an example of Priority group matching the Load.PriorityStudentFilter.

Priority Student Group

Student Schedule Quality

Starting with UniTime 4.4, additional student schedule quality criteria have been introduced in the student scheduling solver. These include:

All these can be configured using the solver parameters using the Solver Configurations page.

Published Runs

When test runs are enabled (the user has the Student Sectioning Solver Publish permission), the Publish button (on the Student Scheduling Solver page) can be used to save the solution under the Published Schedule Runs page without actually saving the student class enrollments in the database. This can be very useful for conducting periodic (e.g., nightly) test runs during pre-registration, without saving any student schedules in the database yet.

Published Schedule Runs

There can be only one published solver run per academic session, but UniTime will retain a history of previously published runs. A published run can be visible to other users who have the permissions to see the Student Sectioning Dashboard and/or the Published Schedule Runs page.

A published solver run is visible to all users who have the Student Scheduling and Student Sectioning Solver Dashboard and/or Student Sectioning Solver Reports permissions (possibly including advisors, departmental schedule managers, and instructors). It is indicated in the solver status (below the page name) as ‘Solver Published’. A published solver run is static (it is loaded in the solver, but cannot be started or modified using the Scheduling Assistant dialog on the dashboard).

It is possible to extend the When finished solver parameter to allow for Publish or Publish and Unload in the Solver Configurations.

To Administration > Academic Sessions > Task Scheduler page can be used to schedule the periodic test runs using the Student Scheduling: Start Test Run script. To register the script, download the linked XML and import it using the Data Exchange page.

Solver Dashboard

The Students > Solver Dashboard page can be used to check the solver results.

Batch Student Solver Dashboard

When a solver run has been published, all personnel with the Student Sectioning Solver Dashboard permission can use the page to see the results of the solver run that has been just published. This is particularly useful for the Schedule Managers to check which courses do not have enough space offered (zero Available space with students in the Not-Enrolled column), create time conflicts or have some reservations that are preventing students from getting in (there is still some space Available in the course, but still there are Not-Enrolled students). Similarly, the Advisors can use the page to check if their students are able to get the courses they need.

For the user that has the solver loaded in memory (just below the page name, the solver status says Awaiting commands … instead of Solver Published), the Batch Student Solver Dashboard page can be used to make manual schedule adjustments to individual students. To do so, on the Students tab, click on the student and then click the Scheduling Assistant button. While it is not possible to make changes to a published solution, an administrative user can load a published solution into the solver (on the Published Schedule Runs page click on the Load button) and publish it again once done (on the Student Scheduling Solver page click on the Publish button).

The Students > Online Scheduling Dashboard can be used to monitor student pre-registrations (before a student scheduling solver has been saved) or the resulting student schedules (once a student scheduling solution has been saved). It is important to note the difference between these two dashboards, while they look similar (some features are only available in one or the other), they are populated by different data (loaded in the solver or saved in the database).

For more details about the dashboard, please see the Student Scheduling Dashboard Manual.

Solver Reports

There is a set of solver-computed reports available on the Students > Solver Reports page. The page can be used to compute reports from the current student scheduling solver solution that is loaded in the solver, or from the published solution. The Student Sectioning Solver Reports permission is needed to access this page.

Batch Student Solver Reports

There are many reports, concentrating on various aspects of the student scheduling optimization and results, like time conflicts, availability conflicts, distance conflicts, section balancing, or unused reservations.

Online Student Scheduling

During the online student scheduling, the students use the Student Scheduling Assistant to build their class schedule or make schedule changes. The Online Student Scheduling Dashboard can be used to monitor student progress. Advising and the Advisor Course Recommendations page can still be used, though it has been primarily designed for pre-registration.

To enable the online student scheduling, the academic session needs to be in a status that allows for Online Scheduling (in the Student Scheduling section, see Administration > Other > Status Types for more details). Once the academic session status is changed, all the necessary data will be loaded into the Online Scheduling Server, allowing for prompt responses even when the Student Scheduling Assistant page is used by hundreds of students at the same time. The admin can monitor the online scheduling servers on the Administration > Solver > Manage Solvers page.

Student Scheduling Assistant

The Student Scheduling Assistant helps students build a workable class schedule.  It takes a list of courses a student is interested in and determines the class sections the student needs to take in order to get as many of the courses being requested as possible.

Student Scheduling Assistant

The Student Scheduling Assistant tries to calculate a schedule for the student based on the following criteria:

Once the assistant has suggested a schedule, a student can make changes to the schedule until she finds a combination of times for the classes that meets her needs.

Additional information is available in the Student Scheduling Assistant Manual.

Wait-Listing

If a course and the student status allow for wait-listing, it can be wait-listed on the Course Requests table using the Wait-List checkbox. Suppose the course is not available for the student, e.g., because it is full. In that case, it can also be wait-listed on the List of Classes (using the Wait-List checkbox on the line with the course) or on the Alternatives dialog when the course/class is clicked (using the Wait-List button).

Student Scheduling Assistant

Additional properties can be entered on the Wait-List Preferences dialog when the wait-listed course is clicked from the List of Classes table.

Alternatives for Class

It is possible to wait-list for a course swap or a different section of the same course. In this case, the enrolled course that is to be replaced with the wait-listed course is selected on the Wait-List Preferences dialog. The original course is then also listed in the Wait-Listed Courses table (Replaces column).

If the wait-listed course has alternatives provided on the Course Requests, these courses are also being wait-listed if they allow for wait-listing. That is, if space becomes available for the student in the alternative course before there is space available in the first-choice course, UniTime will enroll the student in the alternative course instead. The alternative courses are also listed in the Wait-Listed Courses table and in the Wait-List Preferences dialog.

Re-Scheduling

When re-scheduling is enabled, students can be automatically moved around the course when there is a course change. This happens when an instructional offering is being unlocked (the Unlock button is clicked on the Instructional Offering Detail page, reload-offering action) or when the online scheduling server is being reloaded (check-offering action). Changes are only made to the course that is being updated (the rest of the student’s schedule is left untouched), allowing students to be moved when

Students will not be moved when a class, configuration, reservation, or offering limit is decreased (when the enrollment gets over the limit), or when student scheduling is disabled for a class.

Students are processed in the order of the course priority (position of the course on the Course Requests table), each student with a problem (one of the three listed above) is either moved to some other enrollment (UniTime will try to keep as much of the existing registration or their original timetable as possible) or dropped from the course when no possible enrollment is available for the student. If wait-listing is enabled, the dropped student is wait-listed for the course with the wait-listing timestamp set to the original enrollment date (to retain the enrollment order).

If wait-listing is enabled, the students wait-listed for the course are processed just after the re-scheduling is done. So, for example, when a new class is added or a class limit is increased, the wait-listed students will get automatically enrolled if the new enrollment does not conflict with the rest of their schedule. However, students that do not have a problem, or are not being wait-listed, are kept where they are even if moving them would allow for some other student to get in.

Scheduling Assistant Settings

A lot of the settings for the Student Course Requests apply to the Scheduling Assistant page, too.

In order for students to have access to the Student Scheduling Assistant, the Student role needs to have Student Scheduling Can Register permission. The Student Scheduling Can Require Preferences permission is needed to be able to mark class and instructional method preferences as required.

If student statuses are being used (see Administration > Other > Student Status Types), the student’s status must allow for Assistant for the page to be available and Student Enroll to make changes. The default student status is set on the Administration > Academic Sessions > Academic Sessions page; individual student statuses can be set on the Online Student Scheduling Dashboard or by advisors using the Advisor Course Recommendations page.

Courses of a particular Course Type can be made unavailable for students to select on the Student Scheduling Assistant page, when the appropriate course type is not allowed on the student scheduling status. Such a course does not show up in the Course Finder dialog. Courses controlled by a department that does not have Student Scheduling enabled will also not be available for the students to find and select. This can be further adjusted using the Student Scheduling Rules.

Page access statistics and control is available for the Student Scheduling Assistant page. It can be configured using the following properties:

Notifications

Students can be automatically emailed about a change in their schedule using the various notifications. These are configured with the student statuses, with the following Notifications options:

The student notifications can also be adjusted by setting unitime.enrollment.email. properties in the Application Configuration.

Instructors can also be notified about a schedule change of a class they are assigned to. These can be configured by the following Application Configuration settings:

Wait-Listing & Re-Scheduling

The wait-listing (or re-scheduling) of each course can be turned on or off on the Edit Course Offering page for the controlling course, using the Wait-Listing dropdown. It has the following options:

There are a few Application Configuration parameters related to wait-listing and re-scheduling, namely:

Only students who have the Wait-Listing enabled in their student status can wait-list for a course, and only students who have the Re-Scheduling enabled in their student status may be automatically re-scheduled when there is a change in a course that allows for wait-listing or re-scheduling. The setup may also allow for wait-listing and/or re-scheduling to only happen during a certain time window, by setting the start/end dates on the status and with a fallback to a status that does not allow for wait-listing and/or re-scheduling.

By default, wait-listed students are ordered by:

This can be changed by setting unitime.custom.WaitListComparatorProvider with a class implementing the WaitListComparatorProvider class.

Scheduling Integrations

A number of custom interfaces can be implemented to allow for, for example:

For example, please see the Purdue-specific Student Scheduling Assistant Manual.

Online Student Scheduling Dashboard

The Students > Online Scheduling Dashboard can be used to monitor student registration & enrollments, change student status, etc.

Online Student Scheduling Dashboard

The Online Student Scheduling Dashboard screen provides a tool for displaying a given set of course requests/student enrollments or students. The page also displays information from the sectioning log (either for a particular student or by a given filter). The page is available for administrators, scheduling deputies (can approve consent), student advisors (can change student enrollment), and course coordinators (can approve consent of the instructor). Course coordinators can only see courses that are assigned to them. The page has extensive filtering capabilities (by the student, group, curriculum, course, subject, consent, …). It is possible to email students and/or change their scheduling status.

See Student Scheduling Dashboard Manual for additional documentation about the dashboard.

Additional Documentation

There are also the following manuals: