On this page you’ll find the most up-to-date list of Computer Science Electives for Software Engineering approved for the current (or upcoming) term(s).

Engineering students are advised to wait until approved lists are posted before you select an elective. Approved electives vary term to term.

COMP 3002 Compiler Construction
COMP 3008 Human-Computer Interaction
COMP 3400 Computational Logic and Automated Reasoning
COMP 3501 Foundations of Game Programming and Computer Graphics
COMP 3801 Algorithms for Modern Data Sets
COMP 3803 Introduction to Theory of Computation
COMP 3804 Design and Analysis of Algorithms I
COMP 4000 Distributed Operating Systems
COMP 4002 Real-Time 3D Game Engines
COMP 4003 Transaction Processing Systems
COMP 4009 Programming for Clusters and Multi-Core Processors
COMP 4102 Computer Vision
COMP 4106 Artificial Intelligence
COMP 4109 Applied Cryptography
COMP 4111 Data Management for Business Intelligence
Or SYSC at the 5000-level (departmental permission).

This list is also included in the Undergraduate Calendar -> Engineering programs -> Software Engineering.