School of Computer Science

BSc Computer Science with Study Abroad (I10A)

Our new curriculum has been designed to allow us to provide an in depth computer science education, but also give you the chance to really delve deeper into subjects of interest in your final year. Our first and second year 20 credit modules are all compulsory to allow you gain the neccesary knowledge, whilst our final year 20 credit modules are optional (with the exception of the 40 credit Final Year Project). You will spend your penultimate year studying abroad, before you return to complete your degree with us.

Year 1 (120 credits) - compulsory

All modules in Year 1 are compulsory. You will be required to take either the Fundamentals of Programming in Java module, or the Widening Horizons module (depending on whether you hold Grade A in A Level Computing).

Module Title Credits Compulsory
Artificial Intelligence 20 Yes
Data Structures and Algorithms 20 Yes
Logic and Computation 20 Yes
Mathematical Foundations of Computer Science 20 Yes
Programming in Java 20 Yes
Fundamentals of Programming in Java 20 [1]
Widening Horizons Module 20 [2]

[1]: Compulsory for those without Grade A in A Level Computing
[2]: Compulsory for those with Grade A in A Level Computing

Year 2 (120 credits) - compulsory

All modules in Year 2 are compulsory.

Module Title Credits Compulsory
Advanced Functional Programming 20 Yes
Mathematical Modelling and Decision Making 20 Yes
Security and Networks 20 Yes
Software Engineering 20 Yes
Systems Programming in C/C++ 20 Yes
Team Project 20 Yes

Year 3

Your third year will be spent studying abroad, before returning for your final year.

Year 4 (120 credits) - optional (plus compulsory project)

With the exception of the compulsory 40 credit Computer Science project (*), you are able to choose from a range of optional 20 credit modules in your final year, depending on your area of interest.

Module Title Credits Optional
Advanced Networking 20 Yes
Complex Adaptive Systems 20 Yes
Computer Graphics 20 Yes
Computer Science Project 40 No *
Computer Vision and Imaging 20 Yes
Computer-Aided Verification 20 Yes
Human-Computer Interaction 20 Yes
Individual Study 20 Yes
Intelligent Robotics 20 Yes
Language and Cognition 20 Yes
Machine Learning and Intelligent Data Analysis 20 Yes
Programming Language Principles, Design, and Implementation 20 Yes
Security of Real-World Systems 20 Yes
Teaching Computing in Schools 20 Yes
Theoretical Foundations for Security 20 Yes