Metadata
Title
Computer science (CS) major programs and plans
Category
general
UUID
1d25c68d9048402daf84773ec54056b6
Source URL
https://cs.uwaterloo.ca/current-undergraduate-students/majors
Parent URL
https://cs.uwaterloo.ca
Crawl Time
2026-03-18T05:13:43+00:00
Rendered Raw Markdown

Computer science (CS) major programs and plans

Source: https://cs.uwaterloo.ca/current-undergraduate-students/majors Parent: https://cs.uwaterloo.ca

Overview

The David R. Cheriton School of Computer Science is part of North America’s only dedicated Faculty of Mathematics. We are honoured to have you a part of our School and hope that you are well supported as a student here.

This page contains information relevant to all major programs in the School of Computer Science, including Computer Science (BCS or BMath), Data Science (BCS), and Business Administration and Double Degree (BBA/BCS), and links to our jointly offered programs, Computing Financial Management (CFM) and Software Engineering (SE).

On this page

For program specific information, please find your program below to access its appropriate resources. Information about Specializations has also been moved to its own page. Non-CS majors can refer to our Related programs and plans page or the Computing and CS minor page directly.

[Program and Plan requirements

CS Checklists](https://cs.uwaterloo.ca/checklists)

[Which courses to take and when

Suggested Sequences](https://cs.uwaterloo.ca/suggested-sequences)

[Office hours

Contact a CS Advisor](https://cs.uwaterloo.ca/office-hours)

Find your program

[Computer Science

(BCS & BMath)](https://cs.uwaterloo.ca/current-undergraduate-students/majors/computer-science-bcs-bmath)

[Business and Computer Science Double Degree

(BBA/BCS)](https://cs.uwaterloo.ca/bbabcs)

[Data Science

(BCS)](https://cs.uwaterloo.ca/node/3281)

[Computing and Financial Management

(BCFM)](https://uwaterloo.ca/computing-financial-management/current-students/academic-resources)

[Software Engineering

(BSE)](https://uwaterloo.ca/software-engineering/undergraduate-students/current-undergraduate-students)

Degree Requirements

Computer Science majors and all BCS students, must Complete the degree requirements as outlined in the relevant Undergraduate Calendar, including

If you are in your last term, you can​​ ​​​​​review the graduation checklist and apply to graduate,

The official degree requirements are in the University Calendar, but there are handy CS checklists that you can use linked below, which summarizes your requirements. Please refer to the Co-op Math Advisors for more information on co-op requirements.

[CS Checklists

Easy-to-fill summary of your degree requirements.](https://cs.uwaterloo.ca/checklists)

[Breadth and Depth

List of eligible courses to fulfill your Breadth and Depth requirements](https://cs.uwaterloo.ca/node/3284)

[Undergraduate Calendar

Official description of each program and plan requirements](https://uwaterloo.ca/academic-calendar/undergraduate-studies/catalog#/programs?group=Computer%20Science)

How to enroll into courses

You can use Quest to enrol into courses.

If you have difficulty enrolling into CS courses, then please review our course selection and enrollment pages.

For non-CS courses, you will need to go to the appropriate advisor/office:

First-Year Math Courses First Year Advising Office in MC 4019A or Math Undergraduate Office (MUO) in MC 4022
Math Courses The course instructor or the advisor of the department offering the course
Non Math Courses Most likely the course instructor or the advisor of the department/School offering the course.

[Course Selection

Pre-enroll to get into your preferred courses](https://cs.uwaterloo.ca/current-undergraduate-students/majors/cs-course-selection)

[Course Enrollment

The Add/Drop period processes and policies for CS courses](https://cs.uwaterloo.ca/current-undergraduate-students/majors/cs-course-enrollment)

[Waitlists

Department Consent and Permission Numbers](https://cs.uwaterloo.ca/current-undergraduate-students/majors/cs-course-enrollment/department-consent-course-waitlists)

Course planning / what courses to take next

Below are links that will guide you on which courses to take and when.

  1. Suggested course sequences our recommendations based on previous student's experiences per program.
  2. CS prerequisite chart summarizes CS course requirement information, e.g. what courses are needed as pre-requisites or co-requisites.
  3. Undergraduate calendar - Contains the most up-to-date descriptions of CS courses and may help you determine whether a course is interesting to you.

If you're still not sure what to take, explore the list of all courses offered by the university calendar. You may want to consider your Breadth and Depth requirements when selecting non-math electives for your degree.

[Suggested Sequences

Term-by-term list of courses most students should take](https://cs.uwaterloo.ca/suggested-sequences)

[CS prerequisite chart

Pre-req and Co-req requirements for your next CS course](https://cs.uwaterloo.ca/current-undergraduate-students/majors/prerequisite-chain-computer-science-major-courses/cs-prerequisite-chart)

[Undergraduate Calendar

Official description and requirements of each CS course](https://uwaterloo.ca/academic-calendar/undergraduate-studies/catalog#/courses?group=Computer%20Science%20(CS))

Academic Progression and Standings

Remote video URL

View "How to determine your academic standing and why it’s important" on YouTube

How to Calculate your CAV and MAV

Remote video URL

View "How do I calculate my CS average?" on YouTube

Two weeks after each academic term, an academic advisor reviews your entire academic performance after your grades are released and determines your academic standing using your CS major average (CS MAV or MAV) and your cumulative average (CAV). You can review your academic standing for your most recent term by going to Quest and then your unofficial transcript.

There are several academic standings you can be assigned (see table below). Ideally, you would want to be in Excellent or Good academic standing; otherwise, you need to speak to an academic advisor ASAP. Please go to the Math academic standings page for more information on standings, including DEF, NAPP, and CNDR.

If you are in co-op, some of the concerning standings may also lead to the suspension of your co-op. For more information about maintaining your co-op eligibility, please refer to the Co-op Math Advisors.

Standings and Requirements
Standing Excellent Good Conditional* Probation* Must change plan*
Coding EXCL GOOD CNDP PRB(C/O) FLM(P/C/A), FLP(P), FRW
Criteria MAV > 60%  CAV > 80% MAV > 60% CAV 60-80% MAV < 60% CAV > 60% CAV < 60% MAV < 60%  CAV < 60% >4 failed courses and/or unsatisfactory progress

*If your standing is one of the above, you should contact a CS advisor ASAP.

[Find more information on

Math Faculty Academic Standings](https://uwaterloo.ca/math/academic-matters/academic-standings)

[University Calendar - Mathematics

Averages and Academic Standings](https://uwaterloo.ca/academic-calendar/undergraduate-studies/catalog#/policy/Sk2s2wXT6)

FAQ for Students who are struggling/seeking help

CS Advising FAQ: Section E

E.01. How can I contact a Computer Science advisor?

There are several possibilities. In order of preference:

In general, the earlier you talk to us, the more options we have to help you. We enjoy helping students, but please do not make extra work for us by contacting several advisors or contacting us in several different ways.

E.02. What resources does UW provide to help me if I'm struggling?

Resource Support Provided
Academic advisors Help with issues related to courses and programs.
Counselling Services Help with stress management and other issues. Friendly and experienced counsellors provide confidential appointments.
Health Services Physician and dietician appointments and a range of health services for students.
AccessAbility Services (AAS) Services and support for students who have a permanent or temporary disability.
Student Success Office (SSO) Support with study and time management skills, access to success coaches, and more.
Centre for Career Development (CCD) Help with career strategy, job search tactics, grad school preparation, personality tests to help identify possible career paths, etc.

E.03. What is the failure limit for CS students?

For students starting in Fall 2014 or later (or using the Fall 2014 University Calendar and onwards), the failure limit is 2.0 units. If you exceed this failure limit, then you may be required to change programs.

For students starting earlier than Fall 2014, the failure limit is 3.0 units

E.04. I failed a bunch of courses; what should I do?

See a CS advisor as soon as possible! We will sit to understand your situation and any struggles you may face, and explore your next steps for your academic success.

It could be that petition to the Standings and Promotions Committee is appropriate as well.

E.05. What is the Standings and Promotions (S&P) Committee? How can I submit a petition to the S&P?

The Standings and Promotions Committee (S&P) is the committee that decides when exceptions to the usual rules are appropriate. Examples of exceptions they consider:

You'll need to complete a S&P petition form, include relevant documentation, and see an advisor before you submit the form.

E.06. I've been told to withdraw from Math Faculty; now what?

You were likely asked to withdraw because you've accumulated too many failures or you've used up too many course attempts relative to the courses you've passed. See a CS advisor as soon as possible.

Some options for you may include:

Students who are considering transferring to Arts should consult the Faculty transfer to Arts page.

Other students should follow these steps:

  1. Visit an advisor for the Faculty you would like to transfer to. If they'll accept you right away, great!

  2. If not, fill out a Plan Modification Form transferring to Math Non-Degree. Identify the courses that will help you get into the new Faculty, and have that Faculty's advisor sign it.

  3. Complete a Standings and Promotions Petition, indicating your reasons for the transfer, what steps you are taking or will take to ensure your future success.

  4. Submit the transfer and petition forms to the Centre at least one month before the start of the target term.

If you want to transfer to another program at UW, you may have trouble getting accepted given the failures and/or course attempts on your record. The Math Faculty offers a non-degree term (see below) to allow you to get some courses on your transcript that can help your transfer.

E.07. What is a non-degree term?

A non-degree term is when the Math Faculty allows you to take courses for one additional term after you have been withdrawn from studies. This is done purely as a favour to you to give you a chance to make your transcript look more attractive to a program outside of the Math Faculty. See Math Academic standings page (or the Academic Calendar) for more details or contact an advisor for options.

If you are currently enrolled in Honours Math or CS courses, you won't be able to use them towards a Math Faculty degree, so you may want to drop them ASAP and take something that will contribute to another degree.

E.08. Am I in danger of failing out of my program?

There are several reasons you may be asked to leave CS and possibly the Math Faculty. The official policies are in the University Calendar. In summary:

If you're are in this situation, then please contact a CS advisor.

E.09. Can I take some time off from school?

Yes, you can be gone from studies for up to three consecutive academic and/or co-op terms. If you're gone for more than three consecutive terms you will need to reapply. If you are in a co-op program, you should contact the Coop Math Advisors as well.

International students should contact the Immigration Consulting Office within the Student Success Office about taking one or more terms off because of Visa implications.

E.10 Can I withdraw from the entire term?

For most students, the impact of withdrawing from an entire term is no different than withdrawing from all of your courses individually. Depending on the date, the course won't appear on your transcript at all (first 3 weeks of the term), you'll receive a grade of "WD" or "withdraw" (fourth through tenth weeks), or you'll receive a grade of "WF" or "withdraw failure" (after the tenth week).

For more information on dropping or withdrawing from a course, see FAQ Section F: Question 22.

International students should contact the Immigration Consulting Office within the Student Success Office about taking one or more terms off because of Visa implications.

E.11. I'm in conditional (CNDP) or deferred (DEF) standing. What does this mean?

If you are in conditional standing, this means that your CS major average is below 60%. Although you are in a concerning academic standing, you can still continue in the CS program; however, you need to meet one of the following criteria to remain in the program:

Otherwise, if you are not able to meet the above conditions, then you will be removed from CS. You may want to reach out to a CS advisor on advice on how to better manage your academics to ensure your academic success.

If you are in deferred standing, this means that we are not able to determine your academic standing since you have a grade placeholder (e.g., INC, UR, IP, MM) for one or more of your courses. If your grade placeholder is resolved and your resulting grade(s) place you in conditional standing for that term, then you must meet the requirements noted above to remain in CS the following term (regardless if that term has started or already been completed).

For example, suppose you were granted an INC in CS245 during Spring 2022, were assigned a DEF standing for Spring 2022 and then resolved the INC in following Winter 2023 term. If your grade in CS245 resulted in Spring 2022 begin a Conditional standing, then you would have to meet the above requirements in the term following Spring 2022 to stay in CS.

Is anything confusing? We can help!

[Check if your question is on our

CS Advising FAQ](https://cs.uwaterloo.ca/current-undergraduate-students/frequently-asked-questions)

[For personal inquiries

See a CS Advisor](https://cs.uwaterloo.ca/advising)