Managing Variations

Generating Schedule Variations

Once a Lottery has had a Stage scheduled, and its Options created, the process of gathering Learner input will occur once the Stage reaches its opening date. Later on, after reaching the Stage's closing date, you should have a set of data representing each Learner's Rankings of the Options from most preferred to least preferred.

Viewing the Stages Overview at this point will show the Stage Card with a status badge of "Closed", indicating that the timeframe for Learners to provide input has ended. You'll also see a new set of controls on the Stage Card. The first is a dropdown selector that allows you to specify the number of desired Schedule Variations you would like to generate, alongside an action button to initiate the process of generating them.

Variations Overview

After you've generated Schedule Variations for a Stage, that Stage's card will display a button allowing you to Review Schedules. Clicking that button will take you to the Variations Overview, which contains the Reviewing Schedules interface.

Under the "Reviewing Schedules" heading, you'll see a dropdown selector labelled Select Schedule Variation allowing you to select one of the generated variations for review. The dropdown will contain up to five numbered variations, depending on the number specified when clicking the Draft Schedule(s) button beforehand. If any errors occurred while drafting a specific schedule variation, that variation will be marked with a red "Failed" badge, both in the dropdown and when that variation is selected.

When a schedule variation is selected, a modified version of a rotation scheduler will appear below the dropdown selector. This scheduler interface contains a stacked list of Learner rows, with some meta information in the left-hand column, such as their profile picture, full name, and student number.

Learner Assignment Messages

Additionally, below the Learner's name and student number, an assignment message will be displayed to indicate one of the three potential states a Learner can be on at the end of the algorithmic processing for the selected variation. These three states are:

  • If the Learner submitted their Rankings while the Stage was open, and they received one of the Options, then the message will read as "Received Rank #XX", where the XX is replaced with their numerical Rank for the Option that they received. As an example, if a Learner's assignment message reads "Received Rank #9", that means they were assigned a certain Option, and that Option was their 9th highest preference, whereas "Received Rank #1" means that Learner was assigned their most desired Option.

  • If the Learner did not submit their Rankings while the Stage was open, and they received one of the Options, then the message will read as "Auto-Assigned". This indicates that they did receive an Option, but their preferences were given less of a priority during processing as they were generic (Learners who take time to submit a customized list of Rankings are processed with priority over Learners who do not submit their preferences).

  • In cases where the Learner could not be assigned an Option at all due to any errors that may occur while running the processing algorithm, the Learner row will be empty, and a red warning message will be displayed that reads "Failed to Schedule"

Action Buttons

Underneath the scheduler interface are two action buttons. The first of these is a simple Cancel button that will deselect the current Schedule Variation, clearing the scheduler interface and allowing you to select a different variation to review.

The second button is labelled Merge Schedule, which will open a confirmation dialogue to ensure that it is not merged before the administrator is ready. Upon clicking the Confirm button in the confirmation modal, the currently selected Schedule Variation will be merged into the Lottery's working schedule.

If an error happens to occur when attempting to merge the variation into the Lottery's working schedule, an alert message will be displayed to inform the administrator that the operation was not successful. The HTTP response code from the API request will be included in this alert, which can be helpful for diagnosing any potential issues.