UCAS Code G400

Andy Lecturing

This is a three-year programme designed to teach you a wide range of aspects of Computer Science. In the first year (level 1) you will learn how to program (in Java), study how computers work, be introduced to Software Engineering, and learn about the fundamental mathematics and theory of Computer Science. Level 1 is common for our BSc in Computer Science, BSc in Software Engineering and MEng in Computing. This is mainly because students studying these subjects need to know the same fundamental things. It is possible to switch between degrees.

In the second year (level 2) you will learn about operating systems and networking, computer graphics, databases, compilers, advanced and specialised programming programming, specification, and some of the more advanced theoretical aspects of Computer Science. You will develop your programming skills (in C and Java), and have the opportunity to attempt advanced tasks, both individually and in groups.

In the final year (level 3), you will undertake a large project, accounting for 25% of the credit for the year, and study a selection of our advanced option modules. These vary from year to year, but currently include modules on graphics, advanced programming, human-computer interaction, the internet, artificial intelligence, concurrent systems, hardware and theory.

The BSc in Computer Science is accredited by the British Computer Society, and provides exemption from their membership exams.

Programme Content

Level 1

Semester 1

  • CS-110 Programming 1
  • CS-130 Professional Issues 1
  • CS-150 Concepts of Computer Science 1
  • CS-170 Modelling Computer Systems 1

Semester 2

  • CS-115 Programming 2
  • CS-135 Professional Issues 2
  • CS-155 Concepts of Computer Science 2
  • CS-175 Modelling Computer Systems 2

Level 2

Semester 1

  • CS-210 Concurrency
  • CS-230 Software Engineering 1
  • CS-250 Databases Systems 1
  • CS-270 Algorithms

Semester 2

  • CS-205 Declarative Programming
  • CS-235 Software Engineering 2
  • CS-255 Computer Graphics 1
  • CS-275 Automata and Formal Language Theory

Level 3


  • CS-344 Project Implementation and Dissertation
  • CS-354 Project Specification and Development

and 80 credits chosen from:

  • CS-306 Writing Mobile Apps
  • CS-307 Computer Graphics II: Modelling and Rendering
  • CS-311 Concepts of Programming Languages
  • CS-313 High Integrity Systems
  • CS-318 Cryptography and IT Security
  • CS-337 Data Visualisation
  • CS-338 Internet Computing
  • CS-345 Artificial Intelligence Applications
  • CS-348 Building Reliable Web Applications
  • CS-349 Mobile Interaction Design
  • CS-358 High Performance Computing in C/C++
  • CS-364 Software Testing
  • CS-368 Embedded Systems
  • CS-371 Design Patterns and Generic Programming
  • CS-375 Logic for Computer Science
  • CS-377 Computer Vision and Pattern Recognition.
  • CS-390 Teaching Computing via a School Placement.