Bachelor of Science (BSc)

BSc Computer Science and Mathematics with Industrial Experience

Graduate this highly sought-after subject combination having already gained invaluable experience in industry.
  • Duration: 4 years
  • Year of entry: 2025
  • UCAS course code: GG41 / Institution code: M20
  • Key features:
  • Industrial experience
  • Scholarships available

Full entry requirementsHow to apply

Fees and funding

Fees

Tuition fees for home students commencing their studies in September 2025 will be £9,535 per annum (subject to Parliamentary approval). Tuition fees for international students will be £36,000 per annum. For general information please see the undergraduate finance pages.

Policy on additional costs

All students should normally be able to complete their programme of study without incurring additional study costs over and above the tuition fee for that programme. Any unavoidable additional compulsory costs totalling more than 1% of the annual home undergraduate fee per annum, regardless of whether the programme in question is undergraduate or postgraduate taught, will be made clear to you at the point of application. Further information can be found in the University's Policy on additional costs incurred by students on undergraduate and postgraduate taught programmes (PDF document, 91KB).

Scholarships/sponsorships

The University of Manchester is committed to attracting and supporting the very best students. We have a focus on nurturing talent and ability and we want to make sure that you have the opportunity to study here, regardless of your financial circumstances.

For information about scholarships and bursaries please visit our  undergraduate student finance pages .

Course unit details:
Data Science

Course unit fact file
Unit code COMP13212
Credit rating 10
Unit level Level 1
Teaching period(s) Semester 2
Available as a free choice unit? Yes

Overview

This course unit has two objectives. The first is to introduce the student to a range of fundamental, non-trivial algotithms, and to the techniques required to analyse their correctness and running-time.

The second is to present a conceptual framework for analysing the intrinsic complexity of computational problems, which abstracts away from details of particular algorithms.

Aims

To give students awareness of the elements of the “The Data Science Process”. Many of the elements of this process will be studied in finer detail, although not all.
To give students practice using python tools for data processing and analysis, through practical computer laboratory exercises.  Tools include: numpy, scipy.stats, pandas, and Jupyter notebooks, 
To demonstrate methods for exploring and visualising data, and give students practice in using these methods.
To give students understanding of uncertainty in data, in particular, methods for measuring uncertainty, and when to use appropriate measures.
To give students an introduction to statistical thinking and Bayesian reasoning.
To give students an introduction to ethical considerations when analysing data and drawing responsible conclusions.
To give a brief introduction to concepts from machine learning, including: classification/regression, overfitting/underfitting, the need for independent testing data, and cross-validation, including leave-one-out validation. 
To demonstrate some practical application of basic machine learning methods, including the Bayesian classifier, the naive Bayes classification, linear regression, and logistic regression.
 

Learning outcomes

  • Demonstrate awareness of the “Data Science Process” by describing qualitatively how it would apply in a given situation. 
  • Demonstrate awareness of need for data cleaning descriptively and by doing elementary data cleaning and preparation in the laboratory.  
  • Demonstrate ability to measure and express uncertainty from a set of data and quantities derived from that data. 
  • Demonstrate ability to choose and build appropriate models of different datasets. 
  • Demonstrate ability to evaluate the quality of a model of a dataset. 
  • Demonstrate the ability compare different models of a dataset and models of different dataset in order to draw statistically sound conclusions about hypotheses or claims from the data. 
  • Demonstrate ability to use python tools to: read and write data sets to and from files, produce descriptive statistics and draw conclusions from these, produce graphical visualisation and draw conclusions, perform basic statistical tests including the difference between means, and perform a simple machine learning experiment by building an email spam filter using a naive Bayes classifier.

 

Teaching and learning methods

Lectures and coursework reported via Jupyter notebooks in Python.

Assessment methods

Method Weight
Written exam 80%
Practical skills assessment 20%

Recommended reading

To be determined

 

Study hours

Scheduled activity hours
Lectures 22
Practical classes & workshops 12
Independent study hours
Independent study 66

Teaching staff

Staff member Role
Ainur Begalinova Unit coordinator

Return to course details