top of page

Exam Board:
OCR A-Level

Specification:
Computer Science H446

2.2 - Computational Methods

Watch on YouTube:
Problem recognition
Decomposition
Divide and conquer
Abstraction
Backtracking
Data mining
Heuristics
Performance modelling
Pipelining
Visualisation

Computational methods are techniques to analyse problems and design efficient, effective solutions.

Problem Recognition

noun-problem-7977264e.png

Problem recognition is the process of identifying that a problem exists and understanding its nature before attempting to solve it. It involves determining the aims of the task, identifying constraints and requirements, and clarifying what inputs, outputs and processes are expected from the solution.

 

Effective problem recognition ensures the developer understands the real-world context and avoids solving the wrong problem or missing key details. It is the essential first step that guides all later stages of computational thinking and system design.

Decomposition

noun-204135f.png

Decomposition involves breaking a complex system or task into smaller, more manageable components that are easier to design, implement and test. Each sub-problem should ideally be independent and solve a specific part of the overall task, which helps reduce complexity and supports modular program design.

 

This approach enables different developers to work on different components simultaneously and simplifies debugging, maintenance and future updates. By working through smaller logical parts, the full problem becomes far more approachable and structured.

Divide and Conquer

noun-merge-11510e.png

Divide and conquer is a technique that splits a problem into smaller sub-problems of the same type, solves them (often using recursion), and then combines the solutions to produce the final answer. This approach can significantly improve efficiency by reducing large input sizes into more manageable chunks, as seen in algorithms like quicksort.

​​

Divide and conquer algorithms include a binary search and
a merge sort. The time complexity of divide and conquer
algorithms is logarithmic O(log n) - allowing complex problems to be solved much quicker than other algorithms.

Abstraction

noun-1480843f.png
noun-1480843e.png

Abstraction means removing unnecessary details to focus only on the most important features of a problem or system. It allows programmers to create simplified models that capture essential behaviour without becoming overwhelmed by irrelevant complexities.

 

Abstraction enables generalisation, reusable designs and clearer reasoning about how components interact. In computational contexts, abstraction also highlights the difference between real-world systems and their simplified computational models.

Backtracking

noun-maze-5904062e.png

Backtracking is used to explore possible solutions to a problem by building a partial solution and abandoning it as soon as it becomes clear it cannot succeed. It works by trying an option, checking whether it leads towards a valid solution, and backtracking to try a different path if a dead end is reached.

 

This approach is used in constraint-based problems such as maze solving. While powerful, backtracking can be computationally expensive, so it often benefits from heuristics or pruning strategies.

Data Mining

noun-data-mining-7410384e.png

Data mining is the process of extracting useful patterns, trends and relationships from large datasets. It enables organisations to identify hidden insights, predict behaviours and support data-driven decision-making, particularly in fields such as marketing, healthcare, finance and security.

 

Data mining can lead to enhanced decision-making that can result in innovation, a competitive advantage against similar organisations and increased revenue. It can be used to identify anomalies or unused features. However, data mining doesn't explain the patterns it can identify and it requires powerful computers with a lot of processing power to handle huge amounts of data.

Heuristics

noun-heuristic-4894755e.png

Heuristics are approximate problem-solving strategies that aim to produce good solutions quickly when exact, optimal methods are too slow or computationally impractical. They rely on rules of thumb to guide searches through very large solution spaces efficiently.

 

Heuristics are widely used in artificial intelligence, optimisation tasks and complex search algorithms such as A*, where perfect accuracy is less important than fast, practical solutions. The trade-off is that heuristic methods are not guaranteed to produce the optimal answer, but they dramatically reduce processing time.

Performance Modelling

Performance modelling is the process of predicting how a system or algorithm will behave under different workloads, input sizes or hardware environments. It uses tools such as mathematical analysis, simulation and Big O notation to estimate required resources such as processing time or memory use.

 

Performance modelling offers a cheaper, quicker and often safer way to test applications. For example, when a company beta tests an online game, it can trial the system with a smaller group of players and then apply performance modelling to predict how much server capacity will be needed when the game is fully released.

noun-model-optimization-6983538e.png

Pipelining

noun-pipeline-7744113e.png

Pipelining is a technique in which different stages of a process are overlapped so that multiple instructions or operations are being processed simultaneously at different stages. In CPU architecture, for example, one instruction might be fetched while another is decoded and a third is executed, increasing overall throughput without increasing clock speed.

 

Pipelining can also be used in algorithms or data-processing systems to prevent idle time in stages that operate independently. However, pipelining introduces complexity because dependencies or branch mispredictions may require a pipeline to be flushed - interrupting flow and reducing efficiency.

Visualisation

Visualisation supports the understanding of a problem by presenting information in a clearer and more accessible form than text alone. It is useful for explaining complex ideas or identifying patterns. Data can be shown visually through diagrams, graphs, trees, flowcharts or tables.

​

The advantages of visualisation include helping to model, represent, analyse or summarise complex concepts. It allows information to be communicated more clearly and in a way that is easier to interpret. It can also provide different perspectives on how a problem might be solved.

noun-visualization-7944246e.png

This page is under active development.

Check here for the latest progress update.

noun-under-construction-7744129e.png
logoheadwhite.png

Questo's Key Terms

Computational Methods: problem recognition, decomposition, divide and conquer, abstraction, backtracking, data mining, heuristics, performance modelling, pipelining, visualisation

Did You Know?

Real-time location services like Google Maps use heuristics to guess travel times using heuristics such as estimated speeds, traffic history and shortcuts to make fast but approximate route suggestions.

noun-google-maps-7803104e.png

© CSNewbs 2025

The written, video and visual content of CSNewbs is protected by copyright. © 2025
bottom of page