Computer Science within Natural Sciences 2024-2025

This pages is primarily intended for existing students. It consists of modules available to Natural Sciences students, Joint-Honours regulations and general advice (which includes links to Departmental advice.)

The following lists the module code and the title of each module by the level of each module - clicking on the link will take you to further details listed in the Faculty Handbook.

The last digit of the module code indicates whether the module is single, double or triple. The level indicates the year in which modules are normally taken, but it is often the case that students take modules from the adjacent level beneath the year of study. Visit the Subjects page for the general overarching rules and structure.

Please note that the modules on offer and the requirements for progression can change from year to year and that the only combinations of modules that are guaranteed to fit in the timetable are those splits between the two departments on an approved Joint Honours route (MSci and BSc).

Within Natural Sciences, Computer Science has BSc Joint-Honours programmes with: Business; Mathematics; Physics. There are also the following MSci Joint-Honours programmes with: Mathematics.

In BSc students' final year, they are required to take no less than 20 credits and no more than 60 credits of Capstone Modules. MSci student students are not required to take a capstone module, but rather take a Dissertation/Project in Year 4. Dissertation/Project/Capstone modules are denoted with G

Computer Science modules available to Natural Sciences students

Level 1 modules

Mathematics For Computer Science (COMP1021)
Computational Thinking (COMP1051)
Computer Systems (COMP1071)
Algorithms And Data Structures (COMP1081)
Programming (black) (COMP1101)
Programming (gold) (COMP1111)

Level 2 modules

Theory Of Computation (COMP2181)
Networks And Systems (COMP2211)
Programming Paradigms (COMP2221)
Artificial Intelligence (COMP2261)
Data Science (COMP2271)
Software Engineering (COMP2281)

Level 3 modules

Computer Science ProjectG (COMP3012)
Computer Science Into SchoolsG (COMP3421)
Algorithmic Game Theory (Term 1) (COMP3477)
Bioinformatics (Term 2) (COMP3487)
Computational Complexity (Term 1) (COMP3507)
Computational Modelling In The Humanities And Socialsciences (Term 1) (COMP3517)
Computer Vision (Term 2) (COMP3527)
Deep Learning (Term 1) (COMP3547)
Design Of Algorithms And Data Structures (Term 2) (COMP3557)
Project Management (COMP3587)
Project Preparation (COMP3591)
Recommender Systems (Term 2) (COMP3607)
Compiler Design (Term 2) (COMP3637)
Human-ai Interaction Design (Term 1) (COMP3647)
Reinforcement Learning (Term 2) (COMP3667)
Natural Computing Algorithms (Term 1) (COMP3677)
Introduction To Music Computing (COMP3721)
Cryptography (COMP3731)
Parallel Scientific Computing (COMP3741)
Interactive Media, Gaming And Vr/ar Technologies (COMP3751)
Science EnterpriseG (NSCI3001)

Level 4 modules

Advanced ProjectG (COMP4013)
Advanced Algorithms (Term 2) (COMP4087)
Advanced Computer Graphics And Visualisation (Term 2) (COMP4097)
Advanced Computer Vision (Term 1) (COMP4107)
Quantum Computing (Term 2) (COMP4117)
Blockchain And Cryptocurrencies (Term 1) (COMP4137)
Natural Language Processing (Term 1) (COMP4167)
Networks And Their Structure (Term 1) (COMP4177)
Randomised Algorithms And Probabilistic Methods (Term 1) (COMP4197)
Coding And Information Theory (Term 1) (COMP4207)
Applied Cryptography (Term 2) (COMP4217)
Advanced Music Computing (COMP4221)
Distributed Network Computing And Algorithms (Term 2) (COMP4227)
Data Compression And Coding Theory (COMP4231)

Requirements for Joint Honours (BSc and MSci Programmes)

Please note that these requirements are just for the B.Sc. degrees and the M.Sci. in Natural Sciences, requirements for the JH M.Sci. degrees involving Computer Science are detailed elsewhere.

There are 3 routes within Computer Science: Computer Science and Physics route, Computer Science and Maths route and Business and Computer Science route.
Business and Computer Science
Year 1

60 credits: Computational Thinking (COMP1051), Mathematics For Computer Science (COMP1021) and 20 credits from the Level 1 Computer Science List.

Year 2

60 credits: Modules taken from the Level 2 Computer Science list.

Year 3

40 credits: Modules taken from the Level 3 Computer Science list.

Computer Science and Maths
Year 1

60 credits: Computational Thinking (COMP1051), Algorithms And Data Structures (COMP1081) and 20 credits from: Computer Systems (COMP1071); Programming (black) (COMP1101); Programming (gold) (COMP1111).

Year 2

60 credits: Modules taken from the Level 2 Computer Science list.

Year 3

40 credits: Modules taken from the Level 3 Computer Science list.

Computer Science and Physics
Year 1

40 credits: Computational Thinking (COMP1051) and (EITHER Algorithms And Data Structures (COMP1081) OR Computer Systems (COMP1071)).

Year 2

60 credits: Modules taken from the Level 2 Computer Science list.

Year 3

40 credits: Modules taken from the Level 3 Computer Science list.

Advice for progression and other aspects

Department advice: Additional advice directly from Computer Science
Natural Sciences advice
Year 1

Taking Computational Thinking (COMP1051) is essential. Taking one of the options EITHER Mathematics For Computer Science (COMP1021) OR (Single Mathematics A (MATH1561) and Single Mathematics B (MATH1571)) OR (Calculus I (MATH1061) and Linear Algebra I (MATH1071)) opens up the Computer Science core modules. Finally any of: Algorithms And Data Structures (COMP1081); Computer Systems (COMP1071); Programming (black) (COMP1101); Programming (gold) (COMP1111); opens up an additional specific pathway.
Progression from: COMP1051; COMP1021; COMP1081; COMP1071; COMP1101; COMP1111; MATH1561; MATH1571; MATH1061; MATH1071.

For more information about the Natural Sciences degree programme, please contact:

Prof James Blowey
Deputy Head of Faculty
Faculty of Science Office
Level 3 Chemistry Building
Durham University
DH1 3LE
UK

Email: Natural Sciences Director

WWW: Natural Sciences home page

The Natural Sciences web pages are maintained by James Blowey