Go Global Course Exchange List

The tables in the bottom part of this Web page show the correspondence between selected Computer Science courses at several international universities and UBC.  This Web page only shows some of the courses that would transfer.  Many more courses and schools are available; the ones below are just examples.  Please note that courses periodically change their learning goals, so course mappings may change over time.  It often helps to get a detailed course outline from the other institution before committing to taking that course.

Make an appointment with a CPSC advisor if you would like to take a course that is not listed here, and you want to know if it will transfer.  Note that "CPSC 3rd (3)" in a table below simply means that the course transfers to UBC as a general, third-year CPSC course that's worth three credits.  Thus, if you are a UBC student, you can use this transfer as if it were a third-year UBC CPSC course (it just doesn't map to a specific CPSC course of ours, but it is of acceptable quality, and therefore qualifies for Go Global transfer credit).

Note that different schools have different credit formulas.  UBC tries to be fair by giving the equivalent number of UBC credits.  For example, a University of Melbourne introductory AI course might be worth 3.75 credits at UBC, which may mean that you will get 3 credits for CPSC 322 transfer, plus 1 extra CPSC 3rd credit (rounded up).  However, three 3.75-credit courses would round to 11 UBC credits (not 12).  See the Go Global Web site for more information about "Transfer Credit Equivalency Formulas".  Similarly, a University of Nottingham course might transfer as 2.5 UBC credits, which we'll round to 3 in most cases -- or, if you take two 2.5-credit courses, you'll wind up with 5 UBC credits.

ETH Zurich (Switzerland)

ETH Zurich CS


252-0058-00L (7) Formal Methods and Functional Programming

CPSC 3rd (3)

252-0062-00L (8) Operating Systems and Networks

CPSC 3rd (3)

252-0206-00L (8) Visual Computing

CPSC 314 (3) Computer Graphics

252-0209-00L (8) Algorithms, Probability, and Computing

CPSC 420 (3) Advanced Algorithm Design and Analysis

252-0215-00L (8) Information Systems

CPSC 3rd (3)

252-0216-00L (8) Software Architecture and Engineering

CPSC 310 (4) Software Engineering

252-0218-00L (8) Modelling and Simulation

CPSC 4th (3) - exempt CPSC 406

252-0535-00L (6) Machine Learning

CPSC 340 (3) Machine Learning and Data Mining

252-2601-02L (4) Software Engineering Laboratory: Open-Source EiffelStudio

CPSC 3rd (2)

252-3110-00L (4) Human Computer Interaction

CPSC 3rd (2)

401-0674-00L (8) Numerical Methods for Partial Differential Equations

CPSC 4th (3) - precludes credit for MATH 405 and MATH 406 (which means you will lose credit for CPSC 4th (3) if you take either UBC MATH 405 or 406)

University College London (UK)



COMP2009 - Software Engineering and Human Computer Interaction

CPSC 3rd (3)

COMP3005 - Operating Systems

CPSC 3rd (3)

COMPM072 - Mathematical Methods Algorithms and Implementations

Check with the MATH department; UCL's course won't transfer for CPSC credit.

COMP3013 - Database and Information Management Systems

CPSC 3rd (3)

COMP3011 - Functional Programming

CPSC 3rd (3) - precludes credit for CPSC 312 Functional and Logic Programming

COMP3035 - Networked Systems

CPSC 317 (3) Internet Computing

COMP3080 - Computer Graphics

CPSC 314 (3) Computer Graphics

COMP3058 - Artificial Intelligence and Neural Computing

CPSC 3rd (3) - exempt CPSC 322 Introduction to Artificial Intelligence

COMPM012 - Programming & Mathematical Methods for Machine Learning

CPSC 3rd (3) - approximately a 60% match with CPSC 340

National University of Singapore



CS2102 Database Systems

CPSC 304 (3)

CS2103 Software Engineering

CPSC 3rd (3) - exempt CPSC 310 Introduction to Software Engineering

CS3103 Computer Networks and Protocols

CPSC 317 (3) Internet Computing

CS3201 Software Engineering Project I; CS3202 Software Engineering Project II (2 term course)

CS3201 + CS3202 = UBC CPSC 319 (4) Software Engineering Project + UBC CPSC 3rd (2); CS 3201 = UBC CPSC 3rd (3) - precludes credit for UBC CPSC 319 (if taken alone)

CS3211 Parallel and Concurrent Programming

CPSC 4th (3)

CS3212 Programming Languages

CPSC 311 (3) Definition of Programming Languages

CS3221 Operating Systems Design and Pragmatics

CPSC 3rd (3)

CS3223 Database Systems Implementation

CPSC 404 (3) Advanced Relational Databases

CS3225 Combinatorial Methods in Bioinformatics

CPSC 4th (3)

CS3230 Design and Analysis of Algorithms

CPSC 320 (3) - Intermediate Algorithm Design and Analysis

CS3234 Logic and Formal Systems

CPSC 3rd (3)

CS3240 Interaction Design

CPSC 3rd (3) - exempt CPSC 344 Introduction to Human Computer Interaction Methods

CS3241 Computer Graphics

CPSC 314 (3) Computer Graphics

CS3243 Introduction to Artificial Intelligence

CPSC 322 (3) Introduction to Artificial Intelligence

CS3244 Machine Learning

CPSC 3rd (3)

CS3246 Multimedia Content Analysis and Search

CPSC 3rd (3)

CS3249 User Interface Development

CPSC 3rd (3) - precludes credit for CPSC 344 (i.e., you can't get credit for both CS3249 and UBC CPSC 344)

CS4220 Knowledge Discovery Methods in Bioinformatics

CPSC 4th (3)

CS4222 Wireless Networking

CPSC 3rd (3)

CS4231 Parallel and Distributed Algorithms

CPSC 4th (3)

CS6206 Advanced Topics in Human-Computer Interaction

CPSC 4th (3) - whether or not a student could also take UBC CPSC 444 depends on the specific topics taught at NUS that term

University of Melbourne (Australia)

Melbourne CS


COMP 30018 Knowledge Technologies

CPSC 3rd (4)

COMP 30024 Artificial Intelligence

CPSC 322 (3) + CPSC 3rd (1)

University of Nottingham (UK)

Nottingham CS


G51FSE Software Engineering

CPSC 3rd (3)

G51IAI Introduction to Artificial Intelligence

CPSC 322 (3)

G52CCN Computer Communications and Networks

CPSC 317 (3)

G53ARS Autonomous Robotic Systems

CPSC 3rd (3)

G54ALG Algorithm Design

CPSC 3rd (3) -- exempt CPSC 320

University of Birmingham (UK)

Birmingham CS


CPSC 02578 Compilers & Languages

CPSC 3rd (3)

CPSC 20008 Cryptography

CPSC 4th (3)

CPSC 23636 Operating Systems with C/C++

CPSC 3rd (5)

CPSC 23899 Computer Security

CPSC 4th (5)

  • Besides those schools in the tables above, some other schools that CPSC students have recently attended (and taken CS courses there) while on Go Global Exchange include:
    • University of Delhi (India)
  • And a few other recently attended schools (but our CPSC students decided to take only elective courses there) include:
    • Seoul National University (South Korea)
    • Yonsei University (South Korea)
    • Osaka University (Japan)
    • Hong Kong University of Science and Technology
    • Ludwig Maximilians Universitat (Germany)
  • Some additional schools that current UBC CPSC students are about to attend include:
    • University of New South Wales (Australia)
    • University of Toronto (an international student going on an international exchange, albeit in Canada)
  • A PDF file listing all of the Faculty of Science's international Go Global partners (at the time of writing) is attached as a link at the bottom of this Web page.  Contact the Go Global office for the most current information.