learningP
Log in
OCR · Computer Science A-Level · A Level

Computer Science,
one step at a time.

Specification H446. Explore a topic, practise the skill, and see where to focus next.

Try three questions →Explore the topic map ↓
510original questions
37mapped areas
OCR · Computer Science A-Level · H446
TRY IT TOGETHER · NO SIGN-UP

Three questions. See the difference.

Try three different Computer Science skills from this OCR · Computer Science A-Level route. See what went right, understand a mistake, and find a useful next step.

3questions · 3 skills

A small preview of how LearningP turns answers into a clearer learning picture for students and parents.

Original LearningP practice, aligned to specification H446. Your taster answers stay on this page and reset when you leave or reload.
YOUR TOPIC MAP

Find your starting point.

37 areas
01Structure and function of the processor
Specification reference: 1.1.1

Modern processors combine several techniques and may use a modified Harvard cache arrangement while presenting a unified address space. Real designs need not match one simplified model exactly.

Watch for: Do not describe Structure and function of the processor vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

02Types of processor
Specification reference: 1.1.2

Only the parallelisable part of a program benefits from extra cores. Sequential work, communication, synchronisation and scheduling overhead can limit the speed-up, so eight cores do not guarantee four times the performance.

Watch for: Do not describe Types of processor vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

03Input, output and storage
Specification reference: 1.1.3

Virtual storage hides the physical location of stored files or volumes, which may be remote. Virtual memory uses disk or solid-state storage as an extension to RAM and is much slower than physical memory.

Watch for: Do not describe Input, output and storage vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

04Systems software
Specification reference: 1.2.1

Shortest remaining time continually favours the process with the least estimated work left and can pre-empt the current process. Shortest job first is normally non-pre-emptive.

Watch for: Do not describe Systems software vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

05Applications generation
Specification reference: 1.2.2

Open-source licences grant specified rights to inspect, modify and redistribute source. Closed-source licences generally restrict those rights; cost, quality and support vary in both models.

Watch for: Do not describe Applications generation vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

06Software development
Specification reference: 1.2.3

Methodology selection should be justified from project characteristics: requirement stability, technical risk, regulatory needs, team size, timescale and access to stakeholders. No single model is best for every project.

Watch for: Do not describe Software development vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

07Types of programming language
Specification reference: 1.2.4

A class defines attributes and methods; an object is a concrete instance created from that definition. Different objects can hold different attribute values while sharing class behaviour.

Watch for: Do not describe Types of programming language vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

08Compression, encryption and hashing
Specification reference: 1.3.1

Asymmetric encryption uses a public/private key pair. A sender can use the recipient's public key without a prior secret exchange, while only the recipient's private key decrypts the message.

Watch for: Do not describe Compression, encryption and hashing vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

09Databases
Specification reference: 1.3.2

Record locking coordinates concurrent transactions so another transaction cannot make an incompatible change at the same time. Locks must be managed carefully to avoid excessive waiting or deadlock.

Watch for: Do not describe Databases vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

10Networks
Specification reference: 1.3.3

Client-server designs support central administration and consistent services but depend on server capacity and availability. Peer-to-peer designs distribute resource provision but are harder to manage consistently.

Watch for: Do not describe Networks vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

11Web technologies
Specification reference: 1.3.4

PageRank does not count every link equally. Rank passed by a source depends on that source's own rank and how many outgoing links share it, so one authoritative link can outweigh many weak links.

Watch for: Do not describe Web technologies vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

12Data types
Specification reference: 1.4.1

Hexadecimal is a compact human-readable notation: one hex digit maps exactly to four binary bits. Changing the notation does not reduce the underlying number of stored bits.

Watch for: Do not describe Data types vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

13Data structures
Specification reference: 1.4.2

A collision occurs when distinct keys map to the same index. The table must preserve both entries using a collision-resolution strategy such as separate chaining or open addressing.

Watch for: Do not describe Data structures vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

14Boolean algebra
Specification reference: 1.4.3

A Karnaugh map arranges truth-table outputs so adjacent cells differ by one input. Groups of powers of two remove changing variables and simplify the expression.

Watch for: Do not describe Boolean algebra vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

15Computing-related legislation
Specification reference: 1.5.1

A justified analysis considers whether monitoring is authorised, necessary and proportionate, how users are informed, and how collected personal data is secured and retained. Technology alone does not create legal permission.

Watch for: Do not describe Computing-related legislation vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

16Moral and ethical issues
Specification reference: 1.5.2

Responsible disclosure gives the organisation an opportunity to reduce harm while avoiding unauthorised access or premature release of exploit details. Exact legal duties depend on jurisdiction and authorisation.

Watch for: Do not describe Moral and ethical issues vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

17Thinking abstractly
Specification reference: 2.1.1

A weighted graph preserves the airports, available direct flights and fare relevant to the optimisation. Terminal appearance and airline branding do not help find the cheapest route.

Watch for: Do not describe Thinking abstractly vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

18Thinking ahead
Specification reference: 2.1.2

Reusable functions, classes or modules reduce duplicated code and can improve consistency and maintainability. Their interfaces and assumptions still require documentation and testing.

Watch for: Do not describe Thinking ahead vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

19Thinking procedurally
Specification reference: 2.1.3

Independent parts still need defined interfaces: for example input changes player state, physics updates position, scoring consumes events and display reads the resulting state.

Watch for: Do not describe Thinking procedurally vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

20Thinking logically
Specification reference: 2.1.4

A mutually exclusive selection structure evaluates conditions and follows one matching branch, avoiding execution of several commands for one choice.

Watch for: Do not describe Thinking logically vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

21Thinking concurrently
Specification reference: 2.1.5

Concurrency can improve throughput or responsiveness, but performance depends on available parallel work and correctness depends on synchronisation. Pipelining is a different technique.

Watch for: Do not describe Thinking concurrently vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

22Programming techniques
Specification reference: 2.2.1

A count-controlled loop is appropriate when the number of repetitions is known in advance. A condition-controlled loop is better when repetition depends on a changing condition.

Watch for: Do not describe Programming techniques vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

23Computational methods
Specification reference: 2.2.2

Abstraction makes the problem manageable by representing only properties needed for the computation. The modeller must still check that omitted details do not invalidate the intended route decisions.

Watch for: Do not describe Computational methods vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

24Algorithms
Specification reference: 2.3.1

Binary search compares with the middle item and eliminates half of the remaining sorted list at each step. This normally requires far fewer comparisons than a linear search on a large list.

Watch for: Do not describe Algorithms vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

25Problem identification
Specification reference: 3.1.1

A project must distinguish computable criteria from subjective judgement. A limited model may be possible if its assumptions and measurable outputs are explicit.

Watch for: Do not describe Problem identification vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

26Stakeholders
Specification reference: 3.1.2

OCR permits groups or personas; a real named end user and formal sign-off are not compulsory. The persona must still be evidence-based and relevant.

Watch for: Do not describe Stakeholders vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

27Research the problem
Specification reference: 3.1.3

Recognising limitations defines honest scope and informs success criteria and future development. It does not weaken a well-justified proposal.

Watch for: Do not describe Research the problem vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

28Specify the proposed solution
Specification reference: 3.1.4

Criteria should be both measurable and justified. An impressive but irrelevant threshold does not demonstrate that the solution meets the real need.

Watch for: Do not describe Specify the proposed solution vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

29Decompose the problem
Specification reference: 3.2.1

Useful decomposition reduces complexity and creates parts that can be designed and tested. One undifferentiated component does not expose solution structure.

Watch for: Do not describe Decompose the problem vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

30Describe the solution
Specification reference: 3.2.2

Algorithms must be detailed enough to form a complete solution and should be designed before or within an authentic iterative cycle, not reverse engineered from final code.

Watch for: Do not describe Describe the solution vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

31Describe the approach to testing
Specification reference: 3.2.3

Testing during development informs changes; post-development testing evaluates the completed solution. The evidence and purpose should be distinguishable.

Watch for: Do not describe Describe the approach to testing vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

32Iterative development process
Specification reference: 3.3.1

Retroactive documentation often misses the decisions and remedial work that demonstrate iterative development. Contemporary evidence is more persuasive and complete.

Watch for: Do not describe Iterative development process vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

33Testing to inform development
Specification reference: 3.3.2

Repeated halving is generally more efficient on large sorted data, while fitness for purpose also requires evidence that normal, boundary and absent-target cases behave correctly.

Watch for: Do not describe Testing to inform development vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

34Testing to inform evaluation
Specification reference: 3.4.1

Final robustness testing should attempt to expose failure, not simply confirm the happy path. The moderators describe testing the solution to destruction.

Watch for: Do not describe Testing to inform evaluation vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

35Success of the solution
Specification reference: 3.4.2

Development evidence shows how the solution evolved; post-development evidence demonstrates whether the final integrated feature satisfies the criterion.

Watch for: Do not describe Success of the solution vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

36Describe the final product
Specification reference: 3.4.3

Implementation alone does not prove usability. A balanced evaluation explains how well the feature supports users and where it falls short.

Watch for: Do not describe Describe the final product vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

37Maintenance and development
Specification reference: 3.4.4

Ongoing maintenance includes corrective, adaptive and preventive work. Sensitive data makes patching, recovery and access governance especially important.

Watch for: Do not describe Maintenance and development vaguely. Trace the algorithm, data or system state precisely and test boundary or failure cases.

The details, when you need them.

Your exact course

OCR · Computer Science A-Level · A Level · Computer Science · H446

Version 3.0, April 2026; current checked 28 August 2026

Source checked: 2026-08-28. The current official specification controls assessment requirements and option choices.

Can parents and students try LearningP before signing up?

Yes. This page offers three original questions from three different skills on this exact course. Each answer has an explanation, followed by a sample heatmap showing what was correct and what to revisit. No account is needed, and taster answers are not saved.

What does the three-question heatmap tell a parent?

It shows the outcome of these three answers and gives a specific skill to discuss or practise next. It is not a full assessment, a mastery score or a grade prediction. Broader practice over time is needed to understand progress.

What does the OCR · Computer Science A-Level A Level Computer Science route cover?

LearningP currently maps 37 assessed areas for specification H446. The visible topic map below is derived from the verified route; the current official specification remains controlling.

How many LearningP questions support this route?

The verified source bank contains 510 original LearningP question records for this route. Every mapped area meets the current publication minimum and passed the latest blocker and review audit.

Does LearningP reproduce official exam questions?

No. LearningP uses official specifications and assessment materials to map content and demand, while its practice questions and explanations are independently authored.

Can this page predict an exam grade?

No. LearningP reports practice evidence, coverage, strengths and gaps. It does not guarantee or automatically predict examination outcomes.

Where should current assessment information be checked?

Use the official OCR · Computer Science A-Level specification and assessment-resource pages linked on this page, together with information supplied by the learner’s school.

ONE USEFUL NEXT STEP

Make your next attempt count.

Open practice ↗