Skip to the content of the web site.

My Home

Acknowledgements: Charles M. Schulz and Universal Uclick (Peanuts), the British Broadcasting Corporation (Doctor Who), and tron17.

This is for computer engineering students at the University of Waterloo only.

Important links for ECE students

The list of important dates at the Registrar's Office is here.

You should read the requirements for either the COMPE or ELE programs, so you know exactly what is required of you. To view your program, take the following URL and change the year to the year you started the program if you started before September 2020:

Please note, if you failed a term or two, or left the program for a year, please consult with me to determine under which calendar you should be following. For Calendars of 2020 or beyond, you must use the program-specific link with the correct active date:

These are not links so that you explicitly understand you must change the year. Once you have changed the year, bookmark the page with the ActiveDate option.

Suggestions for improvement

The following have been a few success stories from students whom I have been in contact with.

A student was in a situation where that student had to pass ECE 106, ECE 140 and ECE 240 in one term to continue to graduate on time. The student, against my advice, signed up for all three courses, and knew that if any of these courses were failed, the student would also be required to withdraw from engineering. The student wanted to graduate with the student's class, so the student studied so hard that the student achieved grades in the 80s in all three courses. Up to this point, the student had a cumulative average below 65. The student "thought" that that was the best the student could do, and so accepted getting 50s and 60s in all of the student's courses. Having received these 80s, however, made the student realize that this misconception was entirely invalid, and proceeded to get high 70s and 80s in most of the student's courses from that point on until graduation.

Another student who failed a 2A term was required to repeat that term and wanted to do well; however, despite preparing a study plan, the student realized that it was simply not possible to study any one subject for more than five to ten minutes. The student started this study plan the month following the failed term, and thus, for the next eight months, the student focused on being able to spend more time studying each subject; including those subjects the student was less interested in. By the end of the eight months, the student was able to study for two solid hours per subject without distractions. The student was able to bring the student's own average up from low 60s to above 80 for each subsequent academic term to graduation.

For international students

Many of our students are international and are therefore in Canada on a study permit. At this point, some students have pointed out that their ability to continue is in jeopardy due to the current pandemic and the economic consequences on their families.

Please take the following steps: depending on how much you need, please do visit the university's Student Awards & Financial Aid web page. You may be able to find sufficient funds at that site. Additionally, please speak to a university immigration consultant to determine the impact that a one-term or one-year or longer deferral on your study/work permit and post-graduate work permit.

Failing a course

Suppose you failed a core course:

  • You must clear this failed course by either writing a supplemental examination, retaking the course, or taking an equivalent course.
  • You are only eligible to write a supplemental examination if you achieved a grade between 40 and 49 in the original offering of the course.
  • If you are eligible for a supplemental examination, the Registrar's Office will send you an e-mail with a registration form. You must send that form to the computer engineering advisor/coordinator (currently Claire ( in E7 4314); that person will sign it and forward it to the Registrar's Office. The safest way of paying the supplemental examination fee is through WatCard, as no personal financial information is revealed.
  • A supplemental examination must normally be written within the next three academic terms (one year) after the term in which you failed the course.
  • Supplemental examinations must be written on campus. No exceptions. Period. Don't ask. Please. Thank you.
  • If you cannot write the supplemental examination in required time period, please contact me and provide a reasonable justification for why you could not write the examination (too crowded examination period, co-op placement too far, etc.).
  • If you have an academic decision of may not proceed and you are writing supplemental examinations to clear those failed courses, if you fail any of the supplemental examinations, you will be required to withdraw from engineering. The same goes for failing courses taken to clear failed courses while under an academic decision of may not proceed.
  • If you fail a course but are never-the-less promoted to the next academic term, you are fully responsible for all material that was covered. For example, if you failed the 1B calculus course but are still promoted to 2A, you are responsible for any information you may require for the 2A differential equations course.
  • If you fail a course but pass a post-requisite course, you must still clear the failed course. Failing an introductory circuits course and then passing an advanced circuits course does not mean you no longer have to clear the introductory course.

Suppose you failed an elective course:

  • There are no supplemental examinations for courses offered outside of the faculty of engineering.
  • You do not have to retake the same elective to clear a failed elective: any future elective you pass can be considered as clearing the previous failed elective.

Reduced load

Note: If you take a reduced load, you are ineligible for the Dean's Honour List.

Every student is now allowed to reduce their load by one elective each term, with some restrictions as to how many uncleared courses you can carry. The requirements are:

  • If you reduce your load by one course, your term decision is based entirely on the average you get that term from the courses you are taking. Your term decision is based entirely on this average.
  • You must still take that elective at some point prior to graduation, and for that elective to count as having cleared the course that was dropped, you must achieve a grade of 60 or above. Consequently, if you got an 89 average in your four courses, and the next term you got a 59 in an on-line course you took, that course will not clear the fact that you dropped the elective in the previous term.

Here is an interesting strategy, although it is one that will require you to take a course during a co-op term:

  • As soon as you can, enrol in a useful List-C complementary studies elective (CSE) during a co-op work term and make sure you get a grade of 60 or above.
  • In a future term, you now have the option of dropping an elective if your course load becomes too strenuous. For example, suppose you are in 3A and you are taking your four core courses and one elective. You find yourself overwhelmed by the workload. Thus, you can always drop the elective prior to the end of the Drop, penalty 1 period.
  • If, however, you find yourself doing well, you can continue to keep that course in reserve, up until the end of 4B, and if you get to 4B with this course in reserve, you now have one of two options: take 4B with a reduced course-load or take any other course you want, if only out of interest.

The total number of uncleared failed courses or uncleared dropped electives cannot exceed two. If you have three or more uncleared failed courses or uncleared dropped electives, you are required to clear all but one of those courses before you are allowed to proceed to the next academic term.

What electives should you take before 4th year?

Students often ask what electives they should consider before they are in fourth year. From discussions with previous students, those students who took their natural science electives (NSEs) early found themselves happiest in fourth year, as their electives were now reduced to just taking complementary studies electives (which, while not easy, tend to be less intense than natural science electives) and technical electives.

While I'm here, I'll recommend PACS 315 Peace and Engineering, which counts as a List-C CSE.

Switching between computer and electrical engineering

You can switch between computer and electrical at any time you wish, simply submit a Plan Modification Form to your academic advisor/coordinator (currently Claire ( in E7 4314). If you switch before the start of 2B, you will have no courses to make up, as both programs are identical to this point. If you switch after you finish your 2B term, you will have to make up at least two or three extra courses at some point, and this may be difficult to schedule until fourth year. Unfortunately, some of these courses may be prerequisites for courses in future academic terms prior to fourth year, so you will be personally responsible for any missed material, and even though you may not have an opportunity to even take these courses, if you take a post-requisite course, you will have to self-study the material you missed.

If you are an 8-stream student and you just completed 2B, if you do not have a co-op job placement yet and wanted to switch to computer engineering from electrical engineering, you could join the 4S-stream computer engineering class next term, and graduate the same year you were expecting to graduate, only with one co-op term less. During this term, you could take just the extra computer engineering courses, or you could also take complementary, natural-science or technical electives. If you took additional elective courses and achieved grades of 60 or above, you could then reduce your course load by one elective in future academic terms (see above).

Please note, once you have a co-op placement, we will not under any circumstances allow you to withdraw from that placement to take a non-degree term. You have a professional obligation to take that job, and we will not reward you for shirking on your professional obligations by allowing you to take courses at this institution.

Failing into 2A for Fall 2018 or Winter 2019

If you failed into 2A computer engineering in either the Fall 2018 or Winter 2019 academic terms, your program has changed. Thus

  • You will have to take all courses in your repeat term unless you achieved a grade of 70 or above in a course the first time you took that course.
  • Regardless of your grade in ECE 204A, you must take ECE 204, as the first is a 0.25 weight laboratory course, while the new program has a 0.5 weight full course.
  • If you passed MATH 215 Linear Algebra for Engineering, you do not have to clear MATH 115 Linear Algebra. If you failed MATH 215, you will have to take MATH 115 or an equivalent course prior to graduation.
  • ECE 155 Engineering Design with Embedded Systems will not count towards your degree.

You will, of course, have to clear any failures in 1A or 1B.

Transfers between Electrical and Computer Engineering Programs

If you are a student in either computer or electrical engineering and you want to transfer to the other program, you may do so without any issues up until the add period ends in your 2B Academic Term (see the Registrar's Office list of Important Dates); however, if you wait that long, you may have already missed some of the labs in the other program, so please, earlier is definitely better. Just submit a Plan Modification Form to your Program Advisor/Coordinator, currently Claire (

If you want to switch between these two programs after you have finished 2B or beyond, you will be required to take additional courses that you must make up before graduation. It may be very difficult to fit these courses into your schedule in future terms, and some of those courses may be prerequisites for future courses in the program. You are, of course welcome to switch, but you must realize that you will be fully responsible for any material you may be missing because you have not take the prerequisites.

In general, to make up the missing courses, you will have to either

  1. Take additional courses during co-op work terms, though it is unlikely that you will it possible to clear missing core courses, so instead you will have to take complementary studies electives (CSEs) during your work terms (for example, MSCI 211, a List-C CSE, is offered on-line during the Winter and Fall Calendar Terms of 2018). This, however, will mean that you will be taking technical electives, your fourth-year design project, as well as missed courses during your 4A and 4B terms.
  2. You may be able to fit the missed core courses in as extra courses in future terms, but this again will lead to you taking additional core courses in addition to your core program.
  3. If you are only missing your 2B courses, you could convert a Spring or Fall term to a non-degree term where you are taking courses to clear your missing core courses, as 2B is offered both in Spring and Fall every year. This, however, will reduce the number of co-op terms from six to five. You may be able to apply for a research position here at the University of Waterloo or for a WEEF TA position, but you would have to make it clear to the interviewer that you intend to take on-campus courses. In this case, if you have not failed any PD courses, it may be possible to allow you to take a second course in place of the PD course, but this must be discussed with the interviewer at the time of the interview.
  4. If you transferred into 3B and are missing both 2B and 3A courses, you could convert a Spring co-op term to a non-degree term where you make up the missing courses from both 2B and 3A. You cannot be on co-op and taking more than two extra courses (this includes any PD courses), so you could not apply for a co-op position and take three or more courses under any circumstances.

Please note, taking additional courses during either co-op terms or through non-degree terms, this will cost you at least $1500 and perhaps as much as $2000 per course. You should take this all into consideration if you are planning to transfer between the programs after your 2B Academic Term.

Transfers into the Computer Engineering Program into either 1A or 1B

Transfers into 1A or 1B are dealt with by the first-year office. Please email Student Transfers Engineering and set up a meeting with them.

Transfers into the Computer Engineering Program into 2A or beyond

If you wish to transfer to computer engineering from another program other than electrical engineering, you must prepare a portfolio which you will submit to me, and this portfolio will be reviewed by the Undergraduate Admissions Panel, consisting of faculty members in the Department of Electrical and Computer Engineering.

In your portfolio, you must:

  • Explain why you are interested in transferring to the computer engineering program.
  • You must give evidence of that interest by submitting and documenting any extra-curricular activities that you have done that demonstrate interest in computer engineering.
  • You must demonstrate excellence in all courses related to computer engineering, including any courses that include calculus, discrete mathematics, programming and circuits. If you are not achieving grades of at least 80 in such related courses, you must explain why this is the fact. Please remember, if you are taking courses in these areas in other programs, it is likely that the courses you have taken are not as intensive as the corresponding courses in the computer engineering program.
  • Your portfolio must include a list of programming languages that you have taught to yourself on your own time outside of school. Additionally, you must submit programs you have authored yourself outside of any secondary school or university course you have taken. (Honestly, if you've never authored an programs or taught yourself a programming language outside of the courses you have taken, can you really claim to have "interest" in computer engineering?)
  • You should also include any hobbies you have or any books you have read that are related to the computer engineering program.
  • You must determine which year's Undergraduate Calendar corresponds to the term you are interested in joining. For example, if you wanted to join the 2A Fall 2020 Academic Term, the calendar corresponding to that class is the 2019-20 Undergraduate Calendar. If you want to join the 2A Winter 2020 Academic Term, that cohort started in 2018, so the corresponding calendar will be the 2018-19 Academic Calendar. Go to the Undergraduate Calendar web site and select List of Undergraduate Studies Archived Calendars and select the year corresponding to the class you wish to join.
  • From that undergraduate calendar, you must list all of the courses in any terms prior to the term you wish to join. Then, for each course, you must identify courses you have taken that you believe are equivalent to the computer engineering course. The easiest way to determine this is to see if the course you have taken is an anti-requisite of the computer engineering course in question.
  • For any courses you are missing, you must also indicate when you will take those courses. We offer 1A each Fall Calendar Term, 1B in Winter and Spring, 2A in Fall and Winter, 2B in Spring and Fall, etc.

Please do not ask questions about what should go into your portfolio beyond what is described above: We are interested in you explaining why you should be in the computer engineering program. If you cannot do so, then there is little help that we can provide. Not enjoying the program you are currently in is not justification for transferring into computer engineering. Not being interested in your program is not justification for low grades in that program.

Once this portfolio is submitted, it will be reviewed by the Admissions Panel and if it is approved, you will be invited for an interview.

Secured co-op placements and withdrawing from Academic Terms

In some circumstances, it may be necessary to withdraw from an Academic Term after you secured a co-op work placement. Under such conditions, you will never-the-less continue to hold that placement and your co-op status, as it would be unfair to the employer to believe that they gone through the interview process and secured a candidate for that position to then take that candidate away and require them to once again go through the interview process. If, however, the grounds you have for withdrawing from the term also require you to withdraw from the co-op placement you have secured, please advise CECA through your co-op advisor as soon as possible.

As soon as you submit your Notice of Withdrawal, you will also be withdrawn from Waterloo Works, so if you have not yet secured a co-op placement, you will no longer do so, either. If you are thinking about withdrawing from the term, it is an ethical choice you must take whether you delay your submission of the Notice of Withdrawal until you have secured a co-op placement.

Failed terms and co-op terms

Nominally, all students are guaranteed six opportunities to secure a co-op placement during their undergraduate studies. Students who fail a term may therefore have additional opportunities to secure co-op placements. To the best of my understanding, this is the current situation: We only guaranteed six opportunities at co-op placements, and if you have had six co-op placements, the university has the right to restrict your access to Waterloo Works. This may happen if there is a severe shortage of available co-op placements for the number of students. To the best of my knowledge, however, there was no such shortage of available positions even during the financial crisis of 2007-2008; thus, while we cannot guarantee access to Waterloo Works after your sixth co-op placement, there is a reasonable likelihood that you will continue to have access to Waterloo Works and the opportunity to secure co-op work placements.

To the best of my knowledge, additional co-op placements under such circumstances are available regardless of your citizenship.

Questionable behavior such as repeatedly engaging in an Academic Term until you have secured a co-op work placement and then withdrawing from the term would be, in my opinion, grounds for limiting your co-op placements.

Please note, if you have any questions, you should really speak to your co-op advisor.

Failing terms and eight-month co-op placements

If you secured an eight-month co-op placement prior to you failing an Academic Term and being required to repeat that term, you may continue to engage in that eight-month co-op work placement and then return to your repeated term.

If, however, you secured a standard four-month co-op placement prior to failing an Academic Term, to the best of my knowledge, under no circumstances will you be permitted to extend your co-op status to eight months. You are welcome to approach your employer and determine whether they will hire you on an independent contract for an additional four months, but you are not a co-op student during those four months and your employer will not receive a co-op tax credit for hiring you for those additional four months. You must make this very clear to your employer in any discussions you have; otherwise, this would be considered misrepresentation and thus academic misconduct under Policy 71. Your co-op employer may ask if you can extend your co-op term, but it is up to you to clearly indicate that this is not possible under any circumstances.

Switching streams

If you want to switch streams, please submit a Sequence Change Form with the desired request. Do not ask if room is available, as there are often only a few spots available and we cannot reserve such seats without a Sequence Change Form. At the time of a verbal request, there may still be a seat available; however, if another student were to submit a Sequence Change Form before you submit yours, that student would have priority. You may submit the form to your Program Advisor/Coordinator (currently Claire ( in E7 4314.) You must indicate why you want a sequence change on that form. If there is room and you provide a reasonable justification for requesting the stream switch, you will be switched to the stream of your request and be notified; if there are no spaces available or you do not provide a valid reason for requesting the stream switch, you will be notified that the request is denied.

In general, there are more seats available in the Stream-4S cohorts and there are often no seats available in the Stream-8 cohort.

Switching sections

To begin, some people consider themselves "morning people" or "afternoon people," and thus do not like the type of schedule that does not agree with their personality. First, you are in a professional program, so you will almost certainly find employment that will require you to arrive at work in the morning and leave in the late afternoon. Second, every second term from 2A to 3B will be a morning schedule and the other two terms will be afternoon schedules, so you will not be locked in a morning schedule or an afternoon schedule.

If you do want to switch your section, you must find a student in the other section you want to switch to and who wants to swap with you. Then:

  1. Send an e-mail to your Program Advisor/Coordinator (Claire Fermin in E7 4314 for computer engineering students) from your uWaterloo account while cc'ing the other student at their uWaterloo account with the subject Swapping tutorial and laboratory sections with the body

    My name is Your Name (20MMMMMM) we are in 2A/2B/3A/3B computer/electrical engineering and I'm in section 101/201 (or whichever sections you are in), and I'd like to swap with The Other Person's Name (20NNNNNN) who is in section 105/205 (or whichever section that student is in). I'm cc'ing that person who will now reply.

  2. The other student should then respond to both you and the advisor/coordinator with a statement like I approve this swap.

You cannot swap just one laboratory or one tutorial. If you are in lecture section 001 with tutorial section 103 and laboratory section 203, and your friend is in lecture section 002 with tutorial section 105 and laboratory section 205, you must swap all three with that individual.

Please note: we understand that not all lab sections are always equally weighted, so for example, you may be the 41st student in one lab section and the other two lab sections have 40 students each. In this case, you may argue that it should not matter which lab section you are in. While this is true, because of the numerous applications for such swaps, it becomes increasingly more and more difficult to deal with such requests; consequently, we will only deal with direct swaps.

Adding/Swapping and Removing Courses

First, if you are in 3A or beyond and going to take technical electives in 4A or 4B, you must read this. Six months before the start of 4A in October (during your 3B term for 8-stream students and during your 3A co-op placement for 4S-stream students), you will receive an e-mail asking you to fill in a Preliminary Course Selection Survey for your 4A technical. This e-mail will direct you to the ECE Web Objects web site at where you will select the survey. You should flag those technical electives you are interest in taking. If there is insufficient interest in a technical elective, that elective will be dropped. Once it is dropped, it is not simply a matter of reinstating it four months later if there is sufficient interest, for there are now other issues: instructors who were scheduled to teach that dropped technical elective are now scheduled to teach other technical electives, teaching-assistant and laboratory resources may have been reallocated, etc. Consequently, if you do not fill in the Preliminary Course Selection Survey, you may simply not get into the technical electives you want. This survey is used by the department to come up with as conflict-free a schedule for the technical electives as possible. You will also receive a similar e-mail in the middle of your 4A Academic Term asking you to fill out a Preliminary Course Selection Survey for your 4B technical electives. It is even more important that you fill out this survey if you intend to take a breadth of courses: for example, in general, it is possible for power engineering courses to overlap with software engineering courses, as few students take both courses. If you want to take a wide diversity of courses, please do fill in the survey so that we are aware of your interests.

Next, I will first refer you to the list of important dates published by the Registrar's Office: Important dates.

One of the first periods is the Course Selection Period. If you are entering an Academic Term where you at least one elective, you should be selecting your electives during this period. This tends to be approximately three months before the start of the corresponding Academic Term; for example, for September 2018, course selection is May 23 to May 28; and for January 2019, course selection is September 27 to October 4.

Important: If you do not select your technical electives, there is a chance you may not get into the technical elective of your choice. If you did not fill in the Preliminary Course Selection Survey sent out approximately in October for 4A and July for 4B, any seats will first go to those who indicated on the Preliminary Course Selection Survey they were interested in the technical elective and then selected the course during the Course Selection Period.

The University scheduler then attempts to schedule all courses to minimize the number of conflicts across all students in all programs. There is no guarantee that a course you select will actually schedule with your core engineering courses, only this will increase the likelihood.

Next, the Drop/Add Period begins. The first two days of the Drop/Add Period are for Enrolment Appointments. You will have a 12-hour slot during which you are able to add, swap or remove courses. A swap is where you list one course you want to drop and another you want to add, but the transfer occurs only if you are successfully added; if you are not added to the course you wish, you will not have the course you are currently in dropped.

Once the Enrolment Appointments finish (usually at the end of the second day of the Drop/Add Period), you are able to continue adding, swapping or dropping courses, as you wish. If you are trying to add a course, be sure to verify that there you have all the prerequisites and that there are no time conflicts.

Make sure that when you are checking for available seats that you read the undergraduate schedule of classes:

Class   Comp    Camp Loc Assoc.  Rel  Rel   Enrl   Enrl
        Sec              Class    1    2    Cap    Tot

3032    LEC 001  UW P      1                250	   247
Reserve: Year 1 Hon. ARTBUS Student         130    128
Reserve: Year 1 Honours Arts students        10      9
Reserve: Arts Students                       10     10	 	 	 	 

In this case, it appears that there are three seats available, but you will note that 130 seats are reserved for first-year students in the Arts and Business Program, 10 are reserved for Arts students in an Honours Program, and 10 more are reserved for generic Arts students. There are still two seats reserved for the first category and one in the second; so there are no unreserved seats available in this course.

It is my understanding that any Reserve Enrolment Capacity is removed on the first day of classes.

Dealing with:

Missing pre-requisites
If you are trying to get into a course where you are missing the pre-requisites, send an e-mail to the course instructor explaining why you should be let into the course. For example, you may have taken an ECE course that is equivalent to a pre-requisite course. This is especially true for CS courses. Alternatively, you may explain why other experience may allow you to take the course; for example, you may have engaged in a co-op work placement strongly related to the course. It is up to you to convince the instructor that you will not be a burden on the course resources.
Time conflicts
If you have a time conflict, send an e-mail to the course instructor explaining how you intend to deal with the time conflict. You enrolling in a non-core course that has time conflicts with your elective does not in any way require any instructor, laboratory instructor or teaching assistant to accommodate you by dealing with your time conflict. Your first priority are your core engineering courses.
Overriding class limits
If a class is full, you are welcome to try to send an e-mail to the course instructor. In general, especially with large lower-year courses, instructors are unlikely to override the enrolment capacity. You are welcome to try, but be aware that there may be hundreds like you and the instructor may simply choose to ignore your e-mails.

Once you have permission from the instructor in the form of an e-mail, please forward this to Claire Fermin (or your Program Advisor/Coordinator) and explain which course you are trying to add, what the conflict is, and how the attached e-mail from the instructor resolves the conflict.

Additionally, some courses have unadvertised waiting lists. If you are sure you have the prerequisites, there are no time conflicts and it appears that there is still room in the course, but you still get an error when you attempt to add or swap to the course, you may have to contact the department directly. Renison University College, for example, has a specific Waiting Lists web site for their courses (any course ending with an R).

When a course is full and there is no waiting list, your only real option is to continually check Quest and see whether or not you can acquire a seat in the class as soon as someone else drops it. Most courses do not have waiting lists, and the administrative staff in the ECE Department are not privy to such lists even if they do exist.

Can I graduate?

You will graduate if:

  • You have cleared all your courses, either by passing the course, passing a supplemental examination, or passing an approved equivalent course.
  • You have two List-C CSEs.
  • You have two additional CSEs that are either from List A, C or D. (They don't both have to come from the same list.) You may take at most one List-D technique course, meaning a course where you learn a skill, be that a language, dance, fine arts, public speaking, a musical instrument, acting (drama), etc. Note that, for example, not all French courses are French-language courses, so you cannot just look at the subject code. See the current CSE list.
  • You have taken one List-1 NSE and one List-2 NSE; or you have taken three List-2 NSEs with approval. For List-1 NSEs, you must always refer to the undergraduate calendar under the year you started, as some NSEs have since migrated from List 1 to List 2.
  • You have taken five technical electives, of which at least three are ECE technical electives.
  • You have cleared five co-op work terms.
  • You have cleared three work-term reports.
  • You have cleared all your milestones (ELPE, WHMIS and TPM).
  • You have five PD courses including PD 20 and PD 21.

No course may be used to satisfy two different requirements above.

Approving technical electives

You are required to take a number of technical electives (in general, see the Undergraduate Calendar corresponding to the year of your cohort), of which at most can be two can be offered by programs other than ECE. The Technical Electives page of the ECE web site has a list of pre-approved technical electives from other programs; you do not have to seek approval to take these.

If you wish to have another course approved as a technical elective, you must justify your choice prior to enrolling in the course. In some cases, it may be reasonably straight-forward, but we will discuss some issues here:

  • There are a number of machine learning courses offered by both CS and ECE. It would be unreasonable for a student to take ECE 457A and ECE 457B together with two additional, and similar, courses from CS. However, if a student proposes taking a machine-learning course in CS while agreeing to not take the corresponding ECE courses, that would be acceptable.
  • There are a number of mathematics courses in pure mathematics, applied mathematics and statistics that, in general don't have direct applications to engineering. For example, a student who takes four courses associated with, for example, either power systems or computer software, but wishes to take a course in abstract algebra (group theory, ring theory, etc.) or functional analysis for interest will likely see such a request denied; however, a student who is focusing on specializing in control theory could easily justify taking such courses from the Faculty of Mathematics as they are directly related to the field of control theory. Thus, if a student agrees to take three technical electives within the field of control theory together with functional analysis, the functional analysis course could then count as a technical elective.

Any such agreement must be put in writing on your file.

If you come to such an agreement with your academic advisor, it is essential that you discuss any changes to your decision prior to you unilaterally changing your choice of technical electives. We will work with you, but if you do not contact us first, you may find yourself in May not having taken the required number of technical electives.

Supplemental examinations

If you failed a course in an academic term where you never-the-less were conditionally promoted, you must still clear the failed course. If your grade in the failed course is 40 or greater (but less than 50), you are eligible for a supplemental examination. Approximately one month after the term in which you failed the course, if you achieved a grade of 40 or more, you will receive a letter from the Registrar's Office that contains form you must submit to register for the supplemental examination. Additionally, a constraint will be added, usually requiring you to complete the supplemental examination within 16 months. If this time period is less than 16 months, there may have been an administrative error, so please contact your academic advisor.

During a term in which you would like to write the supplemental examination, you must submit the registration form to your Program Advisor/Coordinator (Claire Fermin in E7 4314 for computer engineering students) prior to the specified deadline. It is not necessary to have it signed; one of our Program Advisor/Coordinators will sign it once it is received. It is in your interest to pay through WatCard, as this is the most convenient and no private information is on the form. It is only necessary that you e-mail or drop-off the completed form to your Program Advisor/Coordinator prior to the deadline (Claire Fermin in E7 4314 for computer engineering students).

While registering, you should also forward the following message to the instructor who is teaching the course in the term you are scheduled to write the supplemental examination:

Subject: Please add 20NNNNNN to ECE 999 this term on Learn as a student

Hello Prof. Insert Instructor's Name Here,

My uWaterloo Student ID Number: 20NNNNNN

My uWaterloo User ID: j999smith

Course in question: ECE 999

I am writing a supplemental examination in your course this term. Could you please forward this e-mail to so that I can be added to your course on Learn?

Thank you,

Your name here

If you did not achieve a grade of 40 in the course, you must retake and pass the course to clear the failure, or you must take and pass a course that has been determined to be equivalent to the course you failed. Some pre-approved equivalent courses are already listed on the Course-specific information web site. If you find another course that you believe is equivalent to a course you failed, you must get it approved prior to enrolling in that course.

Complementary studies requirements

As an engineering student, the Canadian Engineering Accreditation Board (CEAB) requires that engineering students take courses outside the field of engineering, including topics such as impact of engineering on society, engineering economics, humanities and social science. These are the complementary studies requirements of CEAB, and are described on the engineering Complementary Studies page.

As an ECE student, some of the courses you take as part of your core program cover some of these requirements. Those requirements that are not covered by your core program are indicated in the calendar as the electives you are required to take. For example, a student who started in 2018 and is continuing with that cohort is required to take two List-C CSEs and two CSEs which may be from either List A, C or D. On the other hand, a student who started in 2019 and is continuing with that cohort is required to take two List-C CSEs and one CSE which may be from either List A, C or D. You must read the calendar associated with the program you are currently in. If you failed a term or were required to withdraw and subsequently were readmitted, you should discuss this with your academic advisor to understand the year of the calendar you are following.

Complementary studies electives

The undergraduate calendar lists courses that are pre-approved as complementary studies electives. In addition to these, a student may take as a List-D CSE, one course in which that student learns a skill. Such a course is called a technique course and includes any course in which you are learning to speak a language, public speaking, acting (a drama course), dance, a musical instrument, etc. Note that, for example, not all FRE courses are technique courses, as some do cover french literature, which would be considered a humanities course. In general, we ask that you contact us to get any course that does not appear on the list of approved CSEs approved, but if you happen to have already taken one and only one language course and no other technique courses, we will never-the-less approve such an elective when it comes to your graduation audit. If, however, you choose to not contact us, and you take two technique courses, you will likely find yourself taking an extra course during the Spring Term following your 4B Academic Term.

Under no circumstances can a technique course count as a List-C CSE with the one exception that it is already explicitly listed in the undergraduate calendar (for example, there are a few English-language courses that are so listed), so please do not ask. A technique course will count as a List-D CSE.

One common question is: "Can all my CSEs be from List C?" The answer is "yes".

If a course is explicitly listed in the undergraduate calendar as a List-D course, it is not a technique course.

Professional Development (PD/WatPD) Courses

You should be automatically enrolled in your first attempt at PD 20 and PD 21; however, you should never-the-less check your schedule to ensure the courses were added for the proper terms. After these two automatic enrolments, you are required to enrol yourself. You are expected to finish PD 20 and PD 21 before you can enrol in any other elective PD courses.

During the course selection period, you may select a PD course. If, however, you miss course selection, you are welcome to sign up for a PD course during the Add/Drop Period that opens closer to the start of the term. No PD course has ever filled up, so if you missed the course selection period, you're still certain to get the course you are interested in. If you do not add your PD course by the end of the Add/Drop period (the second week of classes), you must then contact me to discuss your options, one of which may be the possibility of a late add.

If you failed a PD course and there are insufficient work-terms to finish all your PD requirements, you may take two PD courses during one work term. Under no circumstances can you take three PD courses during a co-op work term, as this is forbidden by the Undergraduate Calendar. If during the term you are taking two PD courses simultaneously and you fail both, you will not be given this option again—you will be required to take one PD course per work-term until you finish.

Important: For all PD courses, there are specific sections designated for engineering students. If you select the wrong section, your selection or enrolment will be rejected. The only times students have complained to me that they could not get into a PD course was when they tried to select or enrol in a non-engineering section and were rejected.

Not taking a PD course

After PD 20 and 21, if you do not want to take a PD course during a co-op term due to an anticipated heavy work load during your co-op placement, you can delay taking a PD courses by sending an e-mail from your uWaterloo account to with the following appropriately-modified text:

Subject: For [20123456] ([your last name]), permission requested to not enroll in a PD course in [Winter,Spring,Fall] [20XX]


I have currently successfully completed [  ] PD courses, and following
this co-op work term, I will still have [  ] more co-op work terms,
which will allow me to complete the remaining required PD courses prior
to graduation. Caqn you please forward this to WatPD with your approval?

Thank you, [...your name...]

Two PD courses

Once you have passed both PD 20 and PD 21, you are welcome to take two PD courses during any subsequent co-op work-term. Just send an e-mail from your uWaterloo account to with the following appropriately-modified text:

Subject: For [20123456] ([your last name]), permission requested to enroll in PD m and n in [Winter,Spring,Fall] [20XX]


I have passed both PD 20 and PD 21, and I would like to take two PD courses
during my [upcoming|current] co-op work-term: PD m and PD n.  [I have already
enrolled in both courses.|I have enrolled in PD m but need help to enroll in
PD n.]
I understand that I cannot enroll in a third course (be that a third PD
course or an ONLINE elective), as a co-op student is only allowed to enroll
in at most two courses and doing so would constitute misconduct for failure
to comply with university regulations. I also understand that a failed PD
course counts as a failed course towards the may-not-proceed academic
decision as described in the Undergraduate Calendar, so if I do not drop a
PD course before the WF date, this could result in me being delayed in
advancing to my next academic term. Can you please forward this to Wat PD with
your approval?

Thank you,

[...your name...]

Failing a PD course

If you fail a PD course, this will count towards the number of failed or uncleared courses, and therefore, if you accumulate three failed or uncleared courses, you will be given an academic decision of "may not proceed". Under this decision, you cannot continue until you have cleared all but one of the uncleared courses.

Please note, if you fail two PD courses in a row, this counts as one failed course towards the count, as the second failure was an attempt to clear the failure of the first failure.

You can drop a PD course and not have it count as a failed course at any time up until the end of the withdraw with no credit granted (or WD) period, which appears in the Registrar's Office list of Important Dates. This last day tends to be in the third month of the term. If you drop a course after this date, it will appear as a failure.

Taking one or two courses while on co-op

Every student is welcome to take one course on a co-op term. This will most likely be an on-online course, but it is also possible to register for an in-class course. In either case, the student's first obligation is to the student's employer and the student must arrange with the employer any leave for writing mid-term examinations, quizzes or the final examination. No special cases will be allowed for students who are on co-op, so your employer not allowing you to take time off to write, for example, a quiz or the final examination is not grounds for missing the final examination. The same applies to any laboratories associated with a course you take.

A course may be added by submitting Course Override Forms to the Program Advisor/Coordinator (currently Claire ( Be sure to make a comment that you are taking the course while on co-op. Be sure you have permission to take the course.

You are not allowed to take two courses and a PD course during a co-op term. Thus, first of all, you will not be allowed to take a second course during a co-op term if there are insufficient co-op terms left in your program to finish the PD courses. You are required to take five PD courses, so if you failed PD 21, there would only be sufficient terms left to complete the PD courses.

If you want to take two courses during a co-op work term, you must provide a letter to your employer outlining the impact on your employment. This includes any hours you will miss due to laboratories, quizzes, projects or any examinations. This letter must document how you propose to make up any missed time. This must be a formal letter similar to format of a letter of submittal for the work-term reports. The employer must then respond approving you taking two courses. The response can be either a letter from your manager which you will forward to or an e-mail from your manager cc'ed the Program Advisor/Coordinator (currently Claire ( in E7 4314). You will then submit a copy of the physical letter you submitted to the employer together to the Program Advisor/Coordinator. It would be academic misconduct if you were to misrepresent the amount of time required; for example, not making your employer aware that the course has laboratories scheduled every second week. Once this documentation has been received you will be given permission to enrol in a second course. You will also be withdrawn from any PD course you may have enrolled in.

Missing a final examination due to illness or compassionate reasons (deferred examinations)

If you miss a final examination due to illness or compassionate reasons, you will have a deferred examination. To get a deferred examination, you must first get a Verification of Illness Form (VOIF). The original should be sent to your computer engineering advisor/coordinator (currently Claire ( in E7 4314). The instructor should receive a copy with confirmation from your advisor/coordinator that the original was received. If you are missing the examination due to a death in your immediate family, you must provide documentation linking that person to you together with a copy of the death certificate and clear evidence that that person is closely related to you (appropriately translations are required). This may include photographic evidence of you attending the funeral, an obituary, and family photographs.

At this point, if the instructor accepts the VOIF or evidence that grounds for compassion are reasonable, the instructor will include a grade of INC for incomplete for the course and your academic decision will be deferred (or DEF). You should inquire as to what your grade would be if you got 0 on the final examination, as this will become relevant later.

You will then have to arrange with the instructor a time to write the deferred final examination. This must be reach through mutual agreement. Failure to appear to write this deferred examination will be treated as if you failed to write the original examination: if you do not provide a VOIF, your grade will be DNW. If you are a Stream 8 student, your deferred examination may very well be written with the sitting of the final examination the next term.

By default, you cannot enrol in the next academic term with a deferred academic decision. The requirements for passing an academic term are that you cannot have three failures (two failures if you have chosen to reduced your load by not enrolling in an elective) and your term average (when rounded to an integer) must be 60 or above.

Without a final grade, you cannot calculate a term average. To calculate a minimum term average, replace each INC course with the grade you would have gotten had you achieved a 0 on the final examination (see above). If this grade is below 32, you should consider it to be 32 in the calculation of this minimum term average:

  • If this minimum term average is 60 or above when rounded to an integer, then inform your computer engineering advisor/coordinator (currently Claire ( in E7 4314) of this fact. The advisor/coordinator will then arrange for you to be enrolled in the next academic term and you can participate in course selection and course enrolment.
  • If this minimum term average is below 60 when rounded to an integer, you must write your deferred finals before you can be enrolled in the next academic term. At this point, you may:
    • File a petition for continuing to the next term. With this petition, you may include supporting documentation that may support you continuing to the next academic term despite not having the requisite average.
    • Alternatively, if the instructor refuses to offer a final examination prior to the start of what would be your next academic term, you are welcome to file a grievance. For this, please see the corresponding university policy.

The Management Science Option

The management science option allows students to focus their complementary studies electives and two technical electives on management-related courses. Students who have since graduated have commented positively on this option, as it gave them knowledge that was able to assist them making the transition from a design and development engineer to that of an engineer in a managerial role.

Some comments:

  • MSCI 211 (List C CSE) is offered online, so you can take this on a co-op term if you need an extra course because you started this option later in the program. I recommend students to start with MSCI 311 just in case they need to take MSCI 211 during a future co-op term.
  • MSCI 261 (the List-B CSE) is replaced by ECE 390, but if you took ECE 192 (in the newer program), you must instead either take MSCI 261 as an extra course (over and above your usual load) or you can also apply for a Letter of Permission to take, for example, 3137 - Engineering Economics, which is an online course at the University of Toronto.
  • MSCI 331 Introduction to optimization counts as a non-ECE technical elective.
  • You must take three additional courses from the list given in the option description. If you choose one more List-C CSE from that list; one course that satisfies List A, C or D; and an MSCI course that is also an approved non-ECE technical elective (see the technical elective page for a list), then you will satisfy the requirements of this option without taking any additional courses; however, you will have used up your two allowed non-ECE TEs.

Even if you don't satisfy all the requirements of the option (perhaps due to a time conflict in 4A or 4B), you will still have taken courses that will help you make the transition to management.

If you have any further questions, you can always speak to the option co-ordinator.

Entrepreneurship Option

The entrepreneurship option allows students to focus their complementary studies electives on preparing for enterprising and risk-taking adventures in starting their own businesses, be it consulting or developing and bringing new and innovative solutions to market. Courses through the Conrad School of Entrepreneurship and Business will help you prepare for such a venture. In addition to taking these courses, you can also complete the requirements of the associated option.

One significant benefit is that most (if not all) BET courses are offered either online or in the evenings, so they will almost certainly not conflict with your schedule.

2017 and before

For students starting under the 2017-18 Undergraduate Calendar or before, you are required to have four CSEs, and thus three of those CSEs may be covered by taking BET 100, BET 320 and BET 340. Having taken ECE 390, you have taken a course covering the List-B complementary studies requirement. The only additional requirements (and this differs from the current calendar) are that you take one more BET course (make sure it is a List-A, -C or -D CSE) and that you must clear the entrepreneurial milestone by participating in the Esch awards, working towards commercializing your fourth-year design project, or having a co-op placement associated with a business start up. Please speak speak to the option co-ordinator regarding this milestone and any other questions you may have about this option.

If you are starting the option late and have already taken a different CSE, you can take BET 100 online.

2018 and after

The requirements for the option are the same for students starting in 2017 and before, but you only require three CSEs. Therefore, you will have to take one additional course over your usual work-load to achieve this option. Some suggestions include:

  • You could take BET 100 online during a co-op work term, but this will cost you approximately $1500.
  • You could overload yourself one term by taking an extra course over and above your normal work load. To take an extra course, you should have either a last-term or cumulative average of 80 or above.

Fortunately, again, almost all BET courses are either offered online or in the evenings, so it should be quite straight-forward to take an extra course. Again, if you have any questions, please speak to the option co-ordinator.

Remember, if you only take three courses in entrepreneurship and don't officially get the option, the knowledge in the courses you took is the what will benefit you in starting your own enterprise.

Artificial Intelligence (AI) Option

The AI Option Confirmation Form to be filled in, and submitted to and reviewed by your Program Advisor/Co-ordinator together with your Intent to Graduate Form.

There are a few curiosities about the AI option that I will clarify here. The option itself only includes in a footnote that at least one course must be from the faculty of mathematics. To simplify this, the option requires seven courses. Consequently, at least one of the courses must be from the faculty of engineering, and one course must be from the faculty mathematics. In general, I suspect, that most engineering students will simply take one course, perhaps two, from the faculty of mathematics.

The first requirement is that a student take one of either ECE 457A or MSCI 435. ECE 457A, however, has two anti-requisites, including CS 486 and SYDE 522. Also, SYDE 531 is sufficiently similar to MSCI 435. Thus, this first requirement should really read:

One of ECE 457A, MSCI 435, SYDE 531, SYDE 522 or CS 486.

Now, SYDE 522 is nominally offered in the Winter Term, and ECE 457A is nominally offered in the Spring Term. Thus, a student in any engineering program will be able to meet this requirement by taking a course in either Spring or Winter. CS 486 is nominally offered every term, but there are restrictions on the number of engineering students that can enrol in CS courses. Being enrolled in this option does not require the faculty of mathematics to admit you into a course.

The course MSCI 442 is an impact of information systems on organization and society. In addition to this course, STV 208 is also an acceptable alternative. I have reviewed all other List A courses, and no others specifically target the impact of information systems or computation or related topics on society, and thus, this course must be taken. If a new course that appears to be satisfy this requirement is offered by some department, please let me know. There is one course in CS thatmay be used in place of MSCI 442, specifically, CS 492. It is my understanding that SE students can take this course, and it certainly satisfies the requirement of this course: following the impact of AI on society. Whether or not this course counts as a CSE is up to the student and the stduent's program academic advisor. If you do not get permission to take CS 492 and have it count as a CSE, this coordinator cannot take responsibility for your decision.

Next, the student is required to take one of three courses: ECE 457B, MSCI 446 or CS 480. ECE 457B, however, also has CS 486 listed as an anti-requisite. Consequently, CS 486 may be used to clear ECE 457A in the first requirement or ECE 457B in this requirement. ECE 457B and MSCI 446 are offered in Winter, thus all students in all programs are able to take one of these two courses. MSCI 446 may be offered in other terms, as well. CS 480 and CS 486 are nominally offered each term, but there are restrictions on the number of engineering students that can enrol in CS courses. Being enrolled in this option does not require the faculty of mathematics to admit you in a course.

Next, a student must take a course in control systems. Starting immediately, I will allow mechanical engineering students to take ME 360 instead of MTE 360 for this requirement. Please note, however, that some of these controls courses have insufficient breadth to cover the requirements for some of the controls courses offered in the final list of courses. Consequently, if you want to take ECE 481, 486 or 488 towards this option, mechanical engineering students should inquire as to the possibility of enrolling in MTE 360. Students in other engineering programs should speak to the instructors of ECE 481, 486 or 488 to determine if they have sufficient background to take these courses.

Other courses that count towards the list of additional courses include special topics courses such as ECE 493/ECE 457C Prob. Reason and Reinforce Learn and ECE 493/495 Autonomous Vehicles. Another course is ME 547 Robot Manipulators: Kinematics, Dynamics, Control. Other courses that should count include ECE 484 Digital Control Applications and one course that has previously been counted by the previous option coordinator is ECE 455 Embedded Software. Management Science has also offered a new course MSCI 546 Advanced machine learning, which is also acceptable. SYDE 575 Image processing is similar enough to CS 484 Computational vision that it, too is acceptable, but you may only take one of these. Also for SYDE 552 Computational Neuroscience and ME597C Autonomous Mobile Robotics.

The course SYDE 575 Image processing is sufficiently similar to CS 484 Computational vision, so both are acceptable.

There are other courses taught by engineering and mathematics that may be related to artificial intelligence, and you are welcome to propose such courses for inclusion on this list. This coordinator will not have private lists of acceptable courses. All courses allowed for one student will be made public here unless the course was allowed through an error on the part of either myself or another academic advisor.

Finally, the last requirement is that a student take three courses from the given list. You will note that some of the courses in this list overlap with courses mentioned above, while others are absent. (For example, CS 480 and MSCI 446 appear twice in the option requirements, but ECE 457A and ECE 457B do not. Consequently, any course other than MSCI 442 (the List-A CSE) that appears anywhere in the AI Option page pay be read as being in this list of allowable courses for this last requirement. If a student takes a course for one of the prior requirements, it may not count towards this last requirement.

The original authors of the AI option clearly specified that "[t]he AI Option is available for students in all undergraduate engineering plans at the University of Waterloo." It is up to you to speak to your academic advisor to see if this option is achievable. For many of the programs outside of electrical and computer engineering, this will require additional courses. To add the option, please bring a plan modification form to your academic advisor and discuss adding the option with them.

Please note, no instructor or program is required to allow you into a course simply because you are in the option. It is up to you to speak to the instructors or academic advisors in question to get into these courses.

Counting courses: Please note, the Undergraduate Calendar is very clear that no course may be used to count towards three degree requirements. Thus, for example, an ECE student cannot use MSCI 442 toward that student's degree requirements as a CSE, towards the MSCI option and simultaneously towards the AI option. This is beyond my control and entirely outside my jurisdiction.

STV 205 is NOT an acceptable replacement for MSCI 442.

Enrolling in CS courses

Generally, the CS School does not allow any engineering student to select a CS course during the course selection period. This means that any student trying to get into a CS course must approach a CS Advisor during the Add/Drop period. Just because you are in the AI option, this does not promise you, or guarantee you, or even suggest that you have any right to enrol in a CS course (or any MATH course, or any engineering course not in your core, for that matter).

The CS School has, however, given permission for the option coordinator to nominate fifteen (15) students per year be allowed to 'select' a CS course. This does not guarantee that you will actually be enrolled in the CS course, but rather, at least gives you a chance that you will be pre-enrolled. If you are not one of these 15 students, you can still always talk to a CS Advisor during the Add/Drop period.

To make the best use these fifteen slots, it makes the most sense to offer it to students who are going into 4B in the Winter Academic Term who could benefit from getting into a CS course to complete their option. Therefore, you may submit a request to be allowed to select a CS course by submitting an e-mail to me ( with the subject CS COURSE SELECTION REQUEST. This e-mail must be submitted no later than 5:00 pm seven days after the first day of the Fall Calendar Term. Important: Because this involves the opportunity to get into CS courses, the deadline is exact. An e-mail received at 17:01 will be ignored. Otherwise, letting students in late may take slots away from those who were on time, or it may benefit a student who sends a late request to the detriment of another student who determines that the deadline is passed, so there is no point in trying. In this e-mail, you will:

  1. state your average over 3A, 3B and 4A (by just adding the three term averages and dividing by three),
  2. state any extra courses you took during that time (i.e., courses over and above your usual course load) that did not count towards your term averages, and
  3. why you need to take the course you are requesting.

Please note, "I want to finish the option" is not an acceptable reason for why you want to take a course: there are many MATH courses not in CS that are acceptable for the option. You must explain what is it in this course specifically that makes you interested in it.

Please note, in general, I will consider the three-term average, but if a student takes a technical course as an extra, especially if that extra course is needed for the option, that may move a student up in the ranking, and similarly, a good justification may move you up while a poor or vacuous explanation may move you down.

You will be told prior to the start of the course selection period if you were awarded the opportunity to select a CS course. If you were awarded this, the CS Advisor will forward your course selection to the Registrar's Office: you need do nothing else.

Ink on transcripts versus experience

Because Waterloo engineering students have the opportunity to have six co-op work placements, and in industry, experience is worth more than additional text on a transcript. If you're interested in engaging in the field of artificial intelligence and machine learning, take time yourself to start learning the subject material now and add the AI Option to your transcript. Then, when you apply for AI-related co-op placements, then the interviewer will already see that you are interested in the field in question, and once you demonstrate your self-studied knowledge on the subject matter, this may help you land a placement in an AI-related job. After this, if you gain an EXCELLENT or OUTSTANDING co-op evaluation, you should have no issues gaining further experience in future co-op placements related to the AI field. At this point, the option itself will be superfluous, as you will already have the industry experience necessary to stand out as a qualified applicant in the field. Thus, if in the end, scheduling does not allow you to achieve the option, this is no longer an issue.

Hints for the IA Option

The School of Computer Science restricts the number of engineering students that can enrol in their courses, in some cases only allowing students in who are in the AI option. Consequently, I would strongly recommend that you consider taking either a STAT or CO course. Also, STAT 340 is equivalent to STAT 341, so it, too is allowed. You should speak to your academic advisor to see if any of these courses can be counted as a technical elective towards your degree. In computer engineering, mathematics courses may count as technical electives, but only if the student can demonstrate that the mathematical theory discussed complements their demonstrated area of interests within computer engineering. (For example, a student that is taking a number of controls courses as technical electives could take a course in functional analysis as a technical elective.) Thus, all the courses in the AI option may be used by computer engineering students as technical electives, as they have demonstrated an interest in artificial intelligence by taking the option.

MSCI 442 can be used as a List-A CSE. Many of the engineering programs already take a controls course as part of their program requirements. Some, if not all, of the remaining engineering courses may be counted as technical electives. Electrical and computer engineering students can, through careful selection, take these courses as part of their program requirements. Mechanical and mechatronics students can take ME 547 and then take three additional courses that count as their three allowed non-MME technical electives (speak to your academic advisor about these). A student in systems design engineering may be able to complete this option, as well, without taking additional courses if they can get the other required courses to count.

For many other programs, students will have to take at least one additional course. If you are in another program and you know how to complete the option without taking additional courses, please contact me and let me know so that I can document it.

For students in programs where they must take at least one additional course, this can be achieved either through overloading, or taking courses during their co-op terms. Taking a course during a co-op term requires a fee of at least $1500 but currently not above $2000. Alternatively, you could overload yourself in an academic term. If I may note, BET courses are offered in the evenings, so it may be possible to take two BET courses that may also count as CSEs during two evening classes in a term when you have only one elective slot. Alternatively, a course like RS 121 Evil has previously not had a final examination, although there are many deliverables throughout the term; consequently, you could enrol in this course without impacting your final examination schedule. If students are aware of other courses that generally do not have final examinations scheduled, please let me know and I will document this here.


The following individuals suggested corrections or indicated errors:

  • Irena Baltaduonis
  • Justin Paulin
  • Joy Harris