Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Next »

This procedure must be done after Timetabler - Assigning Course Characteristics has been done.

 Student Demand and Course Characteristic logic

The University of Waterloo has many components with reserved seats for students from specific program years. These reserved seats need to be respected during the Assigner process for students requesting these courses and course combinations that are created to represent an actual group of students (please note that there will also be course combinations that are meant only to spread courses in the schedule, they do not represent a group of students).

 

To deal with this, the download from their SIS creates a course characteristic for each Reserve/Course with the option “Section(s) and/or Component(s) are Available Only to Students Requesting this Characteristic” and assigns it to all components of that course that is reserved for students of that program year. If the component has seats left over for other students or has no reserves, then the course characteristic “Space” is assigned to it (please note that the “Space” characteristic has the same option checked). Therefore any one component can get;

 

  • One or many Reserve/Course characteristic but no “Space” characteristic. This means that all seats are reserved for students from particular program years.

  • One or many Reserve/Course characteristic and the “Space” characteristic. This means that some seats are reserved for students from particular program years but extra seats are left for students that do not meet any of the reserves. 

  • Only the “Space” course characteristic is assigned. This means that the component is open to any student that does not meet any of the reserves.     

 

On the student side of things;

  •  If the student requesting the course meets one of the reserves assigned to that course the student’s course request will download with that Reserve/Course characteristic requested. In this case the student will get assigned to a component that has the course characteristic that represents the student’s reserve.

  • If the student does not meet any of the reserves associated to that course but that course has “Space” for other students, than the student’s course request will download with the characteristic “Space”. In this case the student will get assigned to a component that has the course characteristic “Space”.

  • If the student does not meet any of the Reserves and the course has no extra “Space” for other students, than the student’s course request will download with no course characteristic requested. In this case the student’s course request will get rejected because all the components of the course have either a course characteristic that represents a Reserve or the characteristic “Space”

For Course Combinations that represent an actual group of students (e.g. First Year Students), all course requests should be considered required for the students and so the courses requested should either be reserved for them or should have extra “Space” available for them. Therefore every course request within a course combination should have a course characteristic request for the Reserve or for “Space”.

 

This works great for students and for course combinations that actually represent a group of students. However, some course combinations are submitted just to keep some courses conflict free. In these cases, every course request does not have a course characteristic attached to it since it does not represent a reserve or extra “Space”. This however causes a problem since all of the components either have a Reserve/Course characteristic and/or the course characteristic “Space” and all of these have the option “Section(s) and/or Component(s) are Available Only to Students Requesting this Characteristic”.

 

Therefore Assigner needs to be done in two passes; First for course combinations that are meant to only spread out courses but do not represent a group of students and then for Students and Course Combinations that do represent a group of students.

These are the settings that should be there when you run block builder and assigner.

 IMPORTANT: Avoid using all special characters, including single and double quotation marks (e.g. “, ‘) in the course combination IDs.

First Pass of Assigner

dealing with the "spreaders"

Ensure all the combinations are first ENABLED

Disable all Course Combinations that represent a real group of students. Note: These course combinations can be identified by the “Academic Block Type” associated to them (i.e. For Actual Group of Student). This is accessed through "Course Combinations"

Make sure that the remaining course combinations that are meant to simply spread out some courses; are properly built, active, that each has the academic block type ”to spread things out” and that none of their course requests have a course characteristic attached.

In "Secondary Files" under "Course Characteristics" batch edit all course characteristics that represent a Reserve/Course and the “Space” course characteristic and remove the option “Section(s) and/or Component(s) are Available Only to Students Requesting this Characteristic”. Also check the "Marker for them as they will be easier to find later. Don't select any of the "campus" locations - UW, BLND, ONLN

 

Under "Tools" run the "Balance Enrollment Based on Demand..." loop with only course combinations as demand until the scheduling vs actual enrolment values look good.

There should be zero errors - If you got errors here, something has gone wrong, and you should restart.

Under "Tools" run the "Batch Student Assigner" loop, only the course combinations that are designed "to spread things out” should be there, run the loop until there are no rejects.

This is where you'll get rejects.

Select "Academic Block Building" as the option then select all course combinations under "Course Combinations" then click "Assign" once it's finished click "Commit" then "Forward".

You're interested in the rejects and why there are some that didn't get assigned. Since there are issues here, it's usually reps have forced courses in conflict that should have been conflict free. Attach the courses and email the reps to make them aware. You can only run this once here otherwise it'll undo everything that you "fixed"

This screen will show you what is actually attached to the block already and if you select all, and choose "Stacked Timetable" from the top menu bar, you can see where these courses have been scheduled already and where the conflict is happening.

When finished updating and emailing the reps about the conflicts, click "Done" to exit the student assigner.

Batch edit all the academic blocks that have been created for these course combinations and switch them to be “Non System Generated” and “Exclude from Academic Block Builder”. This includes the NCC's (No Course Combinations). Click the "System Generated" and save, then the "Exclude" button will become available

Disable all of the course combinations that were meant "to spread things out". This is done under "Course Combinations".

Activate all the course combinations that represent an actual group of students.

Second Pass of Assigner 

For an Actual Group of Students

Make sure that all student demand, course combinations that represent actual students and manually created academic blocks that represent an actual group of students, are properly built.

The student’s course requests should have the appropriate course characteristic or lack of (see below). We currently don't use student demand so this isn't relevant. 

The course combinations course requests should all have a course characteristic (see above) and should have the academic block type “For Actual group of Students”.

The manually created academic blocks that represent an actual group of students should have the type “For Actual group of Students”, the right number of students it represents and the option “Ignore from Academic Block Builder” should not be checked.

Batch edit all course characteristics that represent a Reserve/Course and the “Space” course characteristic and check the option “Section(s) and/or Component(s) are Available Only to Students Requesting this Characteristic”.

Run the Balance Enrollment Based on Demand loop Students, course combinations and academic blocks as demand until the scheduling vs actual enrollment values look good.

Don’t select any filters on the next three screens

There will be more errors - this is where who ever has attached the reserves will see any errors or missed reserves.

Right click on the block that has an error and select Edit Course Combination. Under Course Combination requests open the course that has the error and determine what needs to be fixed. Either a missing reserve, or the reserve isn't added to the program list.

Run the Batch Student Assigner loop selecting all students, active course combinations and academic blocks that represent and actual group of students. There will be rejects but only from students. Selecting students and Academic blocks isn't a thing we do anymore - it's only the Course combinations. Also this takes about an hour so over lunch is the best time to just let it run.

The errors can be dealt with in a very similar approach to the above for "to spread things out", however less will be forced, so you add the whole course and components that's missing then see which one gives the fewest conflicts (ideally zero). Some courses won't add as TimeTabler can see that it's going to cause troubles during scheduling. Add it and make it your future problem... sorry about it.

Ready to begin scheduling, finally!!

🥳

  • No labels