Found a great resource? Share it!
A Computer Science Extended Essay investigates a focused question about algorithms, computational systems, data structures, modelling or problem solving.
The essay must apply computational thinking and rigorous analysis, supported by appropriate data, testing, simulations or algorithmic evaluation.
A Computer Science EE must:
investigate a computational problem, algorithm, model or system
apply concepts such as efficiency, optimisation, complexity or data handling
analyse performance or behaviour through testing, modelling or comparison
use programming, simulations or theoretical reasoning appropriately
focus on computational processes rather than digital design or user interface
interpret results through computational thinking and algorithmic logic
evaluate performance, limitations and suitability of the chosen approach
Your essay should feel computational, not mathematical, design based or purely technical.
A strong topic is:
focused on a specific algorithmic, data or computational issue
supported by measurable performance variables such as time, memory or accuracy
grounded in computer science theory or algorithmic reasoning
feasible using school level programming resources
able to generate clear, analysable results
Examples of suitable topic types
comparison of pathfinding algorithms under controlled constraints
analysis of compression techniques on different data types
evaluation of hashing or searching algorithms
simulation of network behaviour or traffic flow
optimisation studies using heuristics or genetic algorithms
Examples of unsuitable topic types
software design projects focused on interface rather than computation
essays describing how to build an app without algorithmic analysis
broad digital technology topics with no measurable computational component
pure mathematics topics such as proofs or number theory
projects requiring advanced hardware or large scale datasets
Computer Science requires computational analysis, not software tutorials.
Your essay must draw upon computational data, such as:
execution time, memory usage or computational complexity measurements
accuracy or error rates for machine learning models
behavioural outputs from simulations
performance metrics comparing algorithms
results from controlled experiment runs
Avoid
subjective user feedback with no computational measurement
online code snippets used without understanding
datasets with no clear origin or structure
performance tests conducted without consistent conditions
Evidence must be interpreted using computational reasoning and algorithmic understanding.
Your methods may include:
writing and testing programs to implement specific algorithms
running controlled experiments to measure time or space complexity
modelling systems using simulations or agent based environments
analysing datasets through appropriate computational methods
comparing algorithmic approaches under defined constraints
interpreting published algorithmic performance data
The method must directly support evaluation of the computational question.
Computer Science analysis should:
interpret performance data through algorithmic principles
explain behaviour using concepts such as recursion, heuristics or data structures
account for differences in efficiency or resource use
use tables, graphs and annotated code meaningfully
remain tightly focused on the computational process under investigation
Analysis must go beyond reporting numbers and show genuine computational insight.
Evaluation may include:
limitations of code implementation or testing environment
impact of hardware constraints on results
sensitivity of algorithms to input size or data structure
comparison of theoretical and actual complexity
validity of assumptions made in simulations or models
extent to which results generalise to other contexts
A strong Computer Science EE evaluates both the strengths and limitations of the computational approach.
Avoid these issues, as they frequently lead to weak outcomes:
topics dominated by software design rather than computation
insufficient or inconsistent performance testing
projects requiring specialised servers or unavailable hardware
code borrowed from libraries without understanding
essays that drift into mathematics, design or engineering
absence of clear, measurable computational variables
algorithms tested with datasets that are too small to be meaningful
Here are high quality examples of Computer Science research questions:
How do different pathfinding algorithms compare in efficiency when applied to large grid based maps?
To what extent does file type influence the effectiveness of lossless compression algorithms?
How accurately can a simple neural network classify handwritten digits with varying training set sizes?
How does input ordering affect the performance of quicksort compared with mergesort?
To what extent can an agent based simulation model pedestrian movement in confined spaces?
Each question is focused, computational and suited to school level investigation.
Please note, the subject reports and examples are based on the previous iteration of the Extended Essay.