BSc Computer Science (G400)
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 to gain the necessary knowledge, whilst our final year 20 credit modules are optional (except the 40 credit Final Year Project).
** The exception to this is for students without Grade A in A Level Computing, who will be required to take a 20 credit Concepts of Computer Science module in Year 1, in place of the 20 credits of Widening Horizons Modules available.
Year 1 (120 credits) - compulsory
|Data Structures and Algorithms||20||Yes|
|Logic and Computation||20||Yes|
|Mathematical Foundations of Computer Science||20||Yes|
|Programming in Java||20||Yes|
|Widening Horizons Module||20|||
|Concepts of Computer Science||20|||
: Compulsory for those with Grade A in A Level Computing
: Compulsory for those without Grade A in A Level Computing (in place of 20 credits of Widening Horizons module).
Year 2 (120 credits) - compulsory
|Advanced Functional Programming||20||Yes|
|Mathematical Modelling and Decision Making||20||Yes|
|Security and Networks||20||Yes|
|Systems Programming in C/C++||20||Yes|
Year 3 (120 credits) - optional (plus compulsory project)
With the exception of the compulsory 40 credit Computer Science project *, you are able to choose from a wide range of optional 20 credit modules in your third year, depending on your area of interest.
|Complex Adaptive Systems||20||Yes|
|Computer Science Project *||40||No|
|Computer Vision and Imaging||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|