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 | Gerald Weber |
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
- Read about Computer Science study options.
- For help with your undergraduate programme contact an academic adviser.
- Find timetable information at Student Services Online.
- Download a Faculty of Science prospectus.