Course Outline

CS Workout is designed to cover the specific requirements and topics outlined by each exam board (OCR, AQA, Edexcel, SQA, WJEC/Eduqas, and CIE), ensuring that students gain a robust understanding of computer science principles and practical skills. Whether you're looking to excel in theoretical concepts, master programming techniques, or understand the ethical implications of technology, CS Workout provides all the essential knowledge and tools you need to succeed.

Explore the detailed specifications below to see how CS Workout aligns with your chosen exam board.

  •   OCR J277

    The OCR GCSE Computer Science course offers students a comprehensive foundation in computing concepts and programming skills. This course emphasises practical problem-solving and theoretical knowledge, preparing students for further education and careers in the rapidly evolving tech industry.

    OCR specification CSW Topics
    1.1 Systems architecture
      1.1.1 Architecture of the CPU
    • ⚬ The Purpose of the CPU
    • ⚬ Common CPU Components and their Function
    • ⚬ Von Neumann Architecture
      1.1.2 CPU performance
    • ⚬ CPU Performance
      1.1.3 Embedded systems
    • ⚬ Embedded Systems
    1.2 Memory and storage
      1.2.1 Primary storage (Memory)
    • ⚬ Primary Storage
      1.2.2 Secondary storage
    • ⚬ Secondary Storage
      1.2.3 Units
    • ⚬ Units
      1.2.4 Data storage
    • ⚬ Binary Numbers
    • ⚬ Hexadecimal Numbers
    • ⚬ Characters
    • ⚬ Images
    • ⚬ Sound
      1.2.5 Compression
    • ⚬ Compression
    1.3 Computer networks, connections and protocols
      1.3.1 Networks and topologies
    • ⚬ Networks
    • ⚬ Network Performance
    • ⚬ Network Models
    • ⚬ Network Hardware
    • ⚬ The Internet
    • ⚬ Network Topology
      1.3.2 Wired and wireless networks, protocols and layers
    • ⚬ Modes of Connection
    • ⚬ Encryption
    • ⚬ IP and MAC Addressing
    • ⚬ Standards and Protocols
    • ⚬ Layers
    1.4 Network security
      1.4.1 Threats to computer systems and networks
    • ⚬ Network Threats
      1.4.2 Identifying and preventing vulnerabilities
    • ⚬ Preventing Security Threats
    1.5 Systems software
      1.5.1 Operating systems
    • ⚬ Operating Systems
      1.5.2 Utility software
    • ⚬ Utility Software
    1.6 Ethical, legal, cultural and environmental impacts of digital technology
      1.6.1 Ethical, legal, cultural and environmental impact
    • ⚬ Impacts of Digital Technology
    • ⚬ Ethical Issues
    • ⚬ Legal Issues
    • ⚬ Cultural Issues
    • ⚬ Environmental Issues
    • ⚬ Privacy Issues
    • ⚬ Legislation
    2.1 Algorithms
      2.1.1 Computational thinking
    • ⚬ Computational Thinking
      2.1.2 Designing, creating and refining algorithms
    • ⚬ Identify the Inputs, Processes and Outputs for a Problem
    • ⚬ Structure Diagrams
    • ⚬ Using Pseudocode
    • ⚬ OCR Exam Reference Language
    • ⚬ Using Flowcharts
    • ⚬ Identifying Common Errors
    • ⚬ Trace Tables
      2.1.3 Searching and sorting algorithms
    • ⚬ Linear Search
    • ⚬ Binary Search
    • ⚬ Bubble Sort
    • ⚬ Merge Sort
    • ⚬ Insertion Sort
    2.2 Programming fundamentals
      2.2.1 Programming fundamentals
    • ⚬ Variables and Constants
    • ⚬ Inputs and Outputs
    • ⚬ Programming Constructs
    • ⚬ Sequence
    • ⚬ Selection
    • ⚬ Iteration
    • ⚬ Arithmetic Operators
    • ⚬ Comparison Operators
    • ⚬ Boolean Operators
      2.2.2 Data types
    • ⚬ Data Types
    • ⚬ Casting
      2.2.3 Additonal programming
    • ⚬ String Manipulation
    • ⚬ File Handling
    • ⚬ Structured Records
    • ⚬ Searching Data
    • ⚬ Arrays
    • ⚬ Two-Dimensional Arrays
    • ⚬ Sub Programs
    • ⚬ Random Number Generation
    2.3 Producing robust programs
      2.3.1 Defensive design
    • ⚬ Defensive design
    • ⚬ Maintainability
      2.3.2 Testing
    • ⚬ Testing
    2.4 Boolean logic
      2.4.1 Boolean logic
    • ⚬ Boolean Logic
    • ⚬ Logic Circuits
    2.5 Programming languages and Integrated Development Environments
      2.5.1 Languages
    • ⚬ Languages
    • ⚬ Translators
      2.5.2 The Integrated Development Environment (IDE)
    • ⚬ The Integrated Development Environment (IDE)
  •   AQA 8525

    The AQA GCSE Computer Science course is designed to develop students' understanding of computer science principles and enhance their problem-solving skills using programming. This course balances theoretical concepts with practical application, fostering critical thinking and technical proficiency.

    AQA specification CSW Topics
    3.1 Fundamentals of algorithms
      3.1.1 Representing algorithms
    • ⚬ Computational Thinking
    • ⚬ Using Flowcharts
    • ⚬ Using Pseudo-code
    • ⚬ AQA Pseudo-code
    • ⚬ Identify the Inputs, Processes and Outputs for a Problem
    • ⚬ Determining the Purpose of an Algorithm
    • ⚬ Trace Tables
      3.1.2 Efficiency of algorithms
    • ⚬ Efficiency of Algorithms
      3.1.3 Searching algorithms
    • ⚬ Linear Search
    • ⚬ Binary Search
    • ⚬ Comparing Search Algorithms
      3.1.4 Sorting algorithms
    • ⚬ Merge Sort
    • ⚬ Bubble Sort
    • ⚬ Comparing Sorting Algorithms
    3.2 Programming
      3.2.1 Data types
    • ⚬ Data Types
      3.2.2 Programming concepts
    • ⚬ Variables and Constants
    • ⚬ Programming Constructs
    • ⚬ Sequence
    • ⚬ Selection
    • ⚬ Iteration
    • ⚬ Subrountines
      3.2.3 Arithmetic operations in a programming language
    • ⚬ Arithmetic Operators
      3.2.4 Relational operations in a programming language
    • ⚬ Relational Operators
      3.2.5 Boolean operations in a programming language
    • ⚬ Boolean Operators
      3.2.6 Data structures
    • ⚬ Arrays
    • ⚬ Two-Dimensional Arrays
    • ⚬ Records
      3.2.7 Input/output
    • ⚬ Inputs and Outputs
      3.2.8 String handling operations in a programming language
    • ⚬ String Manipulation
    • ⚬ Casting
    • ⚬ Character Conversion
      3.2.9 Random number generation in a programming language
    • ⚬ Random Number Generation
      3.2.10 Structured programming and subroutines (procedures and functions)
    • ⚬ Subrountines
    • ⚬ Structured Programming
      3.2.11 Robust and secure programming
    • ⚬ Authentication and validation
    • ⚬ Testing
    3.3 Fundamentals of data representation
      3.3.1 Number bases
    • ⚬ Binary Numbers
    • ⚬ Hexadecimal Numbers
      3.3.2 Converting between number bases
    • ⚬ Converting Binary Numbers
    • ⚬ Converting Hexadecimal Numbers
      3.3.3 Units of information
    • ⚬ Units
      3.3.4 Binary arithmetic
    • ⚬ Binary Arithmetic
    • ⚬ Binary Shifts
      3.3.5 Character encoding
    • ⚬ Character Encoding
      3.3.6 Representing images
    • ⚬ Representing Images
      3.3.7 Representing sound
    • ⚬ Representing Sound
      3.3.8 Data compression
    • ⚬ Data Compression
    • ⚬ Huffman Coding
    • ⚬ Run-Length Encoding
    3.4 Computer systems
      3.4.1 Hardware and software
    • ⚬ Hardware and Software
      3.4.2 Boolean logic
    • ⚬ Boolean Logic
    • ⚬ Logic Circuits
      3.4.3 Software classification
    • ⚬ Operating Systems
    • ⚬ Utility Software
    • ⚬ Application Software
      3.4.4 Classification of programming languages and translators
    • ⚬ Classification of Programming Languages
    • ⚬ Translators
      3.4.5 Systems architecture
    • ⚬ The Purpose of the CPU
    • ⚬ Common CPU Components and their Function
    • ⚬ Von Neumann Architecture
    • ⚬ CPU Performance
    • ⚬ Primary Storage (Memory)
    • ⚬ Secondary Storage
    • ⚬ Cloud Storage
    • ⚬ Embedded Systems
    3.5 Fundamentals of computer networks
      3.5 Fundamentals of computer networks
    • ⚬ Networks
    • ⚬ Wired and Wireless Networks
    • ⚬ Topologies
    • ⚬ Network Protocols
    • ⚬ Network Security
    • ⚬ Encyption
    • ⚬ TCP/IP Layers
    3.6 Cyber security
      3.6.1 Fundamentals of cyber security
    • ⚬ Cyber Security
      3.6.2 Cyber security threats
    • ⚬ Penetration Testing
    • ⚬ Social Engineering
    • ⚬ Malicious Code
      3.6.3 Methods to detect and prevent cyber security threats
    • ⚬ Preventing Security Threats
    3.7 Relational databases and structured query language
      3.7.1 Relational databases
    • ⚬ Database Concepts
    • ⚬ Relational Databases
      3.7.2 Structured query language (SQL)
    • ⚬ Structured Query Language (SQL)
    • ⚬ Multi-Table Queries
    • ⚬ Manipulating Data
    3.8 Ethical, legal and environmental impacts of digital technology on wider society, including issues of privacy
      3.8 Impacts of Digital Technology
    • ⚬ Impacts of Digital Technology
    • ⚬ Cyber Security
    • ⚬ Mobile Technologies
    • ⚬ Wireless Networking
    • ⚬ Cloud Storage
    • ⚬ Hacking
    • ⚬ Wearable Technologies
    • ⚬ Computer Based Implants
    • ⚬ Autonomous Vehicles
    • ⚬ Legislation
  •   Edexcel 1CP2Due Spring 2025

    The Edexcel GCSE Computer Science course provides students with a solid understanding of computational theory and practical programming experience. This course focuses on developing logical thinking and problem-solving abilities, crucial for success in computing and technology fields.

    Edexcel specification CSW Topics
    1 Computational thinking
      1.1 Decomposition and abstraction  
      1.2 Algorithms  
      1.3 Truth tables  
    2 Data
      2.1 Binary  
      2.2 Data representation  
      2.3 Data storage and compression  
    3 Computers
      3.1 Hardware  
      3.2 Software  
      3.3 Programming languages  
    4 Networks
      4.1 Networks  
      4.2 Network security  
    5 Issues and impact
      5.1 Environmental  
      5.2 Ethical and legal  
      5.3 Cybersecurity  
    6 Problem solving with programming
      6.1 Develop code  
      6.2 Constructs  
      6.3 Data types and structures  
      6.4 Input/output  
      6.5 Operators  
      6.6 Subprograms  
  •   SQA National 5Due Spring 2025

    The SQA National 5 Computing Science course equips students with essential skills in programming, web design, and understanding of computer systems. This course encourages analytical thinking and creativity, laying a strong foundation for further study and careers in technology.

    SQA N5 specification CSW Topics
    1 Software design and development
      Development methodologies  
      Analysis  
      Design  
      Implementation (data types and structures)  
      Implementation (computational constructs)  
      Implementation (algorithm specification)  
      Testing  
      Evaluation  
    2 Computer systems
      Data representation  
      Computer structure  
      Environmental impact  
      Security precautions  
    3 Database design and development
      Analysis  
      Design  
      Implementation  
      Testing  
      Evaluation  
    4 Web design and development
      Analysis  
      Design  
      Implementation (CSS)  
      Implementation (HTML)  
      Implementation (JavaScript)  
      Testing  
      Evaluation  
  •   WJEC/EduqasDue Summer 2025

    The WJEC/Eduqas GCSE Computer Science course combines theoretical knowledge with practical skills, offering students an in-depth understanding of computer science. This course prepares students for advanced study and careers in technology, emphasising problem-solving and computational thinking.

    WJEC/Eduqas specification CSW Topics
    1 Computer architecture
      Components  
      Peripheral devices  
      Storage  
    2 Structure of systems and functions
      Data types, including representation, storage and compression  
      Data and file structures  
      Automated systems  
    3 How systems communicate
      Networks and infrastructure  
      Cybersecurity and personal privacy  
    4 Algorithms
      Algorithms  
    5 Software
      Principles of programming  
      Software development, including the systems development lifecycle (SDLC)  
      Program construction  
    6 Logical operations
      Logical operations  
    7 Operating systems
      Operating systems  
    8 Systems development lifecycle
      Systems development lifecycle  
    9 Investigation
      Decomposition  
      Abstraction  
      Pattern recognition  
    10 Design
      Algorithms  
      Data modelling  
    11 Implementation
      Programming  
      User interfaces  
    12 Testing
      Testing  
    13 Refinement including evaluation
      Refinement including evaluation  
  •   CIE 0478/0984Due Summer 2025

    The Cambridge IGCSE Computer Science course provides students with a global perspective on computing principles and programming practices. This course emphasises both theoretical understanding and practical application, preparing students for higher education and careers in the global tech industry.

    Cambridge IGCSE specification CSW Topics
    1 Data representation
      1.1 Number systems  
      1.2 Text, sound and images  
      1.3 Data storage and compression  
    2 Data transmission
      2.1 Types and methods of data transmission  
      2.2 Methods of error detection  
      2.3 Encryption  
    3 Hardware
      3.1 Computer architecture  
      3.2 Input and output devices  
      3.3 Data storage  
      3.4 Network hardware  
    4 Software
      4.1 Types of software and interrupts  
      4.2 Types of programming language, translators and integrated development environments (IDEs)  
    5 The internet and its uses
      5.1 The internet and the world wide web  
      5.2 Digital currency  
      5.3 Cyber security  
    6 Automated and emerging technologies
      6.1 Automated systems  
      6.2 Robotics  
      6.3 Artificial intelligence  
    7 Algorithm design and problem-solving
      7.1 Algorithm design and problem-solving  
    8 Programming
      8.1 Programming concepts  
      8.2 Arrays  
      8.3 File handling  
    9 Databases
      9.1 Databases  
    10 Boolean logic
      10.1 Boolean logic  
  •   Python Programming

    Python is one of the most popular programming languages in the world, known for its simplicity and versatility. Our Python programming section is designed to equip students with essential coding skills, focusing on both fundamental concepts and advanced techniques. Through hands-on exercises and real-world projects, students will learn to write efficient, readable, and robust code, preparing them for further studies and careers in computer science and related fields.

    Python Programmin Topics
    1 Getting started with Python
      1.1 Introduction to Python
    • ⚬ Introduction to Python
      1.2 Setting up the environment
    • ⚬ Setting up the Environment
    • ⚬ Hello, World!
      1.3 Understanding the Python interactive Shell
    • ⚬ The Shell Window
    2 Basic Python syntax and data types
      2.1 Python syntax
    • ⚬ Basic Python Syntax
      2.2 Variables and data types
    • ⚬ Variables and Assignment
    • ⚬ Basic Data Types
      2.3 Basic operators
    • ⚬ Arithmetic Operators
    • ⚬ Relational Operators
    • ⚬ Boolean Operators
    3 Input and output
      3.1 Basic input and output
    • ⚬ Input and Output
    4 Control structures
      4.1 Conditional statements
    • ⚬ Conditions (if, elif, & else)
    • ⚬ Nested Conditions
      4.2 Loops
    • ⚬ For Loops
    • ⚬ While Loops
    • ⚬ Break and Continue Statements
    5 Data structures
      5.1 Lists
    • ⚬ Lists
    • ⚬ List Iteration
    • ⚬ 2D Lists
      5.2 Tuples
    • ⚬ Tuples
      5.3 Sets
    • ⚬ Sets
      5.4 Dictionaries
    • ⚬ Dictionaries
    6 Functions and modules
      6.1 Functions
    • ⚬ Introduction to Functions
    • ⚬ Function Arguments
    • ⚬ Variable Scope
    • ⚬ Advanced Argument Handling
    • ⚬ Advanced Function Concepts
    • ⚬ Recursion
    • ⚬ Lambda Functions
      6.2 Modules and packages
    • ⚬ Introduction to Modules
    • ⚬ Creating Custom Modules
    • ⚬ Introduction to Packages
    • ⚬ External Modules
    7 String manipulation
      7.1 String operations
    • ⚬ String Handling
    • ⚬ String Formatting
    • ⚬ String Indexing and Slicing
    • ⚬ Character Codes
    8 File handling
      8.1 File handling
    • ⚬ Opening and Reading Files
    • ⚬ File Path Management
    • ⚬ File Writing Basics
    • ⚬ Deleting and Renaming Files
    9 Error handling
      9.1 Errors
    • ⚬ Introduction to Errors
      9.2 Exceptions
    • ⚬ Understanding Exceptions
    • ⚬ Raising Exceptions
    • ⚬ The Try/Except Statement
      9.3 Debugging
    • ⚬ Understanding Debugging
    • ⚬ The PDB Module
    10 Validation and regular expressions
      10.1 Validation
    • ⚬ Introduction to Validation
    • ⚬ Implementing Validation
      10.2 Regular expressions
    • ⚬ Introduction to Regular Expressions
    • ⚬ The re Module
    • ⚬ Basic Syntax
    • ⚬ Wildcards
    • ⚬ Character Classes
    • ⚬ Quantifiers
    • ⚬ Validating User Data

Have any questions? Get in Touch