Our undergraduate courses and programmes

Stage one Computer Science courses

Course code Course title Semester offered Course coordinator
COMPSCI 101 Principles of Programming Summer school, S1, S2 Ann Cameron
COMPSCI 110 Introduction to Computer Systems Summer school, S2 Damir Azhar
COMPSCI 110 Introduction to Computer Systems S1 Robert Sheehan
COMPSCI 111 An Introduction to Practical Computing S1/S2 Ann Cameron
COMPSCI 111G An Introduction to Practical Computing (General Education) S1/S2 Ann Cameron
COMPSCI 120 Mathematics for Computer Science Summer school Sudeep Stephen
COMPSCI 130 Introduction to Software Fundamentals Summer school, S1, S2 Angela Chang

We also encourage you to consider the course PHYSICS 140 Digital Fundamentals, which is a prerequisite for COMPSCI 215, 313, 315 or 316.

Stage two Computer Science courses

Course code Course title Semester offered Course coordinator
COMPSCI 210 Computer Organisation S1 Shyamli Sindhwani
COMPSCI 210 Computer Organisation S2 Simone Linz
COMPSCI 215 Data Communications and Security S1 Ulrich Speidel
COMPSCI 220 Algorithms and Data Structures S1 David Welch
COMPSCI 220 Algorithms and Data Structures S2 Michael Dinneen
COMPSCI 225 Discrete Structures in Mathematics and Computer Science S1, S2 Eamonn O'Brien
COMPSCI 230 Object Oriented Software Development S1 Angela Chang
COMPSCI 230 Object Oriented Software Development S2 Paramvir Singh
COMPSCI 235 Software Development Methodologies S2 Shyamli Sindhwani
COMPSCI 289 Research Seminar in Computer Science S2 Matthew Egbert

You may also consider taking the course COMMS 208 Digital Communications Ethics as part of your Computer Science degree.

Stage three Computer Science courses

Course code Course title Semester offered Course coordinator
COMPSCI 313 Computer Architecture S2 Bruce Sham
COMPSCI 315 Data Communications Technologies S2 Ulrich Speidel
COMPSCI 316 Cyber Security S2 Nalin Arachchilage
COMPSCI 320 Applied Algorithmics S2 Michael Dinneen
COMPSCI 331 Large-Scale Software Development S1 Paramvir Singh
COMPSCI 335 Functional Programming and Distributed Services S2 S Manoharan
COMPSCI 340 Operating Systems S2 Shyamli Sindhwani
COMPSCI 345 Human-computer Interaction S1 Danielle Lottridge
COMPSCI 350 Mathematical Foundations of Computer Science S1 Cris Calude
COMPSCI 351 Fundamentals of Database Systems S1 Gerald Weber
COMPSCI 361 Machine Learning S1 Thomas Lacombe
COMPSCI 367 Artificial Intelligence S2 Anna Trofimova
COMPSCI 369 Computational Biology S1 Matthew Egbert
COMPSCI 373 Computer Graphics and Image Processing S1 Burkhard Wuensche
COMPSCI 389 Research Methods in Computer Science S2 Rajko Nenadov
COMPSCI 399 Capstone: Computer Science S1, S2 Asma Shakil

Choosing your Computer Science courses