In Computer Science, CS advisors have made modifications to the University’s procedures during the Add/Drop period for CS courses only. If you are not able to enrol into a CS course, then the information below may answer your questions:


If you want a non-CS course (e.g., Math, electives, etc.), then please contact the department's advisor/staff of that course for an override. CS advisors are not able to override students into non-CS courses.


The course is full, what do I do?

During the Drop/Add period, we drop the enrolment caps by approximately 15% of the total enrolment number for the course to give advisors room to handle special cases. We will return the enrolment caps to their actual size during the second week of classes after we have had time to help students that fall under our special cases. See above for the date when enrolment caps will be restored (exact time unknown but usually during business hours). 

After the enrolment caps are returned to their actual size, the remaining space may continue to have reserves on the course, which will be removed usually the following day.

I’m getting a reserve error, what do I do?

If you get a "reserve error" when adding a course on Quest, this means that a portion of the class’s enrolment is reserved for a particular group of students and you don't meet the reserve capacity requirements for that course. You can tell that a course has set aside a number of seats for a particular group of students on the Schedule of Classes, directly beneath each section that has a reserve capacity assigned.

See above for the date when reserves will be removed by the Registrar's Office. The exact time is unknown, but the reserve restriction is usually removed during normal business hours. Once reserves are removed, then you can enroll into the course using Quest. Note that spaces in the course will be available on a first-come-first-served basis if the class section isn't already at its enrolment capacity.

I'm getting a department consent error, what do I do?

If you get a “department consent” error when adding a course on Quest, it’s likely that the course has a waitlist (please see below for more information). You will not be able to add that course unless given consent by a CS advisor. 

Please note that courses that have a waitlist will not be available on a first-come-first-serve basis unless department consent has been removed. Department consent will only be removed once we have exhausted the waitlist. 

I'm getting an instructor consent error

During the second week of the term (see above for exact date), instructor consent will be applied to our project based courses (e.g., CS 346, 445, 446, 449, 493, and 494). A student wishing to enroll into one of these courses would need to contact the instructor first and meet their conditions for enrollment (e.g., the student may need to find a group before they can enroll). If the student is able to meet these conditions and if the instructor consents, then the instructor will contact the CS advisors so that we may override the student into the course.

Can I get an override into a CS course? Am I a special case?

In general, we do not override prerequisites for our courses. We will not override you into any CS courses unless you meet our special case guidelines listed below:

1. Students who participated in course selection, but something went wrong because of:

  • enrolment capacity in a course (please review more information regarding waitlists)
  • a time conflict
  • an academic enrolment block was applied after course selection
  • dropping or failing a course after course selection

2. Students who could not select courses because of:

  • a recent transfer to CS
  • their status as international exchange students
  • hospitalization
  • an S&P or ELPE decision or related academic matters

Please note that courses that have a waitlist will not be available on a first-come-first-serve basis unless department consent has been removed. Department consent will only be removed once we have exhausted the waitlist. 

I'm in the artificial intelligence specialization and want into an ECE, MTE, or SYDE course

Please complete the following steps…

  1. Go to the schedule of classes and access the course you would like into.
  2. Fill out a course override form.
  3. Send the completed course override form directly to the professor as a pdf attachment. Please include your full name and student number in the subject line and body of your email.
  4. Once the professor has responded, forward that email to the CS Advisors.

To find a professor’s email address, please check out the Campus People Directory. If the professor’s name or contact information isn’t listed, please contact the ECE, MTE, or SYDE advisor.

 I'm in Math and I want CS 245 and/or CS 246

Math students are able to take CS 245 and CS 246, but most seats (~85%) are reserved for CS students. The remaining seats (~15%) for Math students fills up quickly, so not all Math students will get into these classes even though they chose CS 245 and CS 246 during course selection.

Math students won't be able to add the courses during the Drop/Add period because they don't meet the reserve requirement of being a CS student. Also, CS advisors will not be able to override Math students even if they course selected for CS245 and/or CS246, or need the course to raise their average to transfer into CS.

That said, the reserve for CS courses will be removed shortly after classes start. When reserves are removed, Math students can add CS 245 and/or CS 246 via Quest on a first come, first served basis. 

I'm in Engineering and I want to take a CS course, what do I do? 

An Engineering student (excluding SE students*) may take CS major or non-major courses as defined below. If you are in the Engineering AI option and would like a CS course, then please contact CS advisors.

  • A CS major course is a course that is intended for CS major students. These courses typically have a course code with the second digit [4-9], and are often restricted to Computer Science or Math students in the course prerequisites.
  • A CS non-major course is a course that is not restricted to a specific category of students, and is intended to be generally available to everyone (except for CS major students). These courses typically have a course code with the second digit [0-3], and have no program restrictions listed in the prerequisites.

*Like CS students, SE students are able to take CS course so long as they meet the course prerequisites and course enrolment requirements.

Course Equivalents

We recognize the following specific pairs of engineering courses as equivalents that can be used towards our prerequisites (having one course doesn’t grant credit for anything)[1].

List A: CS 115 and CS 116

List B: CS135 and CS136

  • GENE 121 + MSCI 240
  • MTE 121 + MSCI 240
  • MSCI 121 + MSCI 240
  • NE 111 + MSCI 240
  • ECE 150 + ECE 250
  • SYDE 121 + SYDE 223
  • GENE 121 + MTE 140
  • MTE 121 + MTE 140
  • BME 121 + BME 122

Taking courses with the pre-requisites

If you have the prerequisites for a course, either directly or indirectly using this table, then you are allowed to take that course. If you have the prerequisites, then you are allowed to take CS Minor courses without further restriction.

Taking courses without the pre-requisites (formerly FAQ 78)

If you are missing prerequisites for a course, we will allow you to enroll if you meet all of the following criteria:

  • You have taken the equivalent of first year CS courses. You have taken CS 115/116 or CS 135/136, or meet either List A or List B from the table above.
  • If you meet List A only, then you must also take a Data Structures course. Data structures courses include ECE 250, SYDE 223, MTE 140, and BME 122.
  • You have previously taken an engineering course with significant CS technical content. Typically this would be one of the following courses: ECE 350, 351, 406, 409, 417, 429, 451, 452, 453, 457A, 457B, 458, 459, SYDE 322 or MTE 241.

The following restrictions apply:

  • This rule can be used to override CS prerequisites only. If there are other course prerequisites, then you must satisfy them. For example, CS 335 requires “(One of CS 116, 136, 138, 146); MATH 136 or 146, MATH 237 or 247, STAT 231 or 241”); we can override the CS course prerequisite only in this situation.
  • We will not override Engineering students into CS courses during course selection. Advisors will only do this during the second week of classes (see above for specific date for the term), and only if there are still available spots in the course. You must be overridden into the course by a CS advisor.
  • You must be in your 3B term or higher.
  • CS advisors will only override you into one CS course per term using this rule.

If you are using this rule to take a CS Major course, then the following additional restrictions apply:

  • Engineering students should take Engineering courses where possible. This immediately eliminates CS 341, 348, 350, 450, 454, 456, 457, 458, 485, 486, 490, and 492 because Engineering offers similar content.
  • You must have a CAV of 75% or higher.

[1] This list is up-to-date on the day published. We reserve the right to update these details at any time.

What is a waitlist and which courses have them?

For Spring 2024, some courses have waitlists and department consent has been placed on these courses. Waitlists are only created when the number of students who course selected/pre-enrolled into the course is greater than the number of spots in the course.

Spring 2024 waitlisted courses: 

  • CS 349 - Department consent removed on Monday, April 1, 2024

Students who want to be enrolled in courses that have a waitlist, but did not participate during course selection, will need to wait until the waitlist is exhausted and department consent has been removed. A post will be made on the CS Undergrad Community (on LEARN) when/if department consent is removed on courses with a waitlist. If you receive a message from Quest about needing department consent, then this means that there is still a waitlist on that course. 

How do I get onto a waitlist for a course? 

A waitlist is created when the demand for this course was greater than the number of available seats. Department consent has been placed on this course, and no one will be able to add the course without the permission of CS advisors. Quest may show that there is space in the course but this number is not accurate because the process is manual.

I didn't course select for the waitlisted course. What do I do?

Waitlists are only used to manage students that have course selected or pre-enrolled in the previous term. If you didn’t participate in course selection, then you will need to wait for the list to become exhausted and department consent to be removed. Once department consent has been removed, then the course will be available on a first-come-first-serve basis. The removal of department consent on a course will be posted above.

I course selected/pre-enrolled for the waitlisted course. What do I do?

If you course selected or pre-enrolled for a course and didn’t get in, then you are already on the waitlist. You have been placed on a waitlist for this course, along with all other students who requested this course during course selection, but did not get in. No other students will be placed on this list. We will fill any spots that open up in the course from the waitlist. Our selection will be random, so we are not able to tell you your place in line. If a position opens up for you, then we will contact you.

At this time, there is no need for you to take any action. However, you must respond to us when we contact you once a space does become available; otherwise, we will assume that you are no longer interested in the course. If we do not hear from you when we contact you, then we will remove you from the waitlist and offer the space to another student. Please be sure to check your junk mail on occasion.

If you have decided that you no longer want this course or you no longer meet the prerequisites, then we would appreciate if you would let us know as it would help the other students on the waitlist.

If you have decided to take another CS course instead of the one in which you are on the waitlist for, then please contact the CS advisors for assistance. Note that the course you choose must be one that is not waitlisted, as we will not add you to another course's waitlist. 

Please note that if you have requested another CS course, but was not successfully enrolled and you did not receive an email informing that you are on the waitlist for that course, then you should contact CS advisors for assistance.