The modules offered in each year are listed below.
Year One
Academic year 25-26
Core
Autumn
- 40001 Introduction to Computer Systems
- 40007 Introduction to Databases
- 40016 Calculus
- COMPM0101 Introduction to DoC Systems
Autumn and Spring
Autumn, Spring and Summer
Spring
Unknown Term
Extracurricular
Autumn, Spring and Summer
- COMPM0193 Additional Tuition
- COMPM0701 Programming Competition Training
- COMPM0804 Student Support and Wellbeing
Year Two
Academic year 25-26
Compulsory
Autumn
- 50001 Algorithm Design and Analysis
- 50002 Software Engineering Design
- 50004 Operating Systems
- 50008 Probability and Statistics
Autumn and Spring
Spring
- 50003 Models of Computation
- 50005 Networks and Communications
- 50007.2 Computing Practical 2 (Intro to Compilers)
- 50013 Machine Learning
Spring and Summer
Summer
Elective - Choose 1 ECTS (should be equivalent to 0 modules)
Spring
Extracurricular
Autumn
Autumn, Spring and Summer
Year Three
Academic year 25-26
Core
Autumn, Spring and Summer
Elective - Choose from 30 to 35 ECTS (should be equivalent to 6 to 7 modules) from the following list
Autumn
- 60001 Advanced Computer Architecture
- 60007 The Theory and Practice of Concurrent Programming
- 60012 Introduction to Machine Learning
- 60016 Operations Research
- 60023 Type Systems for Programming Languages
- 60029 Data Processing Systems
- 60032 Networked Systems
- 60033 Computing Research Collective
- 60037 Mathematics for Machine Learning
Spring
- 60003 Communicating Computer Science in Schools
- 60005 Graphics
- 60006 Computer Vision
- 60008 Custom Computing
- 60013 Logic-Based Learning
- 60015 Network and Web Security
- 60017 System Performance Engineering
- 60019 Robotics
- 60021 Year 3 Software Engineering Group Project
- 60034 Deep Learning
- 60035 Natural Language Processing
Compulsory - Choose from 5 to 7.5 ECTS (should be equivalent to 1 module) from the following list
Autumn and Spring
Spring
- 60024 Researching Academic Integrity in an Artificial Intelligence Driven World
- 60028 Demystifying Machine Learning: Theory and Applications