Please note:

To view the Spring 2025 Academic Calendar, go to www.sfu.ca/students/calendar/2025/spring.

School of Computing Science | Faculty of Applied Sciences Simon Fraser University Calendar | Summer 2025

Computing Science Dual Degree Program Major

Bachelor of Science

The school offers a dual degree program (DDP) with Zhejiang University (ZJU) in China that leads to the awarding of two degrees – a bachelor of science from Simon Fraser University (SFU) and, depending on program option, a bachelor of engineering or master of finance from Zhejiang University.

Admission Requirements

BSc/BEng Option

Students are admitted to the BSc/BEng option upon recommendation of the Zhejiang University College of Computer Science and Technology.

BSc/Master of Finance Option

Students may be admitted directly upon entry to Simon Fraser University (secondary school applicants) or indirectly by transfer from another SFU program. Admission is competitive and enrollment is limited. Decisions will be made on the basis of a student's admission average in combination with the required supplemental information. Admission for secondary school applicants is a two-step process; Applicants must meet the competitive admission average calculated on specific secondary school coursework (http://www.sfu.ca/students/admission-requirements.html) and they must also submit the following materials through the DDP website (https://courses.cs.sfu.ca/forms/cmpt-ddp/): (a) a completed Statement of Interest Form (b) a resume outlining school achievements, extracurricular activities, and employment history if any, and (c) names, titles and email addresses of two referees. At least one of the referees must be from a teacher/counselor/principal who can comment on academic potential and maturity for the Dual Degree Program.

The program begins each fall term, but students may be admitted in any term.

Internal transfer applicants should seek the advice of an Applied Sciences advisor for academic and language-placement assessment.

Continuation Requirements

Students who do not maintain at least a 2.40 cumulative grade point average (CGPA), will be placed on probation. Courses available to probationary students may be limited. Each term, these students must consult an advisor prior to enrollment and must achieve either a term 2.40 term GPA or an improved CGPA. Reinstatement from probationary standing occurs when the CGPA improves to 2.40 or better and is maintained.

Students must obtain permission from the department if they wish to complete, for further unit, any course that is a prerequisite for a course the student has already completed with a grade of C- or higher.

Students in the BSc/Master of Finance option must maintain at least a 3.0 CGPA.

Prerequisite Grade Requirement

Computing science course entry requires a grade of C- or better in each prerequisite course. A minimum 2.40 cumulative grade point average is required for upper division computing courses.

Program Overview

BSc/BEng Option

Students complete a four-year curriculum starting with two years including all lower division courses required by the Dual Degree Program curriculum at Zhejiang University (typically 60-66 units). Zhejiang students then travel to Simon Fraser University to complete the remaining two years of course work (typically 54-60 units) including 39-45 units of upper division computing science courses.

BSc/Master of Finance Option

Students complete a five year curriculum starting with 3.5 years of a computing science major or honours program completing at least 102 units at SFU. Students then spend 1.5 years at Zhejiang University completing the remaining requirements of the SFU BSc within the first year and the requirements of the ZJU master of finance thereafter.

Program Requirements

Lower Division Requirements

BSc/BEng Option

After successful completion of the two-year Dual Degree program curriculum at Zhejiang University, students receive 60 units of block DDP credit on the SFU transcript plus up to six additional units of assigned upper division CMPT credit. The block DDP credit includes six units of B-Hum credit, six units of B-Soc credit, six units of B-Sci credit, six units of B-undesignated and six units of Q credit. Zhejiang students must complete six units of W credit at Simon Fraser University.

BSc/Master of Finance Option

Students complete all of*

BUS 232 - Business Statistics (3)
CMPT 105W - Social Issues and Communication Strategies in Computing Science (3)
CMPT 120 - Introduction to Computing Science and Programming I (3)
CMPT 125 - Introduction to Computing Science and Programming II (3)
CMPT 201 - Systems Programming (4)
CMPT 210 - Probability and Computing (3)
CMPT 225 - Data Structures and Programming (3)
CMPT 276 - Introduction to Software Engineering (3)
CMPT 295 - Introduction to Computer Systems (4)
ECON 105 - Principles of Macroeconomics (4)
MACM 101 - Discrete Mathematics I (3)
MATH 151 - Calculus I (3)
MATH 152 - Calculus II (3)

and one of*

MATH 232 - Applied Linear Algebra (3)
MATH 240 - Algebra I: Linear Algebra (3)

and one of**

HIST 255 - China since 1800 (3)
SA 275 - China in Transition (SA) (4)

*Course substitutions consistent with those of the computing science major program are acceptable.

**Students may apply to substitute any non-Chinese language course on the elective list of the certificate in Chinese studies, provided that the topic is approved by that program as China-related.

Mandarin Courses

Students with no previous knowledge of Chinese languages complete the following courses.

CHIN 180 - Intensive Mandarin Chinese for Beginners I (3)
CHIN 181 - Intensive Mandarin Chinese for Beginners II (3)
CHIN 280 - Intensive Mandarin Chinese for Beginners III (3)
CHIN 281 - Intensive Mandarin Chinese for Beginners IV (3)

Students with some previous knowledge of Chinese languages are assessed for placement by the DDP Chinese Language Instructor. Students may be required to take one or more of the following courses.

CHIN 190 - Heritage Mandarin Chinese I (3)
CHIN 191 - Heritage Mandarin Chinese II (3)
CHIN 290 - Heritage Mandarin Chinese III (3)
CHIN 291 - Heritage Mandarin Chinese IV (3)
CHIN 390 - Advanced Chinese Reading (3)

Other Chinese language related courses may be counted toward the language requirements subject to approval by the DDP Chinese Language Instructor.

Upper Division Requirements

BSc/BEng students complete the following upper division courses or equivalent. Students should consult an advisor before commencing upper division requirements. Course substitutions may be approved in consultation with an advisor.

Breadth Requirement

Seven courses from five of the six Table I areas of concentration must be completed including

CMPT 307 - Data Structures and Algorithms (3)
CMPT 354 - Database Systems I (3)
CMPT 371 - Data Communications and Networking (3)

Depth Requirement

12 units of additional CMPT courses numbered CMPT 400 or above must be completed (excluding CMPT 415, 416, and 498, which may be included by special permission).

Additional Requirements

CMPT 376W - Professional Responsibility and Technical Writing (3)
MACM 316 - Numerical Analysis I (3)
CMPT 497 - Dual Degree Program Capstone Project (6) *

* CMPT 497 can be replaced by two approved CMPT 400 level courses (six units)

Table I – Computing Science Concentrations

Artificial Intelligence

CMPT 310 - Introduction to Artificial Intelligence (3)
CMPT 340 - Biomedical Computing (3)
CMPT 410 - Machine Learning (3)
CMPT 411 - Knowledge Representation (3)
CMPT 413 - Computational Linguistics (3)
CMPT 417 - Intelligent Systems (3)
CMPT 419 - Special Topics in Artificial Intelligence (3)
CMPT 420 - Deep Learning (3)

Visual and Interactive Computing

CMPT 361 - Introduction to Visual Computing (3)
CMPT 363 - User Interface Design (3)
CMPT 365 - Multimedia Systems (3)
CMPT 412 - Computer Vision (3)
CMPT 461 - Computational Photography and Image Manipulation (3)
CMPT 464 - Geometric Modelling in Computer Graphics (3)
CMPT 466 - Animation (3)
CMPT 467 - Visualization (3)
CMPT 469 - Special Topics in Computer Graphics (3)

Computing Systems

CMPT 303 - Operating Systems (3)
CMPT 305 - Computer Simulation and Modelling (3)
CMPT 371 - Data Communications and Networking (3)
CMPT 379 - Principles of Compiler Design (3)
CMPT 403 - System Security and Privacy (3)
CMPT 431 - Distributed Systems (3)
CMPT 433 - Embedded Systems (3)
CMPT 450 - Computer Architecture (3)
CMPT 471 - Networking II (3)
CMPT 479 - Special Topics in Computing Systems (3)
CMPT 499 - Special Topics in Computer Hardware (3)

Information Systems

CMPT 353 - Computational Data Science (3)
CMPT 354 - Database Systems I (3)
CMPT 362 - Mobile Applications Programming and Design (3)
CMPT 372 - Web II - Server-side Development (3)
CMPT 441 - Computational Biology (3)
CMPT 454 - Database Systems II (3)
CMPT 456 - Information Retrieval and Web Search (3)
CMPT 459 - Special Topics in Database Systems (3)
CMPT 474 - Web Systems Architecture (3)

Programming Languages and Software

CMPT 373 - Software Development Methods (3)
CMPT 383 - Comparative Programming Languages (3)
CMPT 384 - Symbolic Computing (3)
CMPT 473 - Software Testing, Reliability and Security (3)
CMPT 475 - Requirements Engineering (3)
CMPT 477 - Introduction to Formal Verification (3)
CMPT 489 - Special Topics in Programming Languages (3)

Theoretical Computing Science

CMPT 307 - Data Structures and Algorithms (3)
CMPT 308 - Computability and Complexity (3)
CMPT 404 - Cryptography and Cryptographic Protocols (3)
CMPT 405 - Design and Analysis of Computing Algorithms (3)
CMPT 406 - Computational Geometry (3)
CMPT 407 - Computational Complexity (3)
CMPT 409 - Special Topics in Theoretical Computing Science (3)
CMPT 476 - Introduction to Quantum Algorithms (3) or MACM 476 - Introduction to Quantum Algorithms (3)
MACM 300 - Introduction to Formal Languages and Automata with Applications (3)

Minimum Unit and Residency Requirement

Students must complete a minimum of 120 SFU equivalent units overall including at least 45 upper division units. Students must complete at least 54 ZJU units at Zhejiang University including at least 34 computing science core course units. Students must also complete at least 54 units at Simon Fraser University including at least 30 upper division computing science course units.

BSc/Master of Finance Students

By default, the SFU credential awarded by completion of the requirements outlined below is bachelor of science with major in computing science. However, students may choose instead to apply the ZIBS credit towards any other major, joint major, honours or joint honours program offered by the School of Computing Science, provided that the requirements of the chosen program are fully met.

Breadth Requirement

Students complete all of

CMPT 307 - Data Structures and Algorithms (3)
CMPT 310 - Introduction to Artificial Intelligence (3)
CMPT 354 - Database Systems I (3)
CMPT 371 - Data Communications and Networking (3)
CMPT 376W - Professional Responsibility and Technical Writing (3)

Dept Requirement

Students complete 24 additional upper division CMPT units, including at least nine units at the CMPT 400 level or above.

The following ZIBS courses may be counted for two units of CMPT 4XX credit each, up to a maximum of six units.

Blockchain and Digital Currency (2)

Distributed Ledger Technology (2)

Cloud Computing and Biometrics (2)

Quantitative Trading and Algorithmic Trading (2)

Study at ZIBS

Students apply by May 30 to begin studies at Zhejiang University in either the following fall term (September start) or spring term (February start - accelerated program).

Students must complete at least 102 units of SFU degree requirements with a cumulative grade point average of at least 3.0 prior to beginning study of Zhejiang University. Students starting in September complete the ZIBS program in two years, students starting in February complete the ZIBS program in 1.5 years.

SFU students will be given advanced credit toward ZIBS requirements based on specific SFU coursework completed. Each year, an updated list of recognized SFU courses that may be counted towards ZIBS requirements will be available from the program advisor.

Credit for ZIBS Course Work

Students will be awarded 18 units of upper division block transfer credit for completion of the first 18 units of course work at ZIBS. This block credit may be counted towards three units of B-Soc breadth requirements as well as six units of undesignated breadth requirements. Depending on the specific ZIBS course taken, up to six units may be counted towards CMPT 4XX requirements as noted above.

Students must complete this ZIBS coursework and all other SFU degree requirements for the BSc within one year of beginning studies at Zhejiang University. Completion of the SFU bachelor’s degree is required before application for the master of finance degree from Zhejiang University.

Co-operative Education and Work Experience

All computing science students are strongly encouraged to explore the opportunities that Work Integrated Learning (WIL) can offer them. Please contact a computing science co-op advisor during your first year of studies to ensure that you have all of the necessary courses and information to help plan for a successful co-op experience.

Writing, Quantitative, and Breadth Requirements

Students admitted to Simon Fraser University beginning in the fall 2006 term must meet writing, quantitative and breadth requirements as part of any degree program they may undertake. See Writing, Quantitative, and Breadth Requirements for university-wide information.

WQB Graduation Requirements

A grade of C- or better is required to earn W, Q or B credit

Requirement

Units

Notes
W - Writing

6

Must include at least one upper division course, taken at Simon Fraser University within the student's major subject; two courses (minimum three units each)

Q - Quantitative

6

Q courses may be lower or upper division; two courses (total six units or more)
B - Breadth

18

Designated Breadth

Must be outside the student's major subject, and may be lower or upper division:

Two courses (total six units or more) Social Sciences: B-Soc
Two courses (total six units or more) Humanities: B-Hum
Two courses (total six units or more) Sciences: B-Sci

6

Additional Breadth

Two courses (total six units or more) outside the student's major subject (may or may not be B-designated courses, and will likely help fulfil individual degree program requirements).

Students choosing to complete a joint major, joint honours, double major, two extended minors, an extended minor and a minor, or two minors may satisfy the breadth requirements (designated or not designated) with courses completed in either one or both program areas.

Tuition and Program Fee

See the Undergraduate Tuition page for more information.