Triangle

Course overview

International student applications for this course will close on 20 November 2023 and re-open on 20 February 2024.


This course is available to students with or without a first degree in computer science.

Computer Science is playing a key role in many industries all around the world. Developments in artificial intelligence, apps and cyber security are changing how we live, work and socialise. This course will give you the skills and knowledge to prepare you for a range of high-level careers.

Core modules will develop your knowledge in key topics such as programming, databases, and networks. Optional modules give you the flexibility to broaden your knowledge in specialist areas, including machine learning, autonomous robotics, and human-AI interaction. 

You will undertake an individual research project in an area of your choice. All projects are supervised by an expert researcher in the area, and many involve collaborations across the University or with industry partners. Previous projects have included:

  • Benchmarking consumer data and privacy knowledge in connected and autonomous vehicles
  • How time, peer pressure, cognitive load, and emotional attachment influences affect people’s decisions of moral dilemmas within virtual environments
  • Predicting keystrokes using an audio side-channel attack and machine learning

If you choose to focus your study and research in the field of AI, you can graduate with a degree titled ‘MSc Computer Science (Artificial Intelligence)’.

A two-year full-time version of this course is available.

Why choose this course?

Conversion option

No computer programming experience is needed.

Your modules will depend on your background in computer science and maths

98%

of our research is classed as ‘world-leading’ (4*) or ‘internationally excellent’ (3*)

Research Excellence Framework 2021

Joint 1st

in the UK for research environment

Research Excellence Framework 2021

Ranked 6th in the UK

For universities targeted by the largest number of top employers in 2019-2020

High Fliers Report The Graduate Market 2019-2020

Course content

You will study a total of 180 credits, split across 120 credits of compulsory and optional modules plus a 60 credit individual project.

The Artificial Intelligence pathway allows you to graduate with a degree titled 'MSc Computer Science (Artificial Intelligence)'. You will study 40 credits or more of compulsory AI modules and undertake an AI-focused research project.

Another pathway is offered for students without a computer science degree. This involves compulsory modules that give you the core knowledge required for the remainder of the degree.

Modules

Core

Research Methods 20 credits

This module will expose you to a variety of research methods, providing you with good quantitative and qualitative skills. Research approaches covered include:

  • laboratory evaluation
  • surveys
  • case studies
  • action research

In addition to project management, the module introduces the research process, from examining how problems are selected, literature reviews, selection of research methods, data collection and analysis, development of theories and conclusions, to the dissemination of the research based on analysis of research papers. The module also offers an overview of ethical considerations when conducting research, and supports in identifying directions for MSc projects.

Students without a degree in computer science must take the following:

Programming 20 credits

This module will give you a comprehensive overview of the principles of programming, including procedural logic, variables, flow control, input and output and the analysis and design of programs. Instruction will be provided in an object-oriented programming language.

Systems and Networks 20 credits

This module is part of the operating systems and networks theme. The module gives an introduction to the role of the operating system and how it manages computer resources such as memory, processes and disks.

Unix is introduced in terms of the Unix file structure, Input and Output and the Command Line Interface that is used to manipulate these. Computer communication is taught with respect to the Client-Server Architecture and applications that use this. Underlying protocols, such as those in the TCP/IP protocol suite, are introduced, as commonly used on the Internet to provide a universal service. This includes IPv4 and IPv6, the need for IPv6 and how the two differ. Types of computer networks are covered in terms of scale, such as LANs and WANs; and in terms of wired and wireless networks. Mechanisms for connecting networks such as routers, switches and bridges are covered.

Other topics include the role of gateways, proxies, Virtual Private Networks and cloud computing. Potential security risks are examined and how to reduce them, including the use of firewalls.

Databases, Interfaces and Software Design Principles 20 credits

This module considers both the structure of databases, including how to make them fast, efficient and reliable and the appropriate user interfaces which will make them easy to interact with for users. You will start by looking at how to design a database, gaining an understanding of the standard features that management systems provide and how they can best utilise them, then develop an interactive application to access their database.

Database/software design principles will be introduced with an emphasis on the importance of understanding user requirements and specifications. Throughout the lectures and computing sessions, you will learn how to design and implement systems using a standard database management system, web technologies and GUI interfaces through practical programming/system examples.

Students wishing to obtain MSc Computer Science (Artificial Intelligence) must select 40 credits from the list below:

Autonomous Robotic Systems 20 credits

This module introduces the main concepts of autonomous mobile robotics, providing an understanding of the hardware and software principles appropriate for control, spatial localisation and navigation. The module consists of theoretical concepts around robotic sensing and control in the lectures, together with a strong practical element for robot programming in the laboratory sessions

Big Data Learning and Technologies 20 credits

This module will cover four main concepts.

It will start with an introduction to big data. You’ll find out about the main principles behind distributed/parallel systems with data intensive applications, identifying key challenges such as capture, store, search, analyse and visualise the data. 

We’ll also look at SQL Databases verses NoSQL Databases. You will learn:

  • the growing amounts of data
  • the relational database management systems (RDBMS)
  • an overview of Structured Query Languages (SQL)
  • an introduction to NoSQL databases
  • the difference between a relational DBMS and a NoSQL database
  • how to identify the need to employ a NoSQL database

Another concept is big data frameworks and how to deal with big data. This includes the MapReduce programming model, as well as an overview of recent technologies (Hadoop ecosystem, and Apache Spark). Then, you will learn how to interact with the latest APIs of Apache Spark (RDDs, DataFrames and Datasets) to create distributed programs capable of dealing with big datasets (using Python and/or Scala).  

Finally, we will cover the data mining and machine learning part of the course. This will include data preprocessing approaches, distributed machine learning algorithms and data stream algorithms. To do so, you will use the machine learning library of Apache Spark to understand how some machine learning algorithms can be deployed at a scale. 

Computer Vision 20 credits

You will examine current techniques for the extraction of useful information about a physical situation from individual and sets of images. You will learn a range of methods and applications, with particular emphasis being placed on the detection and identification of objects, image segmentation, pose estimation, recovery of three-dimensional shape and analysis of motion. These problems will be approached with both traditional and modern computer vision approaches, including deep learning.

Data Science with Machine Learning 20 credits

This module explores the range of data analysis problems that can be modelled computationally and a range of techniques that are suitable to analyse and solve those problems.

Topics covered include:

  • basic statistics
  • types of data
  • data visualisation techniques
  • data modelling
  • data pre-processing methods including data imputation
  • forecasting methods
  • clustering and classification methods
Designing Intelligent Agents 20 credits

In this module, you will be given a basic introduction to the analysis and design of intelligent agents, software systems which perceive their environment and act in that environment in pursuit of their goals. You will cover topics including task environments, reactive, deliberative and hybrid architectures for individual agents, and architectures and coordination mechanisms for multi-agent systems.

Handling Uncertainty with Fuzzy Sets and Fuzzy Systems 20 credits

This module focuses on handling uncertainty such as vagueness using fuzzy sets and similar approaches. It provides a thorough understanding of key topics such as:

  • the nature of uncertainty captured by fuzzy sets and associated links to human reasoning
  • inference using fuzzy sets
  • similarity of fuzzy sets
  • design and modelling of information via fuzzy sets
  • type-1 fuzzy sets
  • type-2 fuzzy sets
  • fuzzy logic systems
  • fuzzy set based applications
Human-AI Interaction 20 credits

This module is an introduction to the design of human-AI interaction to ensure the AI-driven systems we build are beneficial and useful to people.

The module will cover practical design topics including methods and techniques such as natural language processing and human-robot interaction. The module will also consider societal and theoretical concerns of human-AI interaction, including the ethics of AI, responsible innovation, trust, accountability and explainable AI.

The practical component of the module will involve building AI-driven systems that drive conversational experiences, such as a text-based ‘chatbots’ and speech-controlled services/ ‘skills’, involving automatic speech recognition and natural language processing.

Symbolic Artificial Intelligence 20 credits

This module examines how knowledge can be represented symbolically and how it can be manipulated in an automated way by reasoning programs.

Some of the topics you’ll cover include:

  • first order logic
  • resolution
  • description logic
  • default reasoning
  • rule-based systems
  • belief networks
Linear and Discrete Optimisation 20 credits

The module provides an entry point to computational optimization techniques, particularly for modelling and solving linear and discrete optimization problems like diet optimization, network flows, task assignment, scheduling, bin-packing, travelling salesmen, facility location, vehicle routing and related problems.

Optimization sits at the interface of computer science and mathematics. Optimization is considered one of the key techniques within the broad spectrum of artificial intelligence methods. Optimization focuses on making decisions instead of predicting or identifying patterns. Optimization is also one of the most important areas within operations research (OR), which is a discipline that uses modelling techniques, analytics and computational methods to solve complex problems in industry and business.

In this module, you will learn to interpret and develop algebraic models for a variety of real-world linear and discrete optimization problems to then use powerful optimization software (linear, integer and mixed-integer solvers) to produce a solution. The module covers topics such as linear programming, integer programming, combinatorial optimization, modelling and optimization software, multi-objective optimization, simplex method, and branch and bound method among others. Optimization technology is ubiquitous in today's world, for applications in logistics, finance, manufacturing, workforce planning, product selection, healthcare, and any other area where the limited resources must be used efficiently. Optimization enables prescriptive analytics, in order to support and automate decision-making"

Machine Learning 20 credits

Providing an introduction to machine learning, pattern recognition, and data mining techniques, this module will enable you to consider both systems which are able to develop their own rules from trial-and-error experience to solve problems as well as systems that find patterns in data without any supervision. 

You’ll cover a range of topics including:

  • machine learning foundations
  • pattern recognition foundations
  • artificial neural networks
  • deep learning
  • applications of machine learning
  • data mining techniques
  • evaluating hypotheses

You’ll spend around six hours each week in lectures and computer classes for this module.

Simulation and Optimisation for Decision Support 20 credits

This module offers insight into the applications of selected methods of decision support. The foundations for applying these methods are derived from:

  • operations research simulation
  • social simulation
  • data science
  • automated scheduling
  • decision analysis

Throughout the module, you will become more competent in choosing and implementing the appropriate method for the particular problem at hand. You will engage in a mixture of lectures, workshops, and computer classes.

Research projects

All students must complete a research project. If you wish to graduate with the title of MSc Computer Science (Artificial Intelligence), you must choose the AI project.

Research Project in Computer Science 60 credits

You will conduct a piece of empirical and/or theoretical research in an appropriate strand of the degree, under the supervision of a member of academic staff. Where appropriate, your project may also be conducted in conjunction with an external organisation and may involve a substantial software implementation. 

Research Project in Computer Science (Artificial Intelligence) 60 credits

You will conduct a piece of empirical and/or theoretical research in artificial intelligence, under the supervision of a member of academic staff. Where appropriate, your project may also be conducted in conjunction with an external organisation and may involve a substantial software implementation. 

Optional modules

Advanced Algorithms and Data Structures 10 credits

You'll study the theory used in the design and analysis of advanced algorithms and data structures. Topics covered include string algorithms (such as for string matching, longest common subsequence), graph algorithms (such as for minimum cuts and maximum flows, and Google's pagerank algorithm), advanced data structures (such as Fibonacci heaps and Bloom filters), and randomised search heuristics (evolutionary algorithms). You'll learn all the necessary probability theory will be introduced, including random variables and concentration inequalities.

The theory is practiced in weekly labs where we learn how to implement the algorithms and data structures as functional and imperative programs (using the languages Haskell and C), and apply these to solve large instances of real-world problems. 

Advanced Computer Networks 20 credits

This module will provide you with an advanced knowledge of computer communications networks, using examples from all-IP core telecommunications networks to illustrate aspects of transmission coding, error control, media access, internet protocols, routing, presentation coding, services and security.

The module will describe Software Defined Networks (SDNs) and provide examples of using them to enable very large scale complex network control. It will also provide advanced knowledge of various routing and query protocols in:

  • Ad Hoc Networks
  • Mobile Ad Hoc Networks (MANETs)
  • Vehicular Ad Hoc Networks (VANETs)
  • Disconnection/Disruption/Delay Tolerant Networks (DTNs)
  • impact of new networking developments, such as security risks, ethics, interception and data protection will be reflected and discussed systematically
Autonomous Robotic Systems 20 credits

This module introduces the main concepts of autonomous mobile robotics, providing an understanding of the hardware and software principles appropriate for control, spatial localisation and navigation. The module consists of theoretical concepts around robotic sensing and control in the lectures, together with a strong practical element for robot programming in the laboratory sessions

Computer Graphics 20 credits

You’ll examine the principles of 3D computer graphics, focusing on modelling the 3D world on the computer, projecting onto 2D display and rendering 2D display to give it realism.

Through weekly lectures and laboratory sessions, you’ll explore various methods and requirements in 3D computer graphics, balancing efficiency and realism.

Fundamentals of Information Visualisation 10 credits

Information Visualisation is the process of extracting knowledge from complex data, and presenting it to a user in a manner that this appropriate to their needs. This module provides a foundational understanding of some important issues in information visualisation design. You will learn about the differences between scientific and creative approaches to constructing visualisations, and consider some important challenges such as the representation of ambiguous or time-based data. You will also learn about psychological theories that help explain how humans process information, and consider their relevance to the design of effective visualisations.

If you want to learn how to design and implement your own interactive information visualisation, you should also take the linked module G53IVP (Information Visualisation Project). Together, these two modules form an integrated 20 credit programme of study.

Information Visualisation Project 10 credits

In this module you will gain practical experience of how to design and evaluate a distinctive interactive visualisation which presents information gathered from a complex and interesting data source.

You will gain experience in web-based technologies that enable the implementation of multi-layered and interactive information visualisations, supported through lab work that introduces specific features of these technologies.

This module will require some challenging programming work and assumes some basic knowledge of HTML, CSS and Javascript. Introductory tutorials will be provided to those without this prior knowledge.

Symbolic Artificial Intelligence 20 credits

This module examines how knowledge can be represented symbolically and how it can be manipulated in an automated way by reasoning programs.

Some of the topics you will cover include:

  • first order logic
  • resolution
  • description logic
  • default reasoning
  • rule-based systems
  • belief networks
Linear and Discrete Optimisation 20 credits

The module provides an entry point to computational optimization techniques, particularly for modelling and solving linear and discrete optimization problems like diet optimization, network flows, task assignment, scheduling, bin-packing, travelling salesmen, facility location, vehicle routing and related problems.

Optimization sits at the interface of computer science and mathematics. Optimization is considered one of the key techniques within the broad spectrum of artificial intelligence methods. Optimization focuses on making decisions instead of predicting or identifying patterns. Optimization is also one of the most important areas within operations research (OR), which is a discipline that uses modelling techniques, analytics and computational methods to solve complex problems in industry and business.

In this module, you will learn to interpret and develop algebraic models for a variety of real-world linear and discrete optimization problems to then use powerful optimization software (linear, integer and mixed-integer solvers) to produce a solution. The module covers topics such as linear programming, integer programming, combinatorial optimization, modelling and optimization software, multi-objective optimization, simplex method, and branch and bound method among others. Optimization technology is ubiquitous in today's world, for applications in logistics, finance, manufacturing, workforce planning, product selection, healthcare, and any other area where the limited resources must be used efficiently. Optimization enables prescriptive analytics, in order to support and automate decision-making"

Machine Learning 20 credits

Providing you with an introduction to machine learning, pattern recognition, and data mining techniques, this module will enable you to consider both systems which are able to develop their own rules from trial-and-error experience to solve problems, as well as systems that find patterns in data without any supervision. In the latter case, data mining techniques will make the generation of new knowledge possible, including very big data sets. This is now fashionably termed 'big data' science.

You'll cover a range of topics including:

  • machine learning foundations
  • pattern recognition foundations
  • artificial neural networks
  • deep learning
  • applications of machine learning
  • data mining techniques and evaluating hypotheses
Malware Analysis 10 credits

This module looks at the practice of malware analysis, looking at how to analyse malicious software to understand how it works, how to identify it, and how to defeat or eliminate it.  

You will look at how to set up a safe environment in which to analyse malware, as well as exploring both static and dynamic malware analysis. Although malware takes many forms, the focus of this module will primarily be on executable binaries. This will cover object file formats and the use of tools such as debuggers, virtual machines, and disassemblers to explore them. Obfuscation and packing schemes will be discussed, along with various issues related to Windows internals.

The module is practical with encouragement to safely practice the skills you're taught.

Mixed Reality 20 credits

This module focuses on the possibilities and challenges of interaction beyond the desktop. Exploring the 'mixed reality continuum' - a spectrum of emerging computing applications that runs from virtual reality (in which a user is immersed into a computer-generated virtual world) at one extreme, to ubiquitous computing (in which digital materials appear embedded into the everyday physical world - often referred to as the 'Internet of Things') at the other. In the middle of this continuum lie augmented reality and locative media in which the digital appears to be overlaid upon the physical world in different ways.

You will gain knowledge and hands-on experience of design and development with key technologies along this continuum, including working with both ubiquitous computing based sensor systems and locative media. You will learn about the Human-Computer Interaction challenges that need to be considered when creating mixed reality applications along with strategies for addressing them, so as to create compelling and reliable user experiences.

Programs, Proofs and Types 20 credits

This module focuses on some of the fundamental mathematical concepts that underlie modern programming and programming languages emphasizing the role of types. We will use a dependently typed programming language/interactive proof system (eg Agda) to implement some concepts on a computer.

Example topics include

  • basic lambda calculus
  • operational semantics
  • domain theory
  • types, propositions as types and formal verification.

You will engage in a mix of lectures and working in the lab with an interactive proof system.

Project in Advanced Algorithms and Data Structures 10 credits

This project involves a self-guided study of a selected advanced algorithm or data structure. The outcome of the project is an analysis and implementation of the algorithm or data structure, as well as an empirical evaluation, preferably on a real-world data set of significant size.

Simulation and Optimisation for Decision Support 20 credits

This module offers insight into the applications of selected methods of decision support. The foundations for applying these methods are derived from:

  • operations research simulation
  • social simulation
  • data science
  • automated scheduling
  • decision analysis

Throughout the module, you will become more competent in choosing and implementing the appropriate method for the particular problem at hand. You will engage in a mixture of lectures, workshops, and computer classes.

Human-AI Interaction 20 credits

This module is an introduction to the design of human-AI interaction to ensure the AI-driven systems we build are beneficial and useful to people.

The module will cover practical design topics including methods and techniques such as natural language processing and human-robot interaction. The module will also consider societal and theoretical concerns of human-AI interaction, including the ethics of AI, responsible innovation, trust, accountability and explainable AI.

The practical component of the module will involve building AI-driven systems that drive conversational experiences, such as a text-based ‘chatbots’ and speech-controlled services/ ‘skills’, involving automatic speech recognition and natural language processing.

Designing Intelligent Agents 20 credits

You’ll be given a basic introduction to the analysis and design of intelligent agents, software systems which perceive their environment and act in that environment in pursuit of their goals.

You’ll cover topics including:

  • task environments
  • reactive, deliberative and hybrid architectures for individual agents
  • architectures and coordination mechanisms for multi-agent systems

You will spend around four hours each week in lectures and tutorials for this module.

As part of the assessment of this module you will produce a research paper-style report, and deliver a conference-style presentation.

Games 20 credits

This module covers the history, development and state-of-the-art in computer games and technological entertainment.

You will gain an appreciation of the range of gaming applications available and be able to chart their emergence as a prevalent form of entertainment. You will study the fundamental principles of theoretical game design and how these can be applied to a variety of modern computer games.

In addition, you will study the development of games as complex software systems. Specific software design issues to be considered will include the software architecture of games, and the technical issues associated with networked and multiplayer games.

Finally, you will use appropriate software environments to individually develop a number of games to explore relevant theoretical design and practical implementation concepts.

Data Science with Machine Learning 20 credits

This module will enable you to appreciate the range of data analysis problems that can be modelled computationally and a range of techniques that are suitable to analyse and solve those problems.

Topics covered include:

  • basic statistics
  • types of data
  • data visualisation techniques
  • data modelling
  • data pre-processing methods including data imputation
  • forecasting methods
  • clustering and classification methods (decision trees, naīve bayes classifiers, k-nearest neighbours)
  • data simulation
  • model interpretation techniques to aid decision support.

You will engage in a mixture of lectures and computer classes where appropriate software (eg R, Weka) will be used.

Handling Uncertainty with Fuzzy Sets and Fuzzy Systems 20 credits

This module focuses on handling uncertainty such as vagueness using fuzzy sets and similar approaches. It provides a thorough understanding of key topics such as:

  • the nature of uncertainty captured by fuzzy sets and associated links to human reasoning
  • inference using fuzzy sets
  • similarity of fuzzy sets
  • design and modelling of information via fuzzy sets
  • type-1 fuzzy sets
  • type-2 fuzzy sets
  • fuzzy logic systems
  • fuzzy set based applications
Big Data Learning and Technologies 20 credits

This module will cover four main concepts.

It will start with an introduction to big data. You’ll find out about the main principles behind distributed/parallel systems with data intensive applications, identifying key challenges such as capture, store, search, analyse and visualise the data. 

We’ll also look at SQL Databases verses NoSQL Databases. You will learn:

  • the growing amounts of data
  • the relational database management systems (RDBMS)
  • an overview of Structured Query Languages (SQL)
  • an introduction to NoSQL databases
  • the difference between a relational DBMS and a NoSQL database
  • how to identify the need to employ a NoSQL database

Another concept is big data frameworks and how to deal with big data. This includes the MapReduce programming model, as well as an overview of recent technologies (Hadoop ecosystem, and Apache Spark). Then, you will learn how to interact with the latest APIs of Apache Spark (RDDs, DataFrames and Datasets) to create distributed programs capable of dealing with big datasets (using Python and/or Scala).  

Finally, we will cover the data mining and machine learning part of the course. This will include data preprocessing approaches, distributed machine learning algorithms and data stream algorithms. To do so, you will use the machine learning library of Apache Spark to understand how some machine learning algorithms can be deployed at a scale. 

Computer Vision 20 credits

You will examine current techniques for the extraction of useful information about a physical situation from individual and sets of images. You will learn a range of methods and applications, with particular emphasis being placed on the detection and identification of objects, image segmentation, pose estimation, recovery of three-dimensional shape and analysis of motion. These problems will be approached with both traditional and modern computer vision approaches, including deep learning.

Cyber Security 10 credits

Cyber security is an essential consideration for the protection of IT-based devices, systems, networks and data, providing safeguard and reassurance to the organisations and individuals that now rely (and increasingly depend) upon them. We provide coverage of both technical and human perspectives, considering the fundamental threats and safeguards that concern both personal and workplace contexts. You will emerge with the knowledge and skills necessary to enable informed cyber security decisions spanning the technical, human and organisational dimensions of the topic.

You will gain knowledge and practical experience across a range of key cyber security topics, including foundational concepts and principles, authentication and access control, operating system security, cryptographic mechanisms and applications, security management, risk assessment, cyber-attacks and threat intelligence, network and Internet security, intrusion detection and incident response, and human aspects. You will learn about the challenges that need to be considered when designing and implementing secure systems, along with associated approaches to ensure that security is addressed in an effective and holistic manner.

The above is a sample of the typical modules we offer but is not intended to be construed and/or relied upon as a definitive list of the modules that will be available in any given year. Modules (including methods of assessment) may change or be updated, or modules may be cancelled, over the duration of the course due to a number of reasons such as curriculum developments or staffing changes. Please refer to the module catalogue for information on available modules. This content was last updated on Wednesday 15 May 2024.

Due to timetabling availability, there may be restrictions on some module combinations.

Learning and assessment

How you will learn

  • Lectures
  • Tutorials
  • Seminars
  • Computer labs
  • Practical classes
  • Project work
  • Supervision

You will study a total of 180 credits, split across 120 credits of compulsory and optional modules plus a 60-credit individual project.

You will work in lecture theatres, seminar rooms and labs to develop a theoretical and practical understanding of this subject.

Teaching is typically delivered by professors, associate and assistant professors. Some practical laboratory sessions and research projects may be supported by postgraduate research students or postdoctoral research fellows.

How you will be assessed

  • Coursework
  • Written exam
  • Project work

Modules are assessed using a variety of individual assessment types which are weighted to calculate your final mark for each module. In many modules, assessments are mixed with 75/25 or 25/75 coursework/exam.

The final degree classification will be the average of all credits, e.g. an average of 120 taught credits and 60 credits on your project. To pass a module, you’ll need a mark of at least 50%. 

Contact time and study hours

The class size depends on the module. In 2021/2022, class and lecture sizes ranged from 25 to 285 students.

All students meet their tutors in the Induction week. Students are then encouraged to make individual arrangements to discuss any issues during the study. Some staff offer weekly drop-in time for students.

As a guide, one credit is equal to approximately 10 hours of work.

Entry requirements

All candidates are considered on an individual basis and we accept a broad range of qualifications. The entrance requirements below apply to 2024 entry.

Undergraduate degree2:1 (or international equivalent) with an affinity for programming evidenced through prior study of programming or practical experience detailed in the application. Prior study of programming modules is desirable, but not essential.

Applying

International applications

This course will close to international applications on the 20 November 2023, and will reopen on 20 February 2024. Applications must be submitted before this time and the international student application fee must be received by the university within 24 hours.

The course will remain open to Home applicants throughout this period.

Alternative courses

You may be interested in the following courses which are open for international applications:

Our step-by-step guide covers everything you need to know about applying.

How to apply

Fees

Qualification MSc
Home / UK £12,500
International £28,600

Additional information for international students

If you are a student from the EU, EEA or Switzerland, you may be asked to complete a fee status questionnaire and your answers will be assessed using guidance issued by the UK Council for International Student Affairs (UKCISA) .

These fees are for full-time study. If you are studying part-time, you will be charged a proportion of this fee each year (subject to inflation).

Additional costs

All students will need at least one device to approve security access requests via Multi-Factor Authentication (MFA). We also recommend students have a suitable laptop to work both on and off-campus. For more information, please check the equipment advice.

We do not anticipate any extra significant costs. You should be able to access most of the books you’ll need through our libraries, though you may wish to purchase your own copies which you would need to factor into your budget.

Funding

There are many ways to fund your postgraduate course, from scholarships to government loans.

We also offer a range of international masters scholarships for high-achieving international scholars who can put their Nottingham degree to great use in their careers.

Check our guide to find out more about funding your postgraduate degree.

Postgraduate funding

Careers

We offer individual careers support for all postgraduate students.

Expert staff can help you research career options and job vacancies, build your CV or résumé, develop your interview skills and meet employers.

Each year 1,100 employers advertise graduate jobs and internships through our online vacancy service. We host regular careers fairs, including specialist fairs for different sectors.

International students who complete an eligible degree programme in the UK on a student visa can apply to stay and work in the UK after their course under the Graduate immigration route. Eligible courses at the University of Nottingham include bachelors, masters and research degrees, and PGCE courses.

Graduate destinations

This course prepares you for careers in advanced software development, particularly where reliability and efficiency are vital requirements. Graduates are likely to assume leading roles in major software-development projects in one of the areas of specialisation.

This course also provides an excellent foundation for further study and you may decide to progress to a PhD in order to continue your research.

Our graduates have lots of great job opportunities. Computer science-related skills make up 4 of the top 5 'most in-demand skills for employers in 2020’ according to LinkedIn.

Career progression

100% of postgraduate taught students from the School of Computer Science secured graduate level employment or further graduate study within 15 months of graduation. The average annual salary for these graduates was £30,100*

* HESA Graduate Outcomes 2019/20 data published in 2022. The Graduate Outcomes % is derived using The Guardian University Guide methodology. The average annual salary is based on graduates working full-time, postgraduate, home graduates within the UK.

Two masters graduates proudly holding their certificates
" I'm an Associate Professor in the School of Computer Science. I teach modules in data science and artificial intelligence, as well as supervising MSc dissertation projects on a wide range of topics. I'm also involved in a research project using AI for finding and correcting bugs in code, and I'm writing a book about study skills for PhD students. "
Dr Colin Johnson

Related courses

This content was last updated on Wednesday 15 May 2024. Every effort has been made to ensure that this information is accurate, but changes are likely to occur given the interval between the date of publishing and course start date. It is therefore very important to check this website for any updates before you apply.