You are now in the main content area

Computer Science Core Elective Table I

Students admitted Fall 2020 and before: A total of nine (9) courses is required.

Students admitted Fall 2021 and after: A total of eight (8) courses is required.
All students:

  • Students must take a minimum of five (5) and a maximum of seven (7) courses from the Computer Science Group.
  • Students must take a minimum of one (1) and a maximum of three (3) courses from the Engineering/Science/Business Group.
  • Students may take no more than two (2) courses from the Mathematics Group.

For students admitted Fall 2021 and after there is no minimum number of courses required from the Mathematics Group.

For students admitted Fall 2019 and Fall 2020 one of the courses taken from the Mathematics Group must be: MTH 304 or MTH 380.

Computer Science Group

Students interested in software engineering see Optional Concentration in Software Engineering below.


*Successful completion of all 5th and 6th semester courses is required before enrolment in CPS 40A/B. Co-operative students must achieve a cumulative grade point average of 2.50 to enrol for this course.

Engineering/Science/Business Group

Mathematics Group


* MTH 304 and MTH 310 are available as Table I choices to students admitted Fall 2015 and after.

Optional Concentration

A Concentration is a structured plan of study within a program (6 to 12 core or professional electives) that provides an opportunity for advanced or in-depth study in a particular area of interest. Students must declare their concentration prior to applying to graduate. Courses used to fulfil the requirements of a concentration cannot also be used to fulfil the requirements of a minor.

Concentration in Software Engineering

You may focus your Table I (Computer Science Group) electives on software engineering by including this specific set of courses into your degree.  

Choose six (6) courses from the following:

  • CPS 610 Database Systems II
  • CPS 613 Human-Computer Interaction
  • CPS 707 Software Verification and Validation
  • CPS 714 Software Project Management
  • CPS 731 Software Engineering I
  • CPS 831 Software Engineering II
  • CPS 845 Extreme Programming and Agile Processes
  • CPS 847 Software Tools for Startups
  • CPS 853 Creating Big Data Systems
  • CPS 865 Model-Driven Software Engineering


Successful completion will mean that 'Concentration in Software Engineering' will appear on your transcript. This Concentration is not a CEAB accredited engineering degree program leading to the designation Professional Engineer (P.Eng.).

Students will have to declare their intention to pursue the Concentration at the end of winter semester in Year 2. The program, at its discretion, may limit access to the Concentration based on space availability in the Concentration courses or to students achieving a minimum CGPA.