• The BSc in Computer Science provides a thorough grounding in the fundamentals of computer science combined with opportunities to specialize in a range of advanced areas. 
  • The core ideas are introduced in years one and two. Students will learn the principles of algorithms and programming, covering three key paradigms:
    • Imperative
    • Functional
    • Object-oriented
  • Students will also study mathematics and statistics underpinning modern computer science; how a modern computer architecture is organized; concurrent systems and networks; and foundations of human-computer interaction, cybersecurity, and theoretical and data-driven computer science.
  • A key component of year two is the software team project in which students work with others to develop an application for a real-world client with help from an industrial mentor.
  • In the final year, students will choose from a range of optional units in order to specialize in selected advanced areas of computer science. Students will also undertake an individual project, co-created with a supervising member of staff, with opportunities to work with industrial and research partners.