International Baccalaureate IB Computer Science

A.1.1.2 Describe the role of a GPU.
- The architecture that allows graphics processing units (GPUs) to handle specific tasks and makes them suitable for complex computations
- Real‑world scenarios may include video games, artificial intelligence (AI), large simulations and other applications that require graphics rendering and machine learning.
A.1.1.3 CPU vs GPU Overview
Explain the differences between the CPU and the GPU. (HL only)
- Differences in their design philosophies, usage scenarios
- Differences in their core architecture, processing power, memory access, power efficiency
- CPUs and GPUs working together: task division, data sharing, coordinating execution.
A.1.1.4 Primary Memory & Cache
Explain the purposes of different types of primary memory.
- Random‑access memory (RAM), read only memory (ROM), cache (L1, L2, L3), registers
- The interaction of the CPU with different types of memory to optimise performance
- The relevance of the terms “cache miss” and “cache hit”.
A.1.1.5 Fetch-Decode-Execute Cycle
Describe the fetch, decode and execute cycle.
- The basic operations a CPU performs to execute a single instruction in machine language
- The interaction between memory and registers via the three buses: address, data, control.
A.1.1.7 Internal vs External Storage
Describe internal and external types of secondary memory storage.
- Internal hard drives: solid state drive (SSD), hard disk drive (HDD), embedded multimedia cards (eMMCs)
- External hard drives: SSD, HDD, optical drives, flash drives, memory cards, network attached storage (NAS)
- The scenarios in which the various types of drive are used.
A.1.2.2 Explain how binary is used to store data.
- The fundamentals of binary encoding and the impact on data storage and retrieval
- The mechanisms by which data such as integers, strings, characters, images, audio and video are stored in binary form.
A.1.2.3 Describe the purpose and use of logic gates.
- The purpose and use of logic gates
- The functions and applications of logic gates in computer systems
- The role of logic gates in binary computing
- Boolean operators: AND, OR, NOT, NAND, NOR, XOR, XNOR.
A.1.2.4 Construct and analyse truth tables.
- Truth tables to predict the output of simple logic circuits
- Truth tables to determine outputs from inputs for a problem description
- Truth tables and their relationship to a Boolean expression, with inputs and outputs
- Truth tables derived from logic diagrams to aid the simplification of logical expressions
- Karnaugh maps and algebraic simplification to simplify output expressions.
A.1.2.5 Construct logic diagrams.
- Logic diagrams to demonstrate how logic gates are connected and interact in a circuit
- Use of standard gate symbols for AND, OR, NOT, NAND, NOR, XOR and XNOR gates
- Inputs processed diagrammatically to produce outputs
- Combinations of these gates to perform more complex logical operations
- Boolean algebra rules to simplify complex logic diagrams and expressions.
A.1.3.1 Describe the role of operating systems.
Operating systems abstract hardware complexities to manage system resources.
A.1.3.2 Operating System Functions
Describe the functions of an operating system.
- Maintaining system integrity while running operating systems’ background operations
- Memory management, file system, device management, scheduling, security, accounting, graphical user interface (GUI), virtualization, networking.
A.1.3.4 Polling vs Interrupt Handling
Evaluate the use of polling and interrupt handling.
- Event frequency, CPU processing overheads, power source (battery or mains), event predictability, controlled latency, security concerns
- Real‑world scenarios may include keyboard and mouse inputs, network communications, disk I/O operations, embedded systems, real‑time systems.
A.1.3.5 Multitasking & Resource Mgmt
Explain the role of the operating system in managing multitasking and resource allocation. (HL only)
- The challenges of multitasking and resource allocation, including task scheduling, resource contention and deadlock.
A.1.3.6 Control System Components
Describe the use of the control system components. (HL only)
- The input, process, output, and feedback mechanism (open‑loop, closed‑loop)
- Controller, sensors, actuators, transducers and control algorithm.
A.1.3.7 Control Systems in Real Life
Explain the use of control systems in a range of real‑world applications. (HL only)
- Examples may include autonomous vehicles, home thermostats, automatic elevator controllers, automatic washing machines, traffic signal control systems, irrigation control systems, home security systems, automatic doors.
A.2.1.1 Network Types & Purposes
Describe the purpose and characteristics of networks.
- Networks: local area network (LAN), wide area network (WAN), personal area network (PAN), virtual private network (VPN).
A.2.1.2 Modern Digital Infra
Describe the purpose, benefits and limitations of modern digital infrastructures.
- Modern digital infrastructure: the internet, cloud computing, distributed systems, edge computing, mobile networks
- Examples where specific networks are used may include the worldwide web (WWW), cryptocurrency blockchains, smart traffic lights, a school.
A.2.1.3 Describe the function of network devices.
Gateways, hardware firewalls, modems, network interface cards, routers, switches, wireless access points.
- How devices map to the layers of the TCP/IP model.
A.2.1.4 Transport & App Protocols
Describe the network protocols used for transport and application.
- Protocols: transmission control protocol (TCP), user datagram protocol (UDP), hypertext transfer protocol (HTTP), hypertext transfer protocol secure (HTTPS), dynamic host configuration protocol (DHCP).
A.2.1.5 TCP/IP Model Overview
Describe the function of the TCP/IP model. (HL only)
- Application, transport, internet, network interface
- The role of each layer and the interaction between these layers to ensure reliable data transmission over a network
A.2.2.1 Network Topology Overview
Describe the functions and practical applications of network topologies.
- Network topologies: star, mesh, hybrid
- Factors to consider must include reliability, transmission speed, scalability, data collisions, cost.
- Examples may include home and small office settings, where reliability is paramount, and the use of networks in larger settings (e.g. corporations, government departments, college campuses).
A.2.2.2 Describe the function of servers. (HL only)
- Types of servers: domain name server (DNS), dynamic host configuration protocol (DHCP), file server, mail server, proxy server, web server
- Factors to consider must include function, scalability, reliability and security.
A.2.2.3 Compare and contrast networking models.
- Client-server and peer-to-peer models
- The respective benefits and drawbacks of client-server and peer-to-peer models
- Real-world applications may include web browsing, email services, online banking, file sharing, VoIP services, blockchain.
A.2.2.4 Network Segmentation Basics
Explain the concepts and applications of network segmentation.
- Segmentation for network performance and security, to reduce congestion, to manage network resources efficiently
- Network segmentation must include the uses and roles of segmenting, subnetting and virtual local area networks (VLANs).
A.2.3.1 Describe different types of IP addressing.
- The distinction between IPv4 and IPv6 addressing
- The differences between public IP addresses and private IP addresses, and between static IP addresses and dynamic IP addresses
- The role of network address translation (NAT) to minimise the use of IP addresses and to facilitate communication between private internal networks and the public internet.
A.2.3.2 Data Transmission Media Types
Compare types of media for data transmission.
- Wired transmission via fibre optic cables and twisted pair cables
- wireless transmission
- The advantages and disadvantages of these three types of data transmission
- Factors to consider must include bandwidth, complexity of installation, cost, range, susceptibility to interference, attenuation, reliability, security.
A.2.3.3 Packet Switching Basics
Explain how packet switching is used to send data across a network.
- The process of segmenting data into packets with a routing header attached, and independently transmitting control information, allowing the data to be reassembled at the destination
- The role that switches and routers play in packet switching.
A.2.3.4 Static vs Dynamic Routing
Explain how static routing and dynamic routing move data across local area networks. (HL only)
- The process of static routing, and its advantages and disadvantages
- The process of dynamic routing, and its advantages and disadvantages (explanation of a specific routing protocol is not required)
- Factors to consider must include configuration, maintenance, complexity, resource usage, convergence, scalability, network size.
A.2.4.1 Firewall Effectiveness
Discuss the effectiveness of firewalls at protecting a network.
- The function of firewalls in inspecting and filtering incoming and outgoing traffic based on whitelists, blacklists and rules
- The strengths and limitations of firewalls
- The role of NAT to enhance network security.
A.3.1.1 Relational DB: Pros & Cons
Explain the features, benefits and limitations of a relational database.
- Features: composite keys, foreign keys, primary keys, relationships, tables
- Benefits: community support, concurrency control, data consistency, data integrity, data retrieval, reduced data duplication, reduced redundancy, reliable transaction processing, scalability, security features
- Limitations: “big data” scalability issues, design complexity, hierarchical data handling, rigid schema, object‑relational impedance mismatch, unstructured data handling.
A.3.2.1 Describe database schemas.
- Conceptual schema, logical schema, physical schema
- Abstract definitions of the data structure and organization of the data at different levels.
A.3.4.1 Database Types Overview
Outline the different types of databases as approaches to storing data.
- Databases models: NoSQL, cloud, spatial, in-memory
- Examples of the use of the database model in real-world scenarios may include e-commerce platforms, geographic information systems (GIS), managed services, real-time analytics, social media platforms, SaaS.
A.3.4.2 Data Warehouse Core Principles
Explain the primary objectives of data warehouses in data management and business intelligence.
- The roles of append-only data, subject-oriented data, integrated data, time-variant data, non-volatile data and data optimized for query performance, to ensure efficient data storage and analysis
A.3.4.3 OLAP & Data Mining in BI
Explain the role of online analytical processing (OLAP) and data mining for business intelligence.
- Data mining techniques must include classification, clustering, regression, association rule discovery, sequential pattern discovery, anomaly detection (note: links to A4 Machine learning).
- The uses of the techniques in extracting meaningful information from large data sets.
A.4.1.1 ML Types & Real-World Uses
Describe the types of machine learning and their applications in the real world.
- The different approaches to machine learning algorithms and their unique characteristics
- Deep learning (DL), reinforcement learning (RL), supervised learning, transfer learning (TL), unsupervised learning (UL)
- Real-world applications of machine learning may include market basket analysis, medical imaging diagnostics, natural language processing, object detection and classification, robotics navigation, sentiment analysis.
A.4.1.2 ML Hardware Configurations
Describe the hardware requirements for various scenarios where machine learning is deployed.
- The hardware configurations for different machine learning scenarios, considering factors such as processing, storage and scalability
- Hardware configurations for machine learning ranging from standard laptops to advanced infrastructure
- Advanced infrastructure must include application-specific integrated circuits (ASICs), edge devices, field-programmable gate arrays (FPGAs), GPUs, tensor processing units (TPUs), cloud-based platforms, high-performance computing (HPC) centres.
A.4.2.2 Describe the role of feature selection.
- Feature selection to identify and retain the most informative attributes of the data set
- Feature selection strategies: filter methods, wrapper methods, embedded methods
A.4.3.1 Linear Regression Overview
Explain how linear regression is used to predict continuous outcomes.
- The relationship between the independent (predictor) and dependent (response) variables
- The significance of the slope and intercept in the regression equation
- How well the model fits the data—often assessed using measures like r[2].
A.4.3.2 Supervised Classification
Explain how classifications techniques in supervised learning are used to predict discrete categorical outcomes.
- K-Nearest Neighbours (K-NN) and decision trees algorithms to categorize new data points, based on patterns learned from existing labelled data
- Real-world applications of K-NN may include collaborative filtering recommendation systems.
- Real-world applications of decision trees may include medical diagnosis based on a patient’s symptoms.
A.4.3.3 Hyperparameter Tuning & Eval
Explain the role of hyperparameter tuning when evaluating supervised learning algorithms.
- Accuracy, precision, recall and F1 score as evaluation metrics
- The role of hyperparameter tuning on model performance
- Overfitting and underfitting when training algorithms
A.4.3.7 Genetic Algorithms in Practice
Describe the application of genetic algorithms in various real-world situations.
- For example: population, fitness function, selection, crossover, mutation, evaluation, termination
- Real-world application: optimization problems such as route planning (travelling salesperson problem).
A.4.3.8 ANN Structure & MLPs
Outline the structure and function of ANNs and how multi-layer networks are used to model complex patterns in data sets.
- An artificial neural network (ANN) to simulate interconnected nodes or “neurons” to process and learn from input data, enabling tasks such as classification, regression and pattern recognition
- Sketch of a single perceptron, highlighting its input, weights, bias, activation function and output
- Sketch of a multi-layer perceptron (MLP) encompassing the input layer, one or more hidden layers and the output layer.
A.4.4.1 ML Ethics in Practice
Discuss the ethical implications of machine learning in real-world scenarios.
- Ethical issues may include accountability, algorithmic fairness, bias, consent, environmental impact, privacy, security, societal impact, transparency.
- The challenges posed by biases in training data
- The ethics of using machine learning in online communication may include concerns about misinformation, bias, online harassment, anonymity, privacy.
A.4.4.2 Tech Ethics in Daily Life
Discuss ethical aspects of the increasing integration of computer technologies into daily life.
- The importance of continually reassessing ethical guidelines as technology advances
- The potential implications of emerging technologies such as quantum computing, augmented reality, virtual reality and the pervasive use of AI on society, individual rights, privacy and equity