Faculties, Colleges, and Schools

The Faculty of Science > Bachelor of Science > Computer Science

The Department of Computer Science (www.cs.ubc.ca) offers opportunities for study leading to bachelor's, master's, and doctoral degrees. For information on the Bachelor of Arts in Computer Science, see the Computer Science entry in the Arts section. For information on advanced degrees, see graduate Computer Science. All students who intend to take honours in Computer Science must consult the head of the Department.

Students who are entering second year and wish to pursue a Computer Science Major, Honours, Combined Majors, or Combined Honours specializations, including students who have applied to enter the Faculty of Science and expect to have second-year standing upon admission, must apply using the online process administered by the Faculty of Science (www.science.ubc.ca/students/degree/apply). Students will receive an email communication regarding the process in late May or early June. Due to the similarity in second year between the Major or Combined Major specializations, and the corresponding Honours or Combined Honours specializations, the Faculty of Science only admits students directly to either the Major or the Combined Major. Qualified students wishing to transfer to Honours, Combined Honours or into another Computer Science specialization for third year should contact an undergraduate Computer Science advisor for advice.

The Department of Computer Science accepts applications in April from current UBC Science students with third-year standing or higher or students with second-year standing who are ineligible for the central specialization application. For application forms and information regarding admission and continuation requirements, students are advised to review the Computer Science undergraduate information (www.cs.ubc.ca/ugrad). The progress of continuing students will be reviewed at the end of each academic year. Students making satisfactory progress do not require annual specialization approval.

Co-operative Education Option

Co-operative education is a process of education which integrates academic study with related and supervised work experience in co-operating employer organizations.

A year-round Co-operative Education Option is available for students in Computer Science. The option is intended to help prepare interested and qualified students for careers in the computing industry with a minimum of 4 work placements supervised by practicing professionals. Co-op advisors also visit students at their place of work and provide advice on technical reports required of all students in the Co-op Option.

To be eligible, students must be admitted to the second year of a Computer Science specialization in the Bachelor of Science program. Selection of students will be based on academic performance and general suitability to the work environment as determined by resumé and interview. The total enrolment will be subject to the availability of appropriate work placements and faculty advisors. The work placements are arranged by mutual agreement between students and employing organizations. Participating students register for CPSC 298, 299, 398, 399, or 499 as appropriate, and pay the Co-operative Education Option fee for each course (see Program and Course Fees). Graduation in the Option requires a student to complete at least four of CPSC 298, 299, 398, 399 and 499, in addition to the normal academic requirements. Students who complete less than five courses will have each satisfactorily completed course noted on their academic record.

Detailed information on the Option may be obtained from the Department of Computer Science or from the Co-operative Education Option (www.sciencecoop.ubc.ca).

Admission and Continuation Requirements for Honours and Combined Honours

Students who wish to register in an Honours or Combined Honours specialization in Computer Science, must seek approval from the Department Honours advisor prior to registering for second year.

To be admitted to an Honours or Combined Honours specialization in Computer Science, students must:

  1. complete all courses attempted, including at least 30 credits in the Winter Session of the first year; and
  2. obtain a minimum average of 76%. Achievement of this minimum does not guarantee admission.

To be permitted to continue in an Honours or Combined Honours specialization in Computer Science, students must:

  1. complete all courses attempted, including at least 30 credits in the previous Winter Session (or at least 15 credits per academic term, for Co-op students); and
  2. obtain an average of 72% or higher.

Electives

COMM 337 has overlap with some of the first or second-year Computer Science courses and cannot be used as electives in any degree or combined degree specialization in Computer Science.

Specializations

Major (0376) and Honours (0154): Computer Science (CPSC)

First Year
Communication Requirement1 6
CPSC 110 (or 103 and 107)2 4
CPSC 1213 4
MATH 100 or 102 or 104 (or 180 or 184 or 120 or 110)4 3
MATH 101 or 103 or 105 (or 121)4 3
Electives4 10
Total Credits 30
1 For a full list of acceptable courses see Communication Requirement.
2 While CPSC 110 is the recommended route for students pursuing a program in Computer Science, CPSC 103, 107 may be taken in its place using 2 credits of electives.
3 Students pursuing a Co-op option in Computer Science are advised to also take CPSC 210 in their first year or in the summer following their first year. Co-op students will then be in a position to take one or both of CPSC 221 and CPSC 213 in term 1 of second year before going out on a Co-op work term.
4 Students are permitted to move elective credits between years. Students who take courses in MATH with extra credits will require fewer elective credits in later years. Elective credits together with required courses must fulfill the Faculty of Science’s:
a) Foundational Requirement;
b) Laboratory Science Requirement;
c) Science Breadth Requirement;
d) Science and Arts Requirements;
e) Upper-level Requirement;
f) General Degree Requirements.

Major (0376): Computer Science (CPSC)

Second Year
CPSC 2101 4
CPSC 213, 221 8
MATH 200, 221 6
STAT 241 or 2512 3
Electives3 9
Total Credits 30
Third and Fourth Years
CPSC 310, 313, 320 10
CPSC courses numbered 300 or higher 9
CPSC courses numbered 400 or higher 9
Electives3 32
Total Credits 60
Total Credits for Degree 120
1 Students pursuing a Co-op option in Computer Science are advised to also take CPSC 210 in their first year or in the summer following their first year. Co-op students will then be in a position to take one or both of CPSC 221 and CPSC 213 in term 1 of second year before going out on a Co-op work term.
2 May be replaced by STAT 200 provided MATH/STAT 302 is taken as an elective in third or fourth year. This alternative is recommended for students with an interest in further STAT courses.
3 Students are permitted to move elective credits between years. Elective credits together with required courses must fulfill the Faculty of Science’s:
a) Foundational Requirement;
b) Laboratory Science Requirement;
c) Science Breadth Requirement;
d) Science and Arts Requirements;
e) Upper-level Requirement;
f) General Degree Requirements.

Honours (0154): Computer Science (CPSC)

Second Year
CPSC 2101, 213, 221 12
MATH 200 or 226 3
MATH 221 or 223 3
STAT 200 3
Electives2 15
Total Credits 36
Third and Fourth Years
CPSC 310, 313, 320 10
MATH 302 or STAT 302 3
CPSC 4493 6
CPSC courses numbered 300 or higher 12
CPSC courses numbered 400 or higher 9
Electives2 26
Total Credits 66
Total Credits for Degree 132
1 Students pursuing a Co-op option in Computer Science are advised to also take CPSC 210 in their first year or in the summer following their first year. Co-op students will then be in a position to take one or both of CPSC 221 and CPSC 213 in term 1 of second year before going out on a Co-op work term.
2 Students are permitted to move elective credits between years. Elective credits together with required courses must fulfill the Faculty of Science’s:
a) Foundational Requirement;
b) Laboratory Science Requirement;
c) Science Breadth Requirement;
d) Science and Arts Requirements;
e) Upper-level Requirement;
f) General Degree Requirements.
3 Students who have completed a research intensive experience in a computer science field may be allowed to waive this requirement. Examples of research intensive experiences include full time summer internships in a research laboratory or Undergraduate Student Research Awards. If this requirement is waived, the student must take 6 additional credits of CPSC courses numbered 400 or higher.

Combined Major: Computer Science and Another Science Subject

First Year
Communication Requirement1 6
CPSC 110 (or 103 and 107)2 4
CPSC 1213 4
MATH 100 or 102 or 104 (or 180 or 184 or 120 or 110)4 3
MATH 101 or 103 or 105 (or 121)4 3
Other subject area credits or Electives4,5 10
Total Credits 30
Second Year
CPSC 2103 4
CPSC 213, 221 8
At least 6 credits from MATH 200, 221, STAT 200, 241, 251, BIOL 3006 6
Other subject area credits or Electives4,5 12
Total Credits 30
Third and Fourth Years
CPSC 310, 313, 320 10
Other CPSC courses numbered 300 or above 6
Further CPSC courses numbered 400 or above 6
Other subject area credits numbered 300 or above5 21
Electives4,5 17
Total Credits 60
Total Credits for Degree 120
1 For a full list of acceptable courses see Communication Requirement.
2 While CPSC 110 is the recommended route for students pursuing a program in Computer Science, CPSC 103, 107 may be taken in its place using 2 credits of electives.
3 Students pursuing a Co-op option in Computer Science are advised to also take CPSC 210 in their first year or in the summer following their first year. Co-op students will then be in a position to take one or both of CPSC 221 and CPSC 213 in term 1 of second year before going out on a Co-op work term.
4 Students are permitted to move elective credits between years. Students who take courses in MATH with extra credits will require fewer elective credits in later years. Elective credits together with required courses must fulfill the Faculty of Science’s:
a) Foundational Requirement;
b) Laboratory Science Requirement;
c) Science Breadth Requirement;
d) Science and Arts Requirements;
e) Upper-level Requirement;
f) General Degree Requirements.
5 Other subject area credits are selected with consultation of an advisor of the other subject.
6 Credit will be granted for only one of STAT 200 and BIOL 300. 3 of these 6 credits may be deferred to third year.

Combined Major (1370): Computer Science and Biology

See Biology.

Combined Major (3401): Computer Science and Chemistry (CPSC, CHEM)

First Year
Communication Requirement1 3
CHEM 121 (or 111)2 4
CHEM 123 (or 113) 4
CPSC 110 (or 103 and 107)3 4
CPSC 1214 4
MATH 100 or 102 or 1045 3
MATH 101 or 103 or 1056 3
Electives7 6
Total credits 31
Second Year
CHEM 2038 4
CHEM 208 3
CHEM 213, 245 4
CPSC 210 4
CPSC 213, 221 8
MATH 200 3
Electives7 3
Total credits 29
Third Year
CHEM 211 4
CHEM 300 3
CHEM 312 3
MATH 221 3
Total credits 13
Third and Fourth Years
CHEM 315 1
Two of CHEM 218, 304, 311, 313, 318, 327, 330, 412 6
CPSC 310, 313, 320 10
CHEM Selections10 6
CPSC Selections11 9
CPSC and CHEM Selections12 6
Electives7 9
Total credits 47
Total credits for degree 120
1 Of the 6 credits required to satisfy the Communication Requirement, 3 credits are specified in third year (CHEM 300). The remaining 3 credits must be chosen from the list of acceptable courses, see Communication Requirement (www.calendar.ubc.ca/vancouver/index.cfm?tree=12,215,410,1463). ENGL credits beyond those needed to satisfy the Communication Requirement may be applied towards the Faculty of Science Arts Requirement (www.calendar.ubc.ca/vancouver/index.cfm?tree=12,215,410,1464#18441).
2 Students who do not have B.C. High School Chemistry 12 (or its equivalent) must write the UBC Chemistry Basic Skills Test and may be required to take CHEM 100.
3 While CPSC 110 is the recommended route for students pursuing a program in Computer Science, CPSC 103 and 107 may be taken in its place using 2 credits of electives.
4 Students pursuing the Co-op option are advised to also take CPSC 210 in their first year or in the summer following their first year. Co-op students will then be in a position to take one or both of CPSC 221 and CPSC 213 in term 1 of second year before going out on a Co-op work term.
5 MATH 180 or 184 or 120 or 110 may substitute for any of the specified differential calculus courses listed.
6 MATH 121 may substitute for any of the specified integral calculus courses listed.
7 Elective credits together with required courses must fulfill the Faculty of Science’s:
a) Foundational Requirement;
b) Laboratory Science Requirement;
c) Science Breadth Requirement;
d) Science and Arts Requirements;
e) Upper-level Requirement;
f) General Degree Requirements.
8 Students with CHEM 235 and a score of 76% or higher in CHEM 233 may apply for admission to this specialization and will be allowed to use CHEM 233 and 235 in place of CHEM 203.
9 Chosen from 300- and 400-level CHEM lecture courses. At least 3 credits must be chosen from 400-level CHEM lecture courses. Recommended selections include CHEM 404, 412.
10 Chosen from 300- and 400-level CPSC courses. At least 3 credits must be chosen from 400-level CPSC courses. Recommended selections include CPSC 302 or 303.
11 Chosen from 300- and 400-level CPSC and CHEM lecture courses. With permission, qualified students may apply 3 credits towards CHEM 445 or CHEM 449.

Combined Major (1429): Computer Science and Mathematics

See Mathematics.

Combined Major (1371): Computer Science & Microbiology and Immunology

See Microbiology and Immunology.

Combined Major (1391): Computer Science and Physics

First Year
Communication Requirement1 6
CPSC 110 (or 103 and 107)2 4
CPSC 1213 4
MATH 100 (or 102 or 104 or 110 or 180 or 184 or 120)4 3
MATH 101 (or 103 or 105 or 121)4 3
PHYS 107 (or 117)4,5 3
PHYS 108, 109 (or 102) (or 118, 119)4,5 4
Electives4,6 3
Total Credits 30
Second Year
CPSC 2103, 213, 221 12
MATH 2007, 215, 221 9
PHYS 200, 216, 219, 229 10
Total Credits 31
Third and Fourth Years
CPSC 310, 313, 320 10
CPSC 303 (or 302) 3
Other CPSC courses numbered 300 or above8 3
Further CPSC courses numbered 400 or above8 3
MATH 3177 3
PHYS 2039 4
PHYS 301, 304, 312 9
PHYS 319 (or 309) 3
PHYS 348 or 409 or 42010 3
Additional CPSC or PHYS courses numbered 300 or above8 3
Electives4,6 15
Total Credits 59
Total Credits for Degree 120
1 For a full list of acceptable courses see Communication Requirement.
2 While CPSC 110 is the recommended route for students pursuing a program in Computer Science, CPSC 103, 107 may be taken in its place using 2 credits of electives.
3 Students pursuing a Co-op option in Computer Science are advised to also take CPSC 210 in their first year or in the summer following their first year. Co-op students will then be in a position to take one or both CPSC 221 and CPSC 213 in term 1 of second year before going out on a Co-op work term.
4 If an alternate course is taken with a different credit value one should adjust the number of elective credits to compensate.
5 Students without Physics 12 must take PHYS 100 prior to other PHYS courses. Qualified students are encouraged to take PHYS 107/108/109. Students that took PHYS 101 may enter the specialization but will need to take PHYS 107, 117, or 170 before the required PHYS 216.
6 Students are permitted to move elective credits between years. Elective credits together with required courses must fulfill the Faculty of Science’s:
a) Foundational Requirement;
b) Laboratory Science Requirement;
c) Science Breadth Requirement;
d) Science and Arts Requirements;
e) Upper-level Requirement;
f) General Degree Requirements.
7 Qualified students may replace MATH 200 and 317 with MATH 217 and 2 credits of electives, in consultation with an advisor.
8 Students interested in computer modelling and simulation should take both CPSC 302, 303, and at least one of CPSC 402, 406, PHYS 410.
9 The combination CHEM 201 and CHEM 304 may replace PHYS 203.
10 Students who have taken CPSC 319 may replace this requirement with any upper-level PHYS course.

Combined Major (1375): Computer Science and Statistics

First Year
Communication Requirement1 6
CPSC 110 (or 103 and 107)2 4
CPSC 1213 4
MATH 100 or 102 or 104 (or 180 or 184 or 120 or 110)4 3
MATH 101 or 103 or 105 (or 121)4 3
Electives5 12
Total Credits 32
Second Year
CPSC 2103 4
CPSC 213, 221 8
MATH 200, 221 6
STAT 200, STAT/MATH 302 6
Electives5 6
Total Credits 30
Third and Fourth Years
CPSC 310, 313, 320 10
CPSC courses numbered 300 or above6 6
CPSC courses numbered 400 or above6 6
MATH 303, 307 6
STAT 305, 306 6
STAT courses numbered 300 or above6 6
STAT courses numbered 400 or above6 3
Electives5 15
Total Credits 58
Total Credits for Degree 120
1 For a full list of acceptable courses see Communication Requirement.
2 While CPSC 110 is the recommended route for students pursuing a program in Computer Science, CPSC 103, 107 may be taken in its place using 2 credits of electives.
3 Students pursuing a Co-op option in Computer Science are advised to also take CPSC 210 in their first year or in the summer following their first year. Co-op students will then be in a position to take one or both of CPSC 221 and CPSC 213 in term one of second year before going out on a Co-op work term.
4 If an alternate course is taken with a different credit value one should adjust the number of elective credits to compensate.
5 Students are permitted to move elective credits between years. Elective credits together with required courses must fulfill the Faculty of Science’s:
a) Foundational Requirement;
b) Laboratory Science Requirement;
c) Science Breadth Requirement;
d) Science and Arts Requirements;
e) Upper-level Requirement;
f) General Degree Requirements.
6 CPSC and STAT courses in databases, graphics, visualization, machine learning, artificial intelligence, simulation, data analysis, knowledge discovery, data mining, modelling, and numerical methods are strongly recommended.

Admission to this specialization must be approved by both Departments. Contact Computer Science for information.

Combined Honours (1372): Atmospheric Science and Computer Science

See Atmospheric Science.

Combined Honours (1460): Computer Science and Biology

See Biology.

Combined Honours (0021): Computer Science and Mathematics (CPSC, MATH)

First Year
Communication Requirement1 6
CPSC 110 (or 103 and 107)2 4
CPSC 1213 4
MATH 120 (or 100 or 102 or 104 or 180 or 184)4 4
MATH 121 (or 101 or 103 or 105) 4
PHYS 107 (or 117 or 101)5 3
Electives6 8
Total Credits 33
Second Year
CPSC 2103 4
CPSC 213, 221 8
MATH 226 (or 200)7 3
MATH 215, 223 (or 221), 227 (or 317) 9
Electives6 9
Total Credits 33
Third Year
CPSC 302 or 3038 3
CPSC 310, 313, 320 10
MATH 316, 320, 321 9
6 credits from MATH 300, 301, 322, 323, 331 6
Electives6 5
Total Credits 33
Fourth Year
CPSC 420 or 421 3
CPSC courses numbered 300 and above 9
12 credits from MATH 400-406, 412, 418-428, 433-440, 443, 449, 450, CPSC 402, 406 12
Electives6 9
Total Credits 33
Total Credits for Degree 132
1 For a full list of acceptable courses see Communication Requirement.
2 While CPSC 110 is the recommended route for students pursuing a program in Computer Science, CPSC 103, 107 may be taken in its place using 2 credits of electives.
3 Students pursuing a Co-op option in Computer Science are advised to also take CPSC 210 in their first year or in the summer following their first year. Co-op students will then be in a position to take one or both of CPSC 221 and CPSC 213 in term one of second year before going out on a Co-op work term.
4 See UBC-SFU-UVIC-UNBC Calculus Examination Certificate. Also, MATH 110 may substitute for any of the specified courses by decreasing the electives by 3 credits.
5 Students without Physics 12 must complete PHYS 100.
6 Students are permitted to move elective credits between years. Elective credits together with required courses must fulfill the Faculty of Science’s:
a) Foundational Requirement;
b) Laboratory Science Requirement;
c) Science Breadth Requirement;
d) Science and Arts Requirements;
e) Upper-level Requirement;
f) General Degree Requirements.
7 Students who take MATH 200 or who obtain less than 68% in MATH 226 must take MATH 220 and obtain 80% or higher in order to take the required course MATH 320.
8 May be deferred to the following year.

Combined Honours (1373): Computer Science & Microbiology and Immunology

See Microbiology and Immunology.

Combined Honours (0138): Computer Science and Physics (CPSC, PHYS)

First Year
Communication Requirement1 3
CHEM 121 (or 111)2 4
CPSC 110 (or 103 and 107)3 4
CPSC 1214 4
MATH 120 (or 100 or 102 or 104 or 110 or 180 or 184)5 4
MATH 121 (or 101 or 103 or 105)5 4
PHYS 107 (or 117)6 3
PHYS 108, 109 (or 102) (or 118, 119)5,6 4
Electives7 3
Total Credits 33
Second Year
Communication Requirement1 3
CPSC 2104, 213, 221 12
MATH 215, 2178 7
MATH 223 (or 221)9 3
PHYS 200, 219, 229 7
Electives7 3
Total Credits 35
Third Year
6 credits from CPSC 302, 303, 313 6
CPSC 310, 320 7
MATH 316 3
PHYS 203, 301, 216 10
PHYS 319 (or 309) 3
Electives7 3
Total Credits 32
Fourth Year
PHYS 304 3
6 credits from fourth-year PHYS electives10 6
Additional CPSC courses numbered 300 or above 6
PHYS 449 or CPSC 44911 6
3 credits from CPSC 402, 406, MATH 405 3
Electives7 8
Total Credits 32
Total Credits for Degree 132
1 A total of six credits of coursework is required to meet the Communication Requirement. For a full list of acceptable courses see Communication Requirements.
2 Students who do not have B.C. High School Chemistry 12 (or its equivalent) must write the UBC Chemistry Basic Skills Test and may be required to take CHEM 100.
3 While CPSC 110 is the recommended route for students pursuing a program in Computer Science, CPSC 103, 107 may be taken in its place using 2 credits of electives.
4 Students pursuing a Co-op option in Computer Science are advised to also take CPSC 210 in their first year or in the summer following their first year. Co-op students will then be in a position to take one or both of CPSC 221 and CPSC 213 in term one of second year before going out on a Co-op work term.
5 If an alternate course is taken with a different credit value one should adjust the number of elective credits to compensate. First-year physics, biology, chemistry, and mathematics can be replaced by SCIE 001.
6 Students without Physics 12 must take PHYS 100 prior to other PHYS courses. Students who took PHYS 101 may enter the specialization but will need to take PHYS 107, 117, or 170 before the required PHYS 216.
7 The number of electives in each year is chosen to balance the total number of credits (i.e., make the yearly total close to 33). However, since the number of available elective credits may not be a multiple of three, students are permitted to move elective credits between years. Students interested in senior chemistry courses or who are planning to enter a career in teaching are reminded that they should take a second course of introductory chemistry. Elective credits together with required courses must fulfill the Faculty of Science’s:
a) Foundational Requirement;
b) Laboratory Science Requirement;
c) Science Breadth Requirement;
d) Science and Arts Requirements;
e) Upper-level Requirement;
f) General Degree Requirements.
8 May be replaced with MATH 200 and MATH 317 (using 3 elective credits).
9 Students with credit for MATH 152 prior to entering this specialization can substitute it for MATH 223. MATH 223 or MATH 221 can be taken in first year. Eligible students are highly recommended to take MATH 223.
10 Fourth-year PHYS electives are ASTR 403, 404, 406; MATH 345, 401, 402, 405, 418, 420, 450; PHYS 400, 401, 402, 403, 405, 407, 410, 437, 447, 473, 474. Qualified students are encouraged to take 500-level physics courses for which they must have permission of the Faculty of Science and the Dean of the Faculty of Graduate Studies.
11 Students who elect to take CPSC 449 must take CPSC 349 in their third year.

Combined Honours (1376): Computer Science and Statistics (CPSC, STAT)

First Year
Communication Requirement1 6
CPSC 110 (or 103 and 107)2 4
CPSC 1213 4
MATH 120 (or 100 or 102 or 104 or 180 or 184 or 110) 4
MATH 121 (or 101 or 103 or 105) 4
Electives4 10
Total Credits 32
Second Year
CPSC 2103 4
CPSC 213, 221 8
MATH 2205 3
MATH 223 or 221 3
MATH 2265 or 200 3
STAT 200, STAT/MATH 302 6
Electives4 6
Total Credits 33
Third Year
CPSC 302, 303, 304, 310, 320 16
MATH 3036, 307, 320 9
STAT 306 3
STAT courses numbered 300 or above 3
Electives4 3
Total Credits 34
Fourth Year
CPSC courses numbered 300 and above 6
CPSC courses numbered 400 and above7 6
STAT 460, 461 6
STAT courses numbered 400 and above 3
6 credits from CPSC 340, 420, MATH 418, 419, 420, 421 or further STAT courses numbered 400 or above 6
Electives4 6
Total Credits 33
Total Credits for Degree 132
1 For a full list of acceptable courses see Communication Requirement.
2 While CPSC 110 is the recommended route for students pursuing a program in Computer Science, CPSC 103, 107 may be taken in its place using 2 credits of electives.
3 Students pursuing a Co-op option in Computer Science are advised to also take CPSC 210 in their first year or in the summer following their first year. Co-op students will then be in a position to take one or both of CPSC 221 and CPSC 213 in term one of second year before going out on a Co-op work term.
4 Students are permitted to move elective credits between years. Students who take courses in MATH or PHYS with more or less credits than those recommended will require a different number of elective credits. Elective credits together with required courses must fulfill the Faculty of Science’s:
a) Foundational Requirement;
b) Laboratory Science Requirement;
c) Science Breadth Requirement;
d) Science and Arts Requirements;
e) Upper-level Requirement;
f) General Degree Requirements.
5 Students obtaining 68% or higher in MATH 226 may replace MATH 220 with 3 elective credits.
6 May be replaced by MATH 419 in fourth year.
7 Courses from CPSC 402, 404, 406 are recommended.

Software Engineering Option

Admission into the Software Engineering option is limited and based on academic performance. Students who wish to enter the option have to apply to the Department of Computer Science before the end of their second year. More information may be obtained from the Department (www.cs.ubc.ca).

The option leads to a Bachelor of Science degree. It is not a CEAB accredited engineering degree program leading to the designation Professional Engineer (P.Eng.).

Major (1200): Computer Science and Software Engineering

First Year
Same as Major and Honours Computer Science
Second Year
CPSC 210 4
CPSC 213, 221 8
MATH 200, 221 6
STAT 241 or 2511 3
Electives2 9
Total Credits 30
Third and Fourth Years
CPSC 310, 311, 313, 319, 320 17
CPSC 410, 411, 421 9
One of CPSC 304, 317, 344 3
One of CPSC 415, 416, 417, 444, CPEN 421, 432, EECE 443, 4943,4 3
One more of CPSC 304, 317, 344, 415, 416, 417, 444, CPEN 421, 432, EECE 443, 4943,4 3
Electives2 25
Total Credits 60
Total Credits for Degree 120
1 May be replaced by STAT 200 provided MATH/STAT 302 is taken as an elective in third or fourth year. This alternative is recommended for students with an interest in further STAT courses.
2 Students are permitted to move elective credits between years. Elective credits together with required courses must fulfill the Faculty of Science’s:
a) Foundational Requirement;
b) Laboratory Science Requirement;
c) Science Breadth Requirement;
d) Science and Arts Requirements;
e) Upper-level Requirement;
f) General Degree Requirements.
3 Students are encouraged to consider other courses in this group as electives.
4 Students electing to take CPEN or EECE courses must ensure that they meet the Faculty of Science Upper-level Requirement.

Honours (1201): Computer Science and Software Engineering

First and Second Year
Same as in the regular Honours specialization.
Third and Fourth Years
CPSC 310, 311, 313, 319, 320 17
CPSC 410, 411, 421 9
One of CPSC 304, 317, 344 3
One of CPSC 415, 416, 417, 444, CPEN 421, 432, EECE 443, 4941 3
One more of CPSC 304, 317, 344, 415, 416, 417, 444, CPEN 421, 432, EECE 443, 4941 3
CPSC 4492 6
MATH 302 or STAT 302 3
Electives3 22
Total Credits 66
Total Credits for Degree 132
1 Students are encouraged to consider other courses in this group as electives.
2 Taken in fourth year. It is recommended that students select a thesis topic in one of the following areas: software engineering, programming languages, or systems. Students who have completed a research intensive experience in a computer science field may be allowed to waive this requirement. Examples of research intensive experiences include full time summer internships in a research laboratory or Undergraduate Student Research Awards. If this requirement is waived, the student must take 6 additional credits of CPSC courses numbered 400 or higher.
3 Students are permitted to move elective credits between years. Elective credits together with required courses must fulfill the Faculty of Science’s:
a) Foundational Requirement;
b) Laboratory Science Requirement;
c) Science Breadth Requirement;
d) Science and Arts Requirements;
e) Upper-level Requirement;
f) General Degree Requirements.

Major in Mathematical Sciences

See Mathematics under Bachelor of Science.

B.Sc. Major in Cognitive Systems (1226): Computational Intelligence and Design

For specialization information and admission requirements, see Cognitive Systems (Science).

First Year
Communication Requirement1 6
CPSC 110 (or 103 and 107)2 4
CPSC 1213 4
MATH 100 or 102 or 104 (or 120 or 180 or 184)4 3
MATH 101 or 103 or 105 (or 121)4 3
Electives4,5,6,7 10
Total Credits 30
Second Year
COGS 200 3
CPSC 2103 4
CPSC 221 4
LING 1008 3
PHIL 220 (or PHIL 320)9 3
STAT 200 or 241 or 25110 3
Electives4,5,6,7 10
Total Credits 30
Third and Fourth Years
COGS 300, 303, 401, 402 13
CPSC 312, 320, 322 9
PHIL 326, 351, 441, 451 or 455 3
PSYC 365 3
Cognitive Systems module courses numbered 300 or above6,7,11,12 12
Electives4,5,6 20
Total Credits 60
Total Credits for Degree 120
1 For a full list of acceptable courses see Communication Requirement.
2 While CPSC 110 is the recommended route for students pursuing a program in Computer Science, CPSC 103, 107 may be taken in its place using 2 credits of electives.
3 Students pursuing a Co-op option are advised to also take CPSC 210 in their first year or in the summer following their first year. Co-op students will then be in a position to take CPSC 221 in Term 1 of second year before going out on a Co-op work term.
4 Students attempting the COGS major should choose electives to obtain prerequisites to appropriate third- and fourth-year courses. Note that the B.Sc. requires at least 72 credits of science courses. Students taking more than 6 credits of first-year MATH can reduce the number of elective credits required in first, second or third year accordingly. MATH 110 may substitute for any of the specified differential calculus courses listed by decreasing the electives by 3 credits. Students are permitted to move elective credits between years.
5 Elective credits together with required courses must fulfill the Faculty of Science’s:
a) Foundational Requirement;
b) Laboratory Science Requirement;
c) Science Breadth Requirement;
d) Science and Arts Requirements;
e) Upper-level Requirement;
f) General Degree Requirements.
6 Prerequisites for Cognitive Systems module courses are recommended as electives for each year of study. Modules are sets of recommended courses that are directly relevant to Cognitive Systems. For the list of module courses, see Cognitive Systems program website (cogsys.ubc.ca/). Courses explicitly listed as required cannot also be credited as module courses.
7 Students who are thinking of taking BIOL courses as Cognitive Systems module courses will need BIOL 361, and hence should plan on taking BIOL 112, CHEM 111 or 121, CHEM 123 and BIOL 200 in first and second year.
8 Students should take LING 100 as soon as possible, preferably before taking COGS 200.
9 The prerequisite PHIL 220 may be waived for PHIL 320 with the consent of the instructor.
10 Students must achieve a grade of greater than 72% in this course, or else must take another 3 credits of MATH or STAT in order to be admitted to CPSC 320. Students interested in further STAT courses are recommended to take STAT 200.
11 At least 3 credits must be 400-level CPSC module courses and 9 credits must be non-CPSC module courses.
12 BIOL 455 and 458 can also be counted towards this requirement so long as PSYC 360 or PSYC 304 has not been taken.

Page last updated: July 3, 2019


© 2019 The University of British Columbia | Vancouver
Information in this Academic Calendar is subject to change. Visit www.calendar.ubc.ca/vancouver for current details.
This document was generated on 20 Sep 2019 at 7:35 PM.