Computer Science with Cyber Security MEng

University of York · honours · 4 years · optional placement year · optional year abroad · UCAS 7770course page ↗

A*AA at A level, Mathematics; graduates earn a median £40,500 three years on.

Typical A level offer
A*AA

Mathematics · 97% of entrants came with A levels · 94% stay on after year 1 · York course page, Discover Uni

Year 13 · applying

What do you need to get in?

A*AAtypical A level offer; a*aa including mathematics. if you are studying towards a fourth a level, we will make an alternative offer of aaaa including mathematics.

Typical offer — the grades most applicants are asked for. Contextual offer: AAB, for applicants from under-represented backgrounds.

York course page, read 19 September 2026 · Discover Uni entry profile

  1. 1Mathematics
  2. 2Mathematics
Who actually got in: 97% with A levels, 1% with other higher education. 7% arrived with 208 or more UCAS tariff points — roughly A*A*A or better. Based on 280 entrants.

UCAS tariff points — a points scale for grades: A* = 56, A = 48, so A*A*A = 160. Entrants’ totals include extra subjects.

Other qualifications5
QualificationTypical offerRequired subjects
AccessWe accept the Access to Higher Education Diploma. The syllabus must contain a siWe accept the Access to Higher Education Diploma. The syllabus must contain a significant portion of Mathematics that is considered equivalent to A level standard. Applications will be considered on a—
BTECDDDDDD plus grade B in A level Mathematics (or equivalent qualification) We consider a range of BTEC qualifications equivalent to 3 A Levels, or in combination with A Levels or other qualifications. For Mathematics Distinction, Distinction in 2 BTEC Level 3 National Extended Certificates plus A in A Level Mathematics
IB37 points37 points overall, including 5 in Higher Level Mathematics (either Analysis and Approaches or Applications and Interpretations), or 6 in Standard Level Mathematics (Analysis and Approaches).5 in Higher Level Mathematics
Scottish HighersABBB—
Advanced HighersA in Mathematics plus—
Years 1–4

What do you study?

6compulsory modules in year 1

Compulsory modules this year: digital & ict skills 40% · engineering & manufacturing 22% · mathematics & statistics 20% · natural sciences 14%.

Module — one course unit, usually a term or a year long; “core” means everyone takes it. One UK credit is about ten hours of study; a full year is 120 credits.

York course page · optional modules vary by year

Year 1 · 6 core · 120 credits ≈ 1,200 hours
  • Systems and Devices 1: Introduction to Computer Architectures
    What you learn (16)
    • identify the purpose of core hardware components in a computer system
    • describe common binary data types used to represent values
    • convert values between different binary data representations
    • perform arithmetic operations on binary represented data
    • translate logical expressions into gate-level circuit designs
    • describe the function of logical building blocks used in processors
    • describe the limitations of logical building blocks used in processors
    • describe the von Neumann model of computer architecture
    • explain the stages of the fetch-execute cycle in instruction processing
    • explain how processor operations implement high-level sequential constructs
    • explain how processor operations implement high-level conditional constructs
    • explain how processor operations implement high-level iterative constructs
    • construct a basic computer system with CPU, memory and I/O
    • explain the roles of assemblers, compilers and linkers in software development
    • use a software toolchain to develop programs for a custom system
    • identify potential security vulnerabilities arising from architecture design choices
    COM00011C 20 cr
  • Theory 1: Mathematical Foundations of Computer Science
    What you learn (16)
    • explain why mathematical foundations underpin safe and secure systems
    • define standard mathematical notation used in discrete mathematics
    • interpret mathematical notation to describe discrete mathematics concepts
    • apply mathematical notation to represent discrete mathematics concepts
    • describe the syntax and semantics of propositional and predicate logic
    • construct natural deduction proofs for logical formulae
    • assess satisfiability and other key properties of logical formulae
    • construct sets of elements according to given criteria
    • calculate cardinalities and combinations of sets
    • apply set theoretic relations and operations to solve problems
    • define formal properties of different classes of graphs
    • illustrate examples of distinct graph classes such as directed and acyclic graphs
    • relate graph classes to real-world computational problems
    • construct binary relations to represent knowledge
    • identify subclasses of relations such as functions and injections
    • describe how logic and set theory concepts are realised in programming languages
    COM00013C 20 cr
  • Theory 2: Formal Languages and Automata
    What you learn (18)
    • describe formal languages, automata and grammars
    • illustrate relationships between languages, automata and grammars
    • construct finite automata including deterministic and non-deterministic forms
    • construct pushdown automata including deterministic and non-deterministic forms
    • construct turing machines
    • distinguish classes of automata and their accepted languages
    • apply operations to transform automata
    • convert between different types of automata
    • convert grammars into automata for regular languages
    • convert grammars into automata for context-free languages
    • demonstrate ambiguity in a given grammar
    • apply the pumping lemma to prove a language is not regular
    • apply the pumping lemma to prove a language is not context-free
    • describe the structure of the chomsky hierarchy
    • identify practical computing applications of regular languages
    • identify practical computing applications of context-free languages
    • use automata theory to build lexers
    • use automata theory to build parsers
    COM00014C 20 cr
  • Software 1: Foundations of Programming for Computer Science
    What you learn (12)
    • describe core concepts of procedural programming
    • write small procedural programs to meet specified requirements
    • relate program syntax to its semantics and analyse execution outcomes
    • implement custom data structures to represent process states
    • translate pseudocode algorithms into working code
    • develop programs incrementally using tests to verify each stage
    • store data using built-in collection types
    • read and write data from CSV and JSON files
    • use a software development environment to write and manage code
    • identify and fix bugs in code using a debugging tool
    • organise code according to software engineering principles
    • document the design and implementation of code
    COM00015C 20 cr
  • Software 2: Object-Oriented Data Structures and Algorithms
    What you learn (18)
    • assemble data and methods into classes applying encapsulation
    • integrate standard library code into own programs
    • write code that satisfies given interface specifications
    • test code to verify it meets interface requirements
    • debug programs by identifying and fixing faults
    • structure program code according to software engineering standards
    • produce documentation explaining code design and implementation
    • generate documentation automatically using programming tools
    • analyse problems to design algorithms for simple tasks
    • explain how algorithms and programs operate
    • implement small programs based on algorithmic designs
    • calculate worst-case running time using asymptotic analysis
    • categorise sorting and searching algorithms by efficiency
    • compare abstract data structures such as lists and graphs
    • select appropriate data structures for design problems
    • apply greedy and dynamic programming design paradigms
    • justify choice of algorithmic paradigm for a problem
    • explain the concept and benefit of approximation algorithms
    COM00016C 20 cr
  • Human-Computer Interaction
    What you learn (10)
    • explain why user-centred focus matters in system design and evaluation
    • apply user-centred methods across design, study and evaluation stages
    • describe how human psychology influences interactive system design
    • analyse user data to identify design implications
    • evaluate user insights to justify design decisions
    • create digital and physical prototypes using prototyping tools
    • test prototypes against evidence-based design decisions
    • describe ethical considerations relevant to technology design and use
    • describe ethical procedures for collecting data from participants
    • describe how user contexts and capabilities affect system design
    COM00018C 20 cr
Year 2 · 6 core · 120 credits ≈ 1,200 hours
  • Systems and Devices 3: Advanced Computer Systems
    What you learn (5)
    • explain differences between multiprocessor and single-processor hardware architectures
    • develop software applications designed for multiprocessor architectures
    • optimise software to exploit advanced processor features
    • design memory layouts for data structures in software
    • implement program code to access and manipulate memory-based data structures
    COM00018I 20 cr
  • Engineering 1: Systems and Software Engineering
    What you learn (16)
    • explain software engineering terminology and process models
    • apply lifecycle and process models to support a project
    • elicit user and system requirements from stakeholders
    • document user and system requirements clearly
    • design software architecture using object-oriented principles
    • implement object-oriented software from a design
    • estimate project risk to inform decision-making
    • produce realistic project effort and time estimates
    • use continuous integration tools in software development
    • collaborate effectively within a team to complete a project
    • apply software licensing models to project artefacts
    • incorporate third-party software reuse into a project
    • address cyber-security issues throughout the development lifecycle
    • evaluate ethical considerations in software engineering practice
    • write documentation for stages of the engineering lifecycle
    • deliver presentations on project progress and outcomes
    COM00019I 20 cr
  • Intelligent Systems: Machine Learning and Optimisation
    What you learn (11)
    • distinguish between strong, weak and general artificial intelligence
    • describe the relationship between computation and artificial intelligence
    • differentiate machine learning from the broader field of artificial intelligence
    • calculate partial derivatives of multivariate functions
    • apply linear regression to model relationships between variables
    • apply logistic regression to classification problems
    • explain the cause and effect of overfitting in machine learning models
    • apply regularisation techniques to prevent overfitting
    • train neural network weights using the backpropagation algorithm
    • analyse ethical arguments concerning artificial intelligence applications
    • evaluate privacy implications arising from machine learning systems
    COM00026I 20 cr
  • Theory 3: Computability, Complexity and Logic
    What you learn (14)
    • design a turing machine to recognise a semi-decidable language
    • compute a partial function using a turing machine
    • prove unsolvability of a problem via reduction from a known unsolvable problem
    • prove decidability of a problem by constructing a decision procedure
    • analyse the time complexity of a turing machine
    • analyse the space complexity of a turing machine
    • construct proofs using natural deduction rules
    • determine the truth value of a formula in a given model
    • explain limitations of formal logic
    • explain program behaviour using structural operational semantics
    • reason about program correctness using preconditions and postconditions
    • reason about loop behaviour using invariants in hoare logic
    • distinguish between partial and total correctness of programs
    • apply extended hoare logic laws to prove program termination
    COM00027I 20 cr
  • Data: Introduction to Data Science
    What you learn (12)
    • distinguish between data types produced in science, engineering and design contexts
    • apply strategies to ensure the quality of collected data
    • retrieve data from diverse sources and file formats
    • apply inferential statistical methods to test hypotheses about data
    • analyse relationships and features within data sets using statistical procedures
    • select suitable visualisations to present data findings
    • use visual techniques to explore patterns within data sets
    • use relational and non-relational databases to store data
    • construct queries to retrieve data from different database systems
    • identify ethical issues relating to data provenance and individual privacy
    • evaluate the societal impact of data analytics practices
    • apply principles from a professional data protection code of ethics
    COM00028I 20 cr
  • Systems and Devices 2: Operating Systems, Security and Networking
    What you learn (13)
    • write application code using OS-supported concurrency, communication and I/O features
    • explain how hardware features extend basic OS structures introduced previously
    • apply basic OS resource management mechanisms for time and memory allocation
    • apply hardware and OS memory protection mechanisms including memory-mapped I/O
    • apply OS file system mechanisms to enforce information security
    • write concurrent programs at the process level
    • explain how system hardware supports and implements process-level concurrency
    • identify situations of deadlock, livelock and starvation in concurrent systems
    • apply strategies to avoid deadlock, livelock and starvation
    • explain the rationale behind the layered network model
    • develop software that communicates with other systems using OS-level networking sockets
    • describe how networked architectures integrate into an operating system
    • develop simple networked applications using operating system networking knowledge
    COM00029I 20 cr
Year 3 · 6 core, 17 optional · 140 credits ≈ 1,400 hours
  • Computer Science Project (Cyber Security topic)
    What you learn (15)
    • apply advanced technical skills in a chosen specialist area building on theory
    • design a computer systems engineering solution to a given problem
    • implement a designed computer systems engineering solution
    • evaluate the outcomes of an engineering project against its objectives
    • apply established research methods to generate new knowledge
    • interpret findings produced through recognised research techniques
    • compare alternative approaches to a project problem
    • justify the chosen approach at each project stage
    • identify project tasks feasible within time and resource constraints
    • structure a written project report clearly according to set criteria
    • reference sources to a publishable academic standard
    • critically evaluate the work undertaken and methods applied in the report
    • explain legal, ethical, social and professional issues relevant to the project
    • propose mitigation strategies for identified ethical or professional risks
    • summarise the context, methods and results of a project for a general audience
    COM00015H 40 cr
  • Quantum Computation
    What you learn (7)
    • explain the potential advantages of quantum computation
    • identify the limitations and constraints of quantum computation
    • apply quantum gate operations to evolve quantum states
    • calculate measurement outcomes for given quantum states
    • design and analyse quantum computational circuits
    • explain key quantum algorithms and their significance
    • simulate quantum algorithms acting on quantum states
    COM00042H 20 cr
  • Cryptography Theory and Practice
    What you learn (8)
    • explain core concepts of symmetric-key cryptography
    • explain core concepts of public-key cryptography
    • apply informal definitions of security properties to cryptographic constructions
    • apply formal definitions of security properties to cryptographic constructions
    • analyse the theoretical security of cryptographic constructions
    • analyse the practical efficiency of cryptographic constructions
    • assess whether a cryptographic algorithm meets specified security requirements
    • assess whether a cryptographic protocol meets specified security requirements
    COM00048H 20 cr
  • Human Factors: Technology in Context
    What you learn (12)
    • explain how human characteristics influence safe system operation
    • describe the role of human factors in effective system maintenance
    • locate relevant academic research on human-technology interaction issues
    • apply academic research findings to analyse human-technology issues
    • identify techniques for analysing human reliability and error
    • apply human error analysis techniques to a given scenario
    • critique the suitability of human error analysis methods
    • identify techniques for security analysis of interactive systems
    • apply security analysis techniques to address authentication and privacy issues
    • critique security analysis techniques for identifying foreseeable misuse
    • use ethical frameworks to investigate human-machine interaction issues
    • apply design techniques to evaluate ethical concerns in interactive systems
    COM00054H 20 cr
  • Network Security
    What you learn (6)
    • describe core principles underlying cyber security in networked systems
    • identify strengths and weaknesses of network security mechanisms
    • identify major threats and attacks affecting systems and networks
    • analyse threats across different architectures and threat models
    • design control solutions to mitigate network security risks
    • evaluate alternative security solutions across different contexts
    COM00056H 20 cr
  • Ethical Hacking, Analysis and Investigation
    What you learn (6)
    • explain core principles underlying cyber security in computing systems
    • identify strengths and weaknesses of network security mechanisms
    • describe major threats and attacks affecting systems and networks
    • relate attack types to different architectures and threat models
    • analyse control solutions used to secure networks
    • evaluate the merits of alternative security solutions across contexts
    COM00064H 20 cr
17 optional modules
  • Embedded Systems Design and Implementation
    What you learn (16)
    • explain why embedded computer systems are needed in various applications
    • identify requirements imposed on a system by its application scenario
    • implement an embedded system based on a design specification
    • validate the functionality of an implemented embedded system
    • describe different levels of abstraction used in embedded system design
    • select appropriate abstraction levels for each design stage
    • analyse hardware/software implementation trade-offs for a given application
    • apply partitioning and mapping techniques to embedded system design
    • evaluate design options using trade-off evaluation techniques
    • write programs for platforms with constrained performance and energy resources
    • optimise code for limited memory and storage capacity
    • design a custom hardware architecture for a specific application
    • evaluate the performance of a custom hardware architecture
    • explain methods for improving and assuring timing properties of real-time systems
    • apply priority assignment techniques to real-time task scheduling
    • perform schedulability analysis for real-time tasks
    COM00003H 20 cr
  • High-Performance Parallel and Distributed Systems
    What you learn (10)
    • write parallel programs for shared memory architectures
    • apply common parallel programming paradigms to practical problems
    • identify metrics suitable for evaluating application and system performance
    • write parallel programs for distributed memory architectures
    • apply parallel programming libraries to implement distributed solutions
    • explore design choices available in parallel and distributed system architectures
    • describe key issues in GPU programming for parallel computation
    • describe considerations of high-speed networking and I/O in system design
    • evaluate the performance of different HPC development approaches
    • evaluate the portability and productivity trade-offs of HPC approaches
    COM00036H 20 cr
  • High-Integrity Systems Engineering
    What you learn (9)
    • identify key challenges in designing critical systems
    • explain issues arising when implementing critical systems
    • apply fault-tree analysis to assess system safety
    • apply failure analysis techniques to validate system designs
    • discuss technical issues related to high-integrity engineering
    • discuss social issues related to high-integrity engineering
    • contribute ideas during brainstorming sessions on failure scenarios
    • analyse documented examples of past system failures
    • describe software engineering concepts used in critical system development
    COM00040H 20 cr
  • Deep Learning
    What you learn (9)
    • explain probability theory as a foundation for machine learning models
    • describe manifold embedding techniques for dimensionality reduction
    • apply kernel methods to transform data representations
    • apply Bayesian regression methods to predict continuous outcomes
    • apply Bayesian classification methods to categorise data
    • apply Bayesian clustering methods to group unlabelled data
    • identify key architectures used in deep learning
    • apply gradient-based optimisation algorithms to train models
    • compare variants of optimisation algorithms used in model training
    COM00049H 20 cr
  • AI Search and Logic
    What you learn (11)
    • formulate a search problem using states, actions and a goal
    • identify a suitable heuristic for a search problem
    • translate a scenario into propositional logic statements
    • apply logical inference to derive conclusions from encoded statements
    • formulate a discrete optimisation problem as a constraint model
    • solve a constraint model using a constraint programming tool
    • justify the choice of search algorithm over alternatives
    • select an adversarial search method suited to a given game
    • design a heuristic to support adversarial search when required
    • describe algorithms used in SAT, local search and constraint solvers
    • apply solver algorithms to small worked examples
    COM00050H 20 cr
  • Autonomous Robots
    What you learn (7)
    • describe levels of autonomy achievable in robotic systems
    • discuss safety considerations in designing and deploying autonomous robots
    • evaluate ethical implications of autonomous robotic system deployment
    • explain methodologies used to engineer autonomous robotic systems
    • describe how modern robotics middleware is applied in practice
    • build an autonomous robotic system to solve a given task
    • evaluate the strengths and weaknesses of a built robotic solution
    COM00052H 20 cr
  • Engineering 2: Automated Software Engineering
    What you learn (15)
    • explain core concepts of modelling and metamodelling
    • apply modelling practices to represent software systems
    • build domain-specific models and metamodels for a given problem
    • execute model management operations to coordinate models
    • describe design principles underlying data-intensive software architectures
    • evaluate architecture characteristics such as availability, scalability and security
    • relate organisational characteristics to system architecture decisions
    • structure data-intensive systems using independent microservices
    • assess benefits and challenges of microservice-based architectures
    • package system components as containers for reproducible deployment
    • coordinate containers to operate together in a scalable system
    • describe assurance practices for developing and deploying large systems
    • identify testing and hardening techniques for data-intensive systems
    • explain how model-driven engineering fits within broader system engineering processes
    • relate model-driven engineering practices to organisational policies
    COM00055H 20 cr
  • Qualitative Approaches to Investigating UX
    What you learn (11)
    • select an appropriate qualitative methodology for a research question
    • justify the choice of a qualitative methodology
    • identify the epistemological assumptions underlying qualitative methods
    • explain how epistemological positions shape qualitative research choices
    • explain the influence of the researcher's position on the research process
    • evaluate research methods against standards of rigour and validity
    • compare methods used across different qualitative studies
    • present findings from a qualitative analysis appropriate to the chosen method
    • discuss the implications of analysis results for the research question
    • describe key principles of ethical conduct in research
    • describe key principles of data governance in research
    COM00058H 20 cr
  • Governance of Data Science
    What you learn (9)
    • explain the goals underlying governance of data science projects
    • analyse governance challenges arising in data science projects
    • describe governance frameworks relevant to data science practice
    • describe legislation and professional codes affecting data science
    • identify governance frameworks applicable to a given data science project
    • interpret the implications of different governance frameworks for a project
    • design a data science project that complies with governance requirements
    • conduct a data science project in line with applicable governance standards
    • identify shortcomings in a data science project against governance standards
    COM00063H 20 cr
  • Player Experiences in Digital Games
    What you learn (6)
    • describe the range of factors that shape player experience in digital games
    • select suitable evaluation methods for different types of player experience
    • run a playtesting session with participants
    • report findings from a playtesting session
    • compare the different ways digital games can influence players
    • design an evaluation plan for an applied game
    COM00065H 20 cr
  • Research Methods in Computer Science
    What you learn (5)
    • identify a gap in existing research evidence through a literature review
    • evaluate the validity and reliability of research methods
    • apply responsible research principles to a research project
    • analyse quantitative data using inferential statistical tests
    • present findings of a research project
    COM00066H 20 cr
  • Cloud based Data Analysis
    What you learn (7)
    • explain core concepts of cloud computing
    • analyse benefits and limitations of adopting cloud computing
    • describe the structure and components of a data ecosystem
    • evaluate performance requirements for processing large-scale datasets
    • build machine learning applications on cloud infrastructure
    • monitor the performance of deployed cloud-based analytics systems
    • design a cloud-based data analytics service to meet specified needs
    COM00068H 20 cr
  • Natural Language Processing
    What you learn (13)
    • describe the process of splitting text into tokens
    • explain how part-of-speech tagging assigns grammatical categories to words
    • explain how parsing determines the syntactic structure of sentences
    • build a text classification pipeline using NLP techniques
    • build a named entity recognition system
    • build a sentiment analysis system using NLP methods
    • apply word embedding techniques to represent language meaning numerically
    • apply n-gram models to estimate word sequence probabilities
    • apply recurrent neural networks to model sequential language data
    • evaluate NLP model outputs using standard performance metrics
    • assess the limitations of NLP models using benchmark datasets
    • describe how classical statistical methods contributed to large language model development
    • describe how neural approaches underpin modern large language models
    COM00069H 20 cr
  • Large Language Models
    What you learn (9)
    • critically assess chain-of-thought reasoning methods in modern models
    • describe training, fine-tuning and alignment techniques used to develop language models
    • evaluate explainability approaches and evaluation metrics for language models
    • use modern software frameworks to implement language model applications
    • discuss scalability challenges of deploying large-scale language models
    • measure the energy consumption of training and deploying language models
    • interpret environmental impact data to inform sustainable model development decisions
    • identify ethical concerns relating to bias and fairness in language models
    • address ethical issues of language model use across real-world scenarios
    COM00070H 20 cr
  • Engineering LLM-Based Agents and Applications
    What you learn (13)
    • describe common architectural patterns for combining LLMs with planning and memory modules
    • compare design patterns integrating retrieval and external tool use in LLM agents
    • build an intelligent software agent using LLM components
    • deploy a functioning agent system to a working environment
    • design an autonomous workflow combining LLM reasoning with retrieval mechanisms
    • construct multi-step action plans that link reasoning to execution
    • implement a practical agent application such as a task assistant or planner
    • integrate external APIs and services into an agent application
    • evaluate agent performance using qualitative and quantitative measures
    • analyse limitations of agent systems relating to reliability and latency
    • identify safety and ethical risks arising in agent design
    • propose mitigations for hallucination and over-reliance on automated agents
    • explain how systems thinking supports evaluation of LLM performance in practice
    COM00071H 20 cr
  • Legal Practice, Technology and Computer Science
    What you learn (15)
    • analyse a real-world context to find where AI could improve outcomes for users
    • apply design thinking methods to uncover procedural and technical issues in a problem
    • identify legal, ethical and user-related issues within a given problem
    • explain discipline-specific concepts clearly in writing to non-specialist colleagues
    • present discipline-specific concepts verbally to colleagues from other fields
    • collaborate with colleagues from different disciplines on a shared task
    • combine principles from multiple disciplines to devise possible solutions
    • evaluate proposed solutions against defined user requirements
    • develop a budgeted plan for implementing an agreed solution
    • produce a persuasive written report advocating a chosen solution
    • deliver a persuasive oral presentation advocating a chosen solution
    • describe how AI and technology can be applied to improve service delivery
    • explain the potential benefits and harms arising from AI-driven technologies
    • reflect on personal learning gains achieved during the module
    • reflect on challenges encountered during cross-disciplinary collaboration
    LAW00062H 20 cr
  • Game Design & Development in Real-Time Engines
    What you learn (11)
    • configure technical components within a real-time game engine
    • investigate design principles for 3D game environments
    • justify selected design principles against creative objectives
    • build a 3D game using a real-time engine
    • apply technical and design principles to produce efficient game experiences
    • evaluate the quality of externally sourced game assets
    • modify external assets for integration into a game project
    • critique the player experience delivered by a 3D game
    • validate the coherence and engagement of a game design
    • create a cohesive 3D experience integrating technical and narrative elements
    • implement cinematic techniques to enhance player immersion
    TFT00102H 20 cr
Year 4 · 4 core, 14 optional · 100 credits ≈ 1,000 hours
  • Group Project (Integrated Masters)
    What you learn (17)
    • evaluate issues affecting real-world software engineering projects
    • reflect on challenges encountered during a software project
    • collaborate productively within a project team
    • take ownership of an assigned component of a team solution
    • communicate with clients to clarify their requirements
    • investigate open-ended problems to inform solution design
    • design an innovative software solution to an unstructured problem
    • identify the key features of a proposed software solution
    • present the main characteristics of a proposed solution to stakeholders
    • produce technical documentation suited to different audiences
    • present technical information clearly to varied audiences
    • manage project time and resource constraints
    • identify risks affecting a software engineering project
    • analyse the potential impact of identified project risks
    • develop strategies to manage project risks
    • evaluate personal contribution to team performance
    • evaluate the overall performance of the project team
    COM00138M 40 cr
  • Ethical Hacking, Analysis and Investigation
    What you learn (5)
    • explain core principles underpinning cyber security in systems and networks
    • analyse strengths and weaknesses of network security mechanisms
    • analyse major threats and attacks across different system architectures
    • design control solutions to secure networked systems
    • evaluate the relative merits of different security solution approaches
    COM00182M 20 cr
  • Cryptography Theory and Practice
    What you learn (9)
    • explain core concepts of symmetric-key cryptography
    • explain core concepts of public-key cryptography
    • apply intuitive security notions to cryptographic constructions
    • apply formal security definitions to cryptographic applications
    • analyse the theoretical security of cryptographic constructions
    • analyse the practical efficiency of cryptographic constructions
    • assess whether cryptographic algorithms satisfy application security needs
    • assess whether cryptographic protocols satisfy application security needs
    • propose cryptographic tools suited to specific application security needs
    COM00183M 20 cr
  • Network Security
    What you learn (6)
    • explain core concepts underpinning cyber security in systems and networks
    • analyse strengths and weaknesses of network security mechanisms
    • analyse major threats and attacks affecting systems and networks
    • evaluate how different architectures and threat models affect attack scenarios
    • design control solutions to mitigate network security risks
    • evaluate the relative merits of alternative security solutions in different contexts
    COM00188M 20 cr
14 optional modules
  • Computer Vision and Graphics
    What you learn (8)
    • explain how images are formed through optical and sensor processes
    • describe how image formation is modelled computationally for vision tasks
    • describe how image formation is simulated within computer graphics systems
    • describe rendering techniques used to generate synthetic images
    • implement a rendering algorithm that models light and material interaction
    • apply methods to estimate 3D shape from one or more images
    • apply machine learning techniques to interpret image content
    • compare human and computational approaches to visual interpretation
    COM00167M 20 cr
  • Quantum Computation
    What you learn (9)
    • explain the potential advantages of quantum computation over classical computation
    • identify the practical and theoretical limitations of quantum computation
    • apply quantum gate operations to evolve quantum states
    • calculate the outcome of measurements performed on quantum states
    • design and analyse quantum computational circuits
    • explain key quantum algorithms and their significance
    • simulate quantum algorithms on quantum states
    • apply core concepts and techniques of quantum information science
    • simulate quantum cryptography and quantum teleportation processes
    COM00168M 20 cr
  • High-Integrity Systems Engineering
    What you learn (9)
    • explain key challenges in designing critical systems
    • describe implementation issues affecting high-integrity systems
    • apply fault-tree analysis to assess system safety
    • apply failure analysis methods to validate system designs
    • evaluate technical challenges in high-integrity engineering
    • evaluate social implications of high-integrity engineering practice
    • collaborate in group discussions generating failure scenarios
    • analyse documented system failure case studies with peers
    • formulate engineering principles for developing critical systems
    COM00173M 20 cr
  • High-Performance Parallel and Distributed Systems
    What you learn (8)
    • develop parallel programs for shared memory systems
    • select suitable metrics for evaluating system performance
    • apply performance metrics to assess applications and systems
    • develop parallel programs for distributed memory systems
    • explore design options for parallel and distributed systems
    • describe issues in GPU programming, networking and IO for HPC
    • evaluate performance, portability and productivity of HPC approaches
    • demonstrate trade-offs between different HPC development approaches
    COM00174M 20 cr
  • Embedded Systems Design and Implementation
    What you learn (15)
    • explain the rationale for using embedded computer systems
    • identify application-specific requirements imposed on embedded systems
    • implement an embedded system based on a design specification
    • validate an embedded system against its design requirements
    • describe levels of abstraction used in embedded system design
    • select appropriate abstraction levels for a given design stage
    • analyse hardware/software implementation trade-offs for a system
    • apply partitioning and mapping techniques to evaluate design options
    • write programs for resource-constrained computing platforms
    • design a custom hardware architecture for an embedded application
    • evaluate the performance of a custom hardware architecture
    • trace design decisions to final system performance metrics
    • use measurement and instrumentation tools to assess system performance
    • explain methods for assigning task priorities in real-time systems
    • apply schedulability analysis to verify timing properties
    COM00175M 20 cr
  • Evolutionary and Adaptive Computing
    What you learn (5)
    • design evolutionary systems to address a complex problem
    • explain biological principles underpinning evolutionary algorithms
    • define agent behaviours suited to natural selection
    • model agent populations using hand-written and data-driven methods
    • evaluate the performance of evolutionary and multi-agent systems
    COM00177M 20 cr
  • Research Methods in Computer Science
    What you learn (6)
    • apply responsible research and innovation principles to justify a research gap
    • structure a formal literature review to present a research gap
    • evaluate the validity of research methods used in existing or new studies
    • analyse quantitative research data using inferential statistical tests
    • interpret quantitative findings in relation to a research objective
    • present the results of a research project
    COM00180M 20 cr
  • Qualitative Approaches to Investigating UX
    What you learn (12)
    • select an appropriate qualitative research methodology for a given study
    • justify the choice of a qualitative methodology for a research question
    • describe the epistemological assumptions underlying different qualitative methods
    • acknowledge how epistemological stance shapes choice of qualitative method
    • explain the researcher's influence on the research process
    • evaluate how researcher positionality affects research outcomes
    • compare study methods against established standards of rigour and validity
    • critique the methodological choices used in qualitative studies
    • report findings from a qualitative analysis using an appropriate format
    • discuss the significance of analytic findings in relation to the research method
    • identify ethical issues arising in qualitative research practice
    • analyse data governance challenges within qualitative research
    COM00181M 20 cr
  • Intelligent Systems: Probabilistic and Deep Learning
    What you learn (10)
    • apply probabilistic concepts to solve machine learning problems
    • describe manifold embedding techniques for dimensionality reduction
    • describe kernel methods used in machine learning
    • apply Bayesian methods to regression problems
    • apply Bayesian methods to classification problems
    • apply Bayesian methods to clustering problems
    • identify the main architectures used in deep learning
    • apply gradient descent and its variants to optimise models
    • operate systems designed to process large-scale training datasets
    • discuss challenges and solutions in handling large-scale datasets
    COM00184M 20 cr
  • Autonomous Robotic Systems Engineering
    What you learn (6)
    • describe degrees of autonomy achievable by robotic systems
    • evaluate safety and ethical implications of autonomous robotic systems
    • explain methodological principles for engineering autonomous robots
    • use modern robotics middleware in an application
    • implement an autonomous robotic solution for a defined problem
    • evaluate the strengths and weaknesses of an implemented robotic solution
    COM00186M 20 cr
  • Engineering 2: Automated Software Engineering
    What you learn (6)
    • explain principles of modelling and metamodelling
    • implement and orchestrate domain-specific models and metamodels
    • explain design principles for data-intensive software systems
    • structure data-intensive systems as independent microservices
    • deploy data-intensive system components as orchestrated containers
    • discuss assurance practices such as testing for large data systems
    COM00187M 20 cr
  • Human Factors: Technology in Context
    What you learn (13)
    • explain how human characteristics and mental models affect safe system operation
    • describe the influence of human factors on secure and effective maintenance of systems
    • evaluate the quality of a system design against safety and security criteria
    • propose solutions to identified security and safety problems in a design
    • locate relevant academic research on human-technology interaction issues
    • apply academic research findings to analyse human-technology interaction issues
    • identify techniques for analysing human reliability and error
    • apply human reliability and error analysis techniques to a system scenario
    • critique the suitability of human reliability and error analysis techniques
    • identify techniques for analysing authentication, privacy and misuse risks
    • apply security analysis techniques to evaluate authentication and privacy risks
    • critique security analysis techniques for addressing foreseeable misuse
    • use design frameworks to investigate ethical issues in human-machine interaction
    COM00189M 20 cr
  • Player Experiences in Digital Games
    What you learn (6)
    • explain the range of factors shaping player experience
    • justify selection of evaluation methods for varied player experiences
    • carry out a playtesting session with participants
    • report findings from a playtesting session
    • critically discuss how digital games influence players
    • design an evaluation plan for an applied game
    COM00190M 20 cr
  • AI Problem Solving with Search and Logic
    What you learn (13)
    • formulate a search problem using states, actions and goal conditions
    • identify a suitable heuristic for a given search problem
    • translate a scenario into propositional logic statements
    • perform logical inference on a propositional representation using a sat solver
    • model a discrete optimisation problem using constraint programming
    • solve a discrete optimisation problem with a constraint programming system
    • justify the choice of a search algorithm over alternatives
    • apply a chosen search algorithm to solve a problem
    • select an adversarial game-tree search method for a given game
    • design a heuristic to support adversarial search when needed
    • apply an adversarial search method to solve a game
    • describe common algorithms used in sat, local search and constraint solvers
    • apply solver algorithms to small example problems
    COM00191M 20 cr

“What you learn” restates each module’s published learning outcomes in our own words, as short skill statements in the same form as the GCSE and A level curriculum, with the help of an AI model; fields of knowledge follow the twelve fields of the knowledge sphere. The university’s module page, linked from each title, is the authoritative description.

After graduating

Where does it lead?

£40,500median pay three years after graduating
Lower quarter£32k
Median£41k
Upper quarter£54k

Median — the middle earner: half earned more, half less. Pay is for graduates of this subject at this university who finished in 2016-18, not adjusted for inflation; based on 135 graduates.

Discover Uni dataset (HESA and Office for Students, CC BY 4.0, contains HESA data); earnings from the Longitudinal Education Outcomes data (Department for Education) · aggregation level 12, 13, 22

Half of graduates earned between £32,000 and £54,000. Five years on, the median is £54,000. 90% were in work or further study 15 months after finishing; 88% of those in work were in professional or managerial jobs.

All outcome figures7
MeasureValueBased on
Continue after year 12% left94%190
In work or study, 15 months on5% studying90%75
Professional or managerial job88%60
Pay 15 months on, median£38,00045
Pay 3 years on, median£40,500135
Pay 5 years on, median£54,000130
Money

What does it cost?

£10,050a year for UK students, 2027/28 entry

Tuition fee loan — paid straight to the university; repayments start the April after you leave, at 9% of income above the threshold. UK fees are capped by government and rise with inflation; placement and study-abroad years are usually charged at a lower rate.

York fees page · source

About £40,200 in fees over 4 years, covered by a tuition fee loan you repay only when earning above the threshold. International students: £33,500 a year (2027/28).

National Student Survey 2025-26

What do students say?

93%agreed the course was good overall (question 26)

NSS — a yearly survey of final-year students at every UK university; 64% of this course’s final year answered. Small groups can swing a lot year to year.

National Student Survey, via Discover Uni · 125 students answered

Highest: 95% agreed on question 21; lowest: 48% on question 14.

All questions26
QuestionAgree
Question 186%
Question 279%
Question 388%
Question 480%
Question 582%
Question 683%
Question 766%
Question 861%
Question 980%
Question 1060%
Question 1179%
Question 1274%
Question 1387%
Question 1448%
Question 1594%
Question 1687%
Question 1776%
Question 1885%
Question 1994%
Question 2088%
Question 2195%
Question 2283%
Question 2374%
Question 2463%
Question 2579%
Question 2693%

Question texts are published by the Office for Students; the dataset carries only the question numbers.

Modules, entry requirements and fees are facts read from University of York’s course page on 2026-09-19 and may change; the university’s page is authoritative. Descriptions are not reproduced. Outcome figures are from the Discover Uni dataset. University of York is a trade mark of the university; sch.today is independent of it.