The following are study abroad opportunities specific to computer science majors.

While there are many opportunities to study abroad and they are all worthwhile experiences, there are two specific programs that the Computer Science Department has worked on that allow you to continue your computer science education while abroad.

These two programs will expose you to world-class computer science programs while getting the benefits of study abroad.  They both offer a broad range of courses that are appropriate and valuable.  We are not able to able to identify equivalence and acceptance of every course that is offered, so we only examine courses when a student is interested in taking them.  Once that is done, this is the repository for pre-approved eligible course equivalences and pre-approval.  If you are interested in taking a course that is not listed at either of the schools, please send that information to the Director of Undergraduate Studies and we will evaluate the course as quickly as possible.  (Note that an elective on this chart means that it does count toward the major.)

We limit the number of courses that may be transferred in for major credit to 2 courses.  The reason for this limitation is to encourage the student to explore other areas while they are abroad and to assure that you get a breadth of computer science from our department.  We want more than half or your elective courses to be taken from our department.

We also will no longer give transfer credit for COMP 283, 401, 410 and 411 from these or any other study abroad programs.  This is not because the courses at other universities are inadequate, but because we want students to focus on courses that are not offered here and taking the basic courses here assures that you have the specific topics that we assume in later courses.

National University of Singapore

NUS Module UNC Course
CS1231: Discrete Structures none
CS2010: Data Structures and Algorithms II none
CS2102: Database Systems COMP 521
CS2103: Software Engineering COMP 523
CS2104: Programming Language Concepts COMP 524
CS 2105: Introduction to Computer Networks COMP 431
CS2106: Introduction to Operating Systems COMP 530
CS2107: Introduction to Security COMP 475
CS3230: Design and Analysis of Algorithms COMP 550
CS3235: Computer Security elective
CS3240: Interaction Design none
CS3241: Computer Graphics COMP 575
CS3243: Introduction to Artificial Intelligence none
CS3244: Machine Learning elective

University College London

UCL Module UNC Course
COMP105P – RObotics Programming none
COMP2007 – Networking & Concurrency elective
COMP203P – Software Engineering and HCI none
COMP207P – Compilers COMP 520
COMP209P– Cognitive Systems & Intelligent Technologies COMP 560
COMP3004 – Computational Complexity elective
COMP3005 – Operating Systems COMP 530
COMP3011 – Functional Programming none
COMP3035 – Networked Systems elective
COMP3058 – Artificial Intelligence and Neural Computing elective
COMP3080 – Computer Graphics elective
COMPGA03 – Introduction to Cryptography COMP 655
COMPM034 – Multimedia Systems elective


You will be given credit for the course as listed above and that will meet any requirements that the UNC course has, including major requirements and prerequisites.