Information for

Graduate courses

Graduate courses assume a background of at least third-year honours Computer Science at the University of Waterloo and a similar level of mathematical maturity. Students lacking this background will be asked to acquire this material in addition to the other requirements of the program.

Course calendar

Graduate courses are classified into three levels:

Graduate course offerings

In general it may be assumed that 600-level courses will be offered in each of the next few years, but that the 700 and 800-level offerings will vary greatly from year to year.

For information about instructors and time tabling of 600-level courses for the current term, please see the UW course schedule. For 700 and 800 class times, see term schedule.

Current course offerings

Enrolling in Computer Science graduate courses

Starting several weeks before the start of the term and ending at the course drop/add deadline (about six weeks after the start of the term), graduate students can enroll in CS graduate courses using Quest, the University of Waterloo's student information system. Students are advised to consult with their supervisor prior to enrolling in courses online.

Enrolling in courses

Enrolling in non-CS graduate courses

Students are permitted to use non-CS graduate courses and count these towards their course requirements if pre-approved. Students can consult a table of non-CS courses to determine if a non-CS course has previously been pre-approved and the course area and level indicated. If the proposed course is not on this table, the student must consult with the Director of Graduate Studies to get approval.
The number of non-CS courses permitted in the course requirement for each program is limited, unless an exception is made after consultation with the CS Director of Graduate Studies.
  • MMath thesis 1 out of 4 courses
  • MMath research paper 2 out of 7 courses
  • MMath coursework 2 out of 8 courses
  • PhD from master's 1 out of 4 courses
  • PhD from bachelor's 2 out of 8 courses

Enrolment in a non-CS course is done using a Drop/Add Form.

Non-CS students enrolling in CS graduate courses

Graduate students from other departments cannot enrol on Quest for CS graduate courses which are reserved for CS graduate students only. Students in other programs are advised to request a place on the waiting list and may attend class where space permits. After the first week of classes, if places remain in the course, students on the waiting list will be sent a permission number to enrol on Quest according to their place on the waiting list.