United Kingdom · National Curriculum Attainment Targets
Year 10 Computing
This course explores the architecture of digital systems and the logic behind modern software. Students develop robust programming skills while investigating the ethical and security implications of a hyper-connected world.

01Architecting the Machine
An investigation into the internal hardware components and the Von Neumann architecture that governs modern computing.
Examining the Fetch-Execute cycle and how registers manage data flow within the processor.
Investigating the Arithmetic Logic Unit (ALU), Control Unit (CU), and registers, and their interaction.
Distinguishing between volatile and non-volatile memory and the necessity of secondary storage.
Exploring the different types of secondary storage (HDD, SSD, optical, magnetic tape) and their applications.
Identifying various input devices and their roles in human-computer interaction, including specialized sensors.
Exploring various output devices, including screens, printers, and actuators in embedded systems.
Exploring the specialized computers found within larger mechanical or electrical systems.
Understanding the role of the operating system in managing hardware, software, and user interaction.
Investigating different types of user interfaces and the OS's role in security and file management.
Investigating the purpose of utility software such as antivirus, defragmentation, and compression tools.
Exploring data compression techniques and the importance of backup utilities.
Detailed exploration of the stored program concept and the components of the Von Neumann model.

02Logic and Algorithmic Thinking
Developing the mental models required to decompose complex problems and design efficient step-by-step solutions.
Applying abstraction to simplify complex problems by focusing on essential details.
Breaking down complex problems into smaller, more manageable sub-problems.
Identifying similarities and trends in data to develop generalized solutions.
Developing step-by-step instructions to solve problems, represented through flowcharts and pseudocode.
Comparing the efficiency of linear and binary search algorithms.
Understanding and implementing basic sorting algorithms.
Introducing more advanced, efficient sorting algorithms and their divide-and-conquer approach.
Using AND, OR, and NOT gates to create logical circuits and truth tables.
Expanding on basic gates to include XOR, NAND, and NOR, and their applications.
Converting between logic expressions, truth tables, and circuit diagrams.
Defining algorithms, their characteristics, and their importance in computing.
Introducing the concept of time complexity (Big O notation) to evaluate algorithm efficiency.

03The Art of Programming
Mastering procedural programming constructs to create functional, readable, and maintainable code.
Understanding that instructions are executed in a specific order.
Implementing 'if', 'else if', and 'else' statements to control program flow.
Using case statements (or switch statements) for multi-way branching.
Using 'for' loops to repeat a block of code a predetermined number of times.
Using 'while' loops to repeat a block of code until a condition is met.
Working with variables and constants to store and manipulate information.
Understanding fundamental data types and their appropriate use in programming.
Managing collections of data using arrays (or lists in Python).
Working with two-dimensional arrays to represent tabular data.
Modularizing code using subroutines (procedures) and functions.
Passing data to subroutines and receiving results back.
Understanding variable scope and its implications.

04Data Representation
Decoding how computers use binary to represent numbers, text, images, and sound.
Converting between binary and denary number systems.
Converting between hexadecimal and binary/denary, understanding its utility in computing.
Performing addition with binary numbers.
Performing subtraction with binary numbers, including two's complement.
Understanding logical and arithmetic binary shifts and their mathematical effect.

05Connected Networks
Understanding the protocols and hardware that allow computers to communicate across the globe.
Distinguishing between Local Area Networks and Wide Area Networks.
Comparing Star and Mesh topologies and their advantages/disadvantages.
Understanding the roles of routers, switches, and Wireless Access Points.
Comparing Ethernet and Wi-Fi, including transmission speeds and security.
Distinguishing between the Internet as infrastructure and the Web as a service.
Understanding the core protocols (TCP, IP) that govern internet communication.
Exploring common application layer protocols like HTTP, HTTPS, and FTP.
Understanding email protocols: POP, IMAP, and SMTP.
Understanding how data is broken into packets and routed across networks.
Identifying different types of malware (viruses, worms, ransomware) and their impact.
Understanding phishing, pharming, and other human-based attacks.
Exploring the principles of encryption and its role in securing data transmission.

06Impacts of Digital Technology
Analyzing the legal, ethical, and environmental consequences of our reliance on computing.
Reviewing the Data Protection Act and the General Data Protection Regulation.
Understanding the Computer Misuse Act and its relevance to cybercrime.
Exploring intellectual property rights in the digital age.
Investigating the carbon footprint of data centers and e-waste.
Examining the ethics of algorithmic bias and its societal consequences.
Analyzing the societal costs of unequal access to digital technology.