Introduction

Many of the key computing processes and operations such as programming and data analysis are founded on the study and understanding of mathematical disciplines such as algorithms. This degree is ideal for students who have a strong interest and skill in mathematics but want to understand the applied nature of it to the computing science industry. This is an excellent combination of degrees which would open up a range of career opportunities.

This programme is studied on campus.

This degree programme explores the very close relationship between computing science and mathematics.

Key core courses include; Calculus, Computer Architecture, Programming, Linear Algebra, Software Engineering and Algorithms, to name a few. These courses are complemented with a range of optional courses, such as; Knowledge Based Systems, Systems and Security, Operating Systems and Enterprise Computing. Through course choices you can also choose to advance your knowledge in specific areas, such as Algebra.

Degree marketing image

Key Programme Information

At a Glance

Learning Mode
On Campus Learning
Degree Qualification
BSc
Duration
48 months
Study Mode
Full Time
Start Month
September
UCAS Code
GGK1

What You'll Study

Year 1

Year 1

Compulsory Courses

Computer Programming and Principles (CS1022) - 15 Credit Points

Students will be exposed to the basic principles of computer programming, e.g. fundamental programming concepts, algorithms, and maths (e.g. logic, set theory, graphs). The course consists of lectures where the principles are systematically developed; as the course does not presuppose knowledge of these principles, we start from basic intuitions. In addition to the lectures, there will be weekly practicals to work with the concepts. Understanding the principles behind computer programming gives one the framework to learn new programming concepts, adapt to changing circumstances, and engage in theoretical research in Computing Science.

View detailed information about this course

Algebra (MA1006) - 15 Credit Points

This course introduces the concepts of complex numbers, matrices and other basic notions of linear algebra over the real and complex numbers. This provides the necessary mathematical background for further study in mathematics, physics, computing science, chemistry and engineering.

View detailed information about this course

Calculus i (MA1005) - 15 Credit Points

Calculus is the mathematical study of change, and is used in many areas of mathematics, science, and the commercial world. This course covers differentiation, limits, finding maximum and minimum values, and continuity. There may well be some overlap with school mathematics, but the course is brisk and will go a long way quickly.

View detailed information about this course

Computer Architecture (CS1520) - 15 Credit Points

Beginning with digital logic gates and progressing to the design of combinational and sequential circuits, this course use these fundamental building blocks as the basis for what follows: the design of an actual MIPS microprocessor. In addition, students will get hands on experience on programming Intel 8086 assembly language which is the inner language spoken by the processor. By the end of the course, students will have a top-to-down understanding of how a micropressor works. The course is taught without prerequisites; students are taught with plenty of exercises from lectures, tutorials, practical and tests every week.

View detailed information about this course

Calculus II (MA1508) - 15 Credit Points

The aim of the course is to provide an introduction to Integral Calculus and the theory of sequences and series, to discuss their applications to the theory of functions, and to give an introduction to the theory of functions of several variables.

This provides the necessary mathematical background for further study in mathematics, physics, computing science, chemistry and engineering.

View detailed information about this course

Set Theory (MA1511) - 15 Credit Points

Set theory was introduced by Cantor in 1872, who was attempting to understand the concept of "infinity" which defied the mathematical world since the Greeks. Set Theory is fundamental to modern mathematics - any mathematical theory must be formulated within the framework of set theory, or else it is deemed invalid. It is the alphabet of mathematics.

In this course we will study naive set theory. Fundamental object such as the natural numbers and the real numbers will be constructed. Structures such as partial orders and functions will be studied. And of course, we will explore infinite sets.

View detailed information about this course

Professional Skills Part 1 (PD1001)

This course, which is prescribed for level 1 students and optional for level 2 students, is studied entirely online and covers topics relating to careers and employability, equality and diversity and health, safety and wellbeing. During the course you will learn about the Aberdeen Graduate Attributes, how they are relevant to you and the opportunities available to develop your skills and attributes alongside your University studies. You will also gain an understanding of equality and diversity and health, safety and wellbeing issues. Successful completion of this course will be recorded on your Enhanced Transcript as ‘Achieved’ (non-completion will be recorded as ‘Not Achieved’). The course takes approximately 3 hours to complete and can be taken in one sitting, or spread across a number of weeks and it will be available to you throughout the academic year.This course, which is prescribed for level 1 students and optional for level 2 students and above, is studied entirely online and covers topics relating to careers and employability, equality and diversity and health, safety and wellbeing. During the course you will learn about the Aberdeen Graduate Attributes, how they are relevant to you and the opportunities available to develop your skills and attributes alongside your University studies. You will also gain an understanding of equality and diversity and health, safety and wellbeing issues. Successful completion of this course will be recorded on your Enhanced Transcript as ‘Achieved’ (non-completion will be recorded as ‘Not Achieved’). The course takes approximately 3 hours to complete and can be taken in one sitting, or spread across a number of weeks and it will be available to you throughout the academic year

View detailed information about this course

Optional Courses

Select at least one of the following

  • Web Application Development (CS1025)
  • Grand Challenges of Computing and Artificial Intelligence (CS1024)
  • Web Technology (CS1522)
  • Object-Oriented Programming (CS1527)

Plus, select further credit points from courses of choice to a total of 120 credits

Web Application Development (CS1025) - 15 Credit Points

This course will introduce you to programming and software development for the Web using the object-oriented scripting language Ruby. It will teach you how to develop software that underpins database-driven interactive Web and cloud applications, and give you a broad knowledge of the basics needed for professional software development such as testing and version control. The course uses examples based on real world applications. You will also learn a limited range of core theoretical concepts such as structured programming, variable declaration, conditional statements, iterative constructs, object-oriented programming and meta-programming.

View detailed information about this course

Grand Challenges of Computing and Artificial Intelligence (CS1024) - 15 Credit Points

This course is aimed at people who want to learn the basics about the major problems that need to be solved to enable computers to be more useful companions in our daily lives, e.g. to get them to be able to understand our normal speech when we talk to them, or to be able to see and recognise the important objects in the world, or to be able to act as a helper in the home, like a robotic maid that could cook and clean.

View detailed information about this course

Web Technology (CS1522) - 15 Credit Points

This course will be of interest to anyone who wishes to develop a Web presence. It will touch on several of the fundamental technologies associated with the Web and will give you the opportunity to build an interactive Website with the knowledge gleaned. In addition to developing a broad knowledge of the principles associated with good Web design and Website management and accessibility, you will enhance your understanding of a limited range of core technologies including XHTML, CSS, JavaScript, DOM and PHP.

View detailed information about this course

Object Oriented Programming (CS1527) - 15 Credit Points

This course builds on the basic programming knowledge already acquired in the first half-session and gears students up for going on to a career involving programming. It serves as a bridge between the basic introductory programming, and the full fledged software engineering that students will undertake in their level 3 software engineering project.

The emphasis here is on “quality programming in the small”, through various mini projects.

View detailed information about this course

Year 2

Year 2

Compulsory Courses

Mathematics for Computing Science (CS2013) - 15 Credit Points

This course provides a basic-level introduction to some areas of Discrete Mathematics that are of particular relevance to Computing. The course starts with a simple introduction to formal languages (starting from Regular Expressions and Finite-State Automata); it continues with an introduction to Predicate Logic (assuming basic familiarity with Propositional Logic); it concludes with an introduction to probability, focussing on Bayesian reasoning.

View detailed information about this course

Data Management (CS2015) - 15 Credit Points

This course will be of interest to anyone who wishes to learn to design and query databases using MSAccess, MySQL and MongoDB. The course aims to teach the material using case studies from real-world applications both in lectures and lab classes. You will develop a broad knowledge about database connectivity using JDBC, PHP and Ruby. You will also learn core theoretical concepts such as relational algebra, file organisation and indexing. At the end of this course you will be able to design and build Web and cloud-based databases and have a broad awareness and understanding of how database-driven applications operate.

View detailed information about this course

Linear Algebra i (MA2008) - 15 Credit Points

Linear algebra is the study of vector spaces and linear maps between them and it is a central subject within mathematics.

It provides foundations for almost all branches of mathematics and sciences in general. The techniques are used in engineering, physics, computer science, economics and others. For example, special relativity and quantum mechanics are formulated within the framework of linear algebra.

The two courses Linear Algebra I and II aim at providing a solid foundation of the subject.

View detailed information about this course

Analysis i (MA2009) - 15 Credit Points

Analysis provides the rigourous, foundational underpinnings of calculus. It is centred around the notion of limits: convergence within the real numbers. Related ideas, such as infinite sums (a.k.a. series), continuity, and differentiation, are also visited in this course. Care is needed to properly use the delicate formal concept of limits. At the same time, limits are often intuitive, and we aim to reconcile this intuition with correct mathematical reasoning. The emphasis throughout this course is on rigourous mathematical proofs, valid reasoning, and the avoidance of fallacious arguments.

View detailed information about this course

Modern Programming Languages (CS2510) - 15 Credit Points

This course will introduce the fundamental features of modern programming languages and to equip students with necessary skills for the critical evaluation of existing and future programming languages. Additionally, students study the formal representation of syntax and semantics of programming languages, as well as mechanisms for the lexical and syntactic analysis of programs. Students will be exposed to programming languages from three specific paradigms, namely, object-oriented, functional and logic programming.

View detailed information about this course

Algorithmic Problem Solving (CS2521) - 15 Credit Points

This course provides the knowledge needed to understand, design and compare algorithms. By the end of the course, a student should be able to create or adapt algorithms to solve problems, determine an algorithm's efficiency, and be able to implement it. The course also introduces the student to a variety of widely used algorithms and algorithm creation techniques, applicable to a range of domains. The course will introduce students to concepts such as pseudo-code and computational complexity, and make use of proof techniques as well as the student’s programming skills.

View detailed information about this course

Analysis II (MA2509) - 15 Credit Points

Analysis provides the rigourous, foundational underpinnings of calculus. This course builds on the foundations in Analysis I, and explores the notions of Riemann integrability, Cauchy sequences, sequences of functions, and power series. The techniques of careful rigourous argument seen in Analysis I will be further developed. Such techniques will be applied to solve problems that would otherwise be inaccessible. As in Analysis I, the emphasis of this course is on valid mathematical proofs and correct reasoning.

View detailed information about this course

Linear Algebra II (MA2508) - 15 Credit Points

Linear algebra is the study of vector spaces and linear maps between them and it is a central subject within mathematics.

It provides foundations for almost all branches of mathematics and sciences in general. The techniques are used in engineering, physics, computer science, economics and others. For example, special relativity and quantum mechanics are formulated within the framework of linear algebra.

The two courses Linear Algebra I and II aim at providing a solid foundation of the subject.

View detailed information about this course

Year 3

Year 3

Compulsory Courses

Principles of Software Engineering (CS3028) - 15 Credit Points

Students will develop large commercial and industrial software systems as a team-based effort that puts technical quality at centre stage. The module will focus on the early stage of software development, encompassing team building, requirements specification, architectural and detailed design, and software construction. Groupwork (where each team of students will develop a system selected using a business planning exercise) will guide the software engineering learning process. Teams will be encouraged to have an active, agile approach to problem solving through the guided study, evaluation and integration of practically relevant software engineering concepts, methods, and tools.

View detailed information about this course

Group Theory (MX3020) - 15 Credit Points

Group theory concerns the study of symmetry. The course begins with the group axioms, which provide an abstract setting for the study of symmetry. We proceed to study subgroups, normal subgroups, and group actions in various guises. Group homomorphisms are introduced and the related isomorphism theorems are proved. Composition series are introduced and the Jordan-Holder theorem is proved. Sylow p-subgroups are introduced and the three Sylow theorems are proved. Throughout symmetric groups are consulted as a source of examples.

View detailed information about this course

Analysis Iii (MX3035) - 15 Credit Points

Analysis provides the rigourous, foundational underpinnings of calculus. The focus of this course is multivariable analysis, building on the single-variable theory from MA2009 Analysis I and MA2509 Analysis II. Concepts and results around multivariable differentiation are comprehensively established, laying the ground for multivariable integration in MX3535 Analysis IV. As in Analysis I and II, abstract reasoning and proof-authoring are key skills emphasised in this course.

View detailed information about this course

Software Engineering and Professional Practice (CS3528) - 15 Credit Points

In this module, which is the follow-up of CS3028, student will focus on the team-based development of a previously specified, designed, and concept-proofed software system. Each team will build their product to industrial-strength quality standards following an agile process and applying the software engineering concepts, methods, and tools introduced in CS3028. The individual learning and practical experience acquisition process will be integrated by talks and seminars given by industrial stakeholders on topics of software engineering relevance, by guided student focus on professional issues, and by student presentations on selected technical topics.

View detailed information about this course

Analysis Iv (MX3535) - 15 Credit Points

Analysis provides the rigourous, foundational underpinnings of calculus. This course builds on MX3035 Analysis III, continuing the development of multivariable calculus, with a focus on multivariable integration. Hilbert spaces (infinite dimensional Euclidean spaces) are also introduced. Students will see the benefit of having acquired the formal reasoning skills developed in Analysis I, II, and III, as it enables them to work with increasingly abstract concepts and deep results. Techniques of rigourous argumentation continue to be a prominent part of the course.

View detailed information about this course

Optional Courses

Select one of the following

  • Rings and Fields (MX3531)
  • Differential Equations (MX3536)

Select one of the following

  • Knowledge-Based Systems (CS3025)
  • Operating Systems (CS3026)

Select one of the following

  • Languages and Computability (CS3518)
  • Distributed Systems and Security (CS3524)
  • Enterprise Computing and Business (CS3525)
Knowledge Based Systems (CS3025) - 15 Credit Points

Knowledge Representation (KR) is concerned with how knowledge can be represented symbolically and manipulated in an automated way by reasoning programs. In fact, KR has long been considered central to AI because it is a significant factor in determining the success of knowledge-based systems.

This course describes the formalisation of knowledge and its use in knowledge-based systems. It follows the whole "life-cycle" of knowledge, from the initial identification of relevant expertise, through its capture, representation (in ontology and /or rule languages), use (based on reasoning), evaluation, and reuse.

View detailed information about this course

Operating Systems (CS3026) - 15 Credit Points

This course discusses core concepts and architectures of operating systems, in particular the management of processes, memory and storage structures. Students will learn about the scheduling and operation of processes and threads, problems of concurrency and means to avoid race conditions and deadlock situations. The course will discuss virtual memory management, file systems and issues of security and recovery. In weekly practical session, students will gain a deeper understanding of operating system concepts with verious programming exercises.

View detailed information about this course

Languages and Computability (CS3518) - 15 Credit Points

This course provides a basic-level introduction to computability via the notion of a Turing Machine. Some familiarity with imperative programming (e.g., in JAVA) and with the basics of set theory (e.g., the notion of a bijection) is assumed. The Functional language Haskell (familiar from earlier courses, including CS2013) is used to explore the concepts of infinity, recognisability and decidability, which are crucial to computability.

View detailed information about this course

Distributed Systems and Security (CS3524) - 15 Credit Points

This course discusses core concepts of distributed systems, such as programming with distributed objects, multiple threads of control, multi-tire client-server systems, transactions and concurrency control, distributed transactions and commit protocols, and fault-tolerant systems. The course also discusses aspects of security, such as cryptography, authentication, digital signatures and certificates, SSL etc. Weekly practical sessions cover a set of techniques for the implementation of distributed system concepts such as programming with remote object invocation, thread management and socket communication.

View detailed information about this course

Enterprise Computing and Business (CS3525) - 15 Credit Points

This course provides insight into the business reasons for large software systems such as loyalty card systems, backend systems integrating firms and their suppliers and larges systems that integrate payroll, finance and operational parts of a business. You also learn the entrepreneurial aspects of business during the practical sessions where you explore and develop your own business application idea using service design and lean startup approaches centred around customer development, which you will find useful in any future work. This course is open to anyone across the university and requires no programming experience.

View detailed information about this course

Rings and Fields (MX3531) - 15 Credit Points

Many examples of rings will be familiar before entering this course. Examples include the integers modulo n, the complex numbers and n-by-n matrices with real entries. The course develops from the fundamental definition of ring to study particular classes of rings and how they relate to each other. We also encounter generalisations of familiar concepts, such as what is means for a polynomial to be prime.

View detailed information about this course

Differential Equations (MX3536) - 15 Credit Points

Differential equations play a prominent role in many disciplines including engineering, physics, economics, and biology. In this course we will study the concept of a differentialk equation systematically from a purely mathematical viewpoint. Such abstraction is fundamental to the understanding of this concept.

View detailed information about this course

Year 4

Year 4

Compulsory Courses

Galois Theory (MX4082) - 15 Credit Points

Galois theory is based around a simple but ingenious idea: that we can study field extensions by instead studying the structure of certain groups associated to them. This idea can be employed to solve some problems which confounded mathematicians for centuries, including the impossibility of trisecting an angle with ruler and compass alone, and the insolubility of the general quintic equation.

View detailed information about this course

Joint Honours Computing Project (CS4525) - 30 Credit Points

Consists of a supervised project which provides experience of investigating a real problem in computing science, or a computing application/technology. Presenting the results obtained is an integral part of the investigation.

View detailed information about this course

Optional Courses

  • Select 45 credit points from Level 4 Mathematics (MX) courses
  • Select 30 credit points from Level 4 Computing Science courses
  • Ensure a minimum of 90 credit points from level 4 courses for Honours programme

Course Availability

We will endeavour to make all course options available; however, these may be subject to timetabling and other constraints. Please see our InfoHub pages for further information.

How You'll Study

Learning Methods

  • Group Projects
  • Individual Projects
  • Lectures
  • Research
  • Seminars
  • Tutorials

Assessment Methods

Students are assessed by any combination of three assessment methods:

  • coursework such as essays and reports completed throughout the course;
  • practical assessments of the skills and competencies learnt on the course; and
  • written examinations at the end of each course.

The exact mix of these methods differs between subject areas, year of study and individual courses.

Honours projects are typically assessed on the basis of a written dissertation.

Further Information

View detailed learning and assessment information for this programme

How the programme is taught

The typical time spent in scheduled learning activities (lectures, tutorials, seminars, practicals), independent self-study or placement is shown for each year of the programme based on the most popular course choices selected by students.

How the programme is assessed

The typical percentage of assessment methods broken down by written examination, coursework or practical exams is shown for each year of the programme based on the most popular course choices selected by students.

Year 1

Learning Method
scheduled: 31%
independent: 69%
placement: 0%
Assessment
written: 66%
coursework: 34%
practical: 0%

Year 2

Learning Method
scheduled: 27%
independent: 73%
placement: 0%
Assessment
written: 74%
coursework: 26%
practical: 0%

Year 3

Learning Method
scheduled: 21%
independent: 79%
placement: 0%
Assessment
written: 65%
coursework: 35%
practical: 0%

Year 4

Learning Method
scheduled: 17%
independent: 83%
placement: 0%
Assessment
written: 46%
coursework: 54%
practical: 0%

Why Study Computing Science and Mathematics?

Why Computing

  • Flexible degrees available, including; Single/Joint Honours BSc, MA or MSci degrees.
  • Extra-curricular activities - Studying Computing is not just about programming. We run a variety of social and professional events regularly including; ACM programming Contest, Code The City and Global Service Jam.
  • Aberdeen Software Factory - students get paid to work on client projects as a means to develop their software development skills.
  • We run a hugely successful Computing Student Society, where students socialise and enhance their communication skills, and knowledge of hardware and software.
  • Students are given the opportunity to develop their transferable skills and abilities as independent learners.
  • Prizes for academic excellence are awarded in each year of study. These are sponsored by O’Reilly, the British Computer Society, CGI, EDS and Amazon. Projects are often successfully entered for national competition.
  • Industrial Placements – about 50% of our students took part in placements, receiving very good feedback from the employers.
  • We are a very close knit department of students and staff and you will be given the freedom to develop your skills and learning whilst being supported along the way.
  • Our research expertise in Data Science and Data Analysis is at its strongest when we work in close partnership with other disciplines, such as Physics, Maths, Geography, Health and Biology.
  • The Department of Computing Science is a thriving centre of teaching and research, particularly in areas related to Artificial Intelligence and Knowledge-Based Information Management.

Why Mathematics

  • We offer a challenging syllabus which emphasises reasoning, rigour and the argumentative side of mathematics.
  • Our ambition is to give you a sound preparation for a career in which mathematics plays a role, whether it be in research or through applications.
  • We offer excellent student experience delivered by enthusiastic staff combined with small class sizes, approximately 25 or less in the Honours years.
  • We offer a degree in Pure Mathematics and degree in Applied Mathematics to suit your taste and interests. You will only need to make the choice in your 3rd year.
  • We offer a range of choices with your degree programme, across both the sciences (BSc) and the Arts (MA). You can focus your attention entirely on Mathematics or you can spread your interests to combine it with other subjects.
  • We offer attractive joint degrees with Economics, Physics and other disciplines, including languages.
  • The department run a number of key events and seminars throughout the year, giving you the chance to network with students and academics.
  • Interactions with applied maths are fostered through our involvement in the Institute for Pure and Applied Mathematics, comprised of the Department of Mathematics together with the Institute for Complex Systems and Mathematical Biology.

Entry Requirements

Qualifications

The information below is provided as a guide only and does not guarantee entry to the University of Aberdeen.

SQA Highers - AABB*
A Levels - BBB*
IB - 32 points, 5 at HL*
ILC - 5H with 3 at H2 AND 2 at H3 OR AAABB, obtained in a single sitting. (B must be at B2 or above)*

*SQA Higher or GCE A Level or equivalent at grade B or above in Mathematics is required and good performance in one other science subject.

Advanced Entry - Advanced Highers ABB or A Levels ABB, or IB 34 points (6 at HL), including a science subject and preferably Mathematics

Further detailed entry requirements for Sciences degrees.

English Language Requirements

To study for a degree at the University of Aberdeen it is essential that you can speak, understand, read, and write English fluently. Read more about specific English Language requirements here.

Fees and Funding

You will be classified as one of the fee categories below.

Fee Waiver

For international students (all non-EU students) entering in 2017/18, the 2017/18 tuition fee rate will apply to all years of study; however, most international students will be eligible for a fee waiver in their final year via the International Undergraduate Scholarship.

Most RUK students (England, Wales and Northern Ireland) on a four year honours degree will be eligible for a full-fees waiver in their final year. Scholarships and other sources of funding are also available.

Fee information
Fee category Cost
Home / EU £1,820
All Students
RUK £9,250
Students Admitted in 2018/19 Academic Year
International Students £18,400
Students Admitted in 2018/19 Academic Year

Additional Fees

  • In exceptional circumstances there may be additional fees associated with specialist courses, for example field trips. Any additional fees for a course can be found in our Catalogue of Courses.
  • For more information about tuition fees for this programme, including payment plans and our refund policy, please visit our InfoHub Tuition Fees page.

Our Funding Database

View all funding options in our Funding Database.

Careers

There are many opportunities at the University of Aberdeen to develop your knowledge, gain experience and build a competitive set of skills to enhance your employability. This is essential for your future career success. The Careers Service can help you to plan your career and support your choices throughout your time with us, from first to final year – and beyond.

Accreditation

F

Our Experts

Head of Department
Dr Wamberto Vasconcelos
Head of Discipline
Dr Assaf Libman

Information About Staff Changes

You will be taught by a range of experts including professors, lecturers, teaching fellows and postgraduate tutors. Staff changes will occur from time to time; please see our InfoHub pages for further information.

Features

Image for Aberdeen Software Factory
Aberdeen Software Factory

Aberdeen Software Factory

The Aberdeen Software Factory is a student-run software house. Students can gain experience working on larger software projects and benefit from work experience, while clients will benefit from a flexible, cost effective solution to suit their needs.

Find out more
Image for Computing Placements
Computing Placements

Computing Placements

Placements are encouraged and available within a range of computing firms - summer months, between second and third year, or between third and fourth year.

Unistats

Unistats draws together comparable information in areas students have identified as important in making decisions about what and where to study. You can compare these and other data for different degree programmes in which you are interested.

Get in Touch

Contact Details

Address
Student Recruitment & Admissions Service
University of Aberdeen
University Office
Regent Walk
Aberdeen
AB24 3FX