- IB
- Computer Science (CS)
If you're looking for the new syllabus, go here
IB Computer Science Key Definitions
The IB Computer Science Key Definitions is a vital reference for IB Computer Science students (both SL and HL), offering a curated collection of critical terminology and phrases aligned with the IB curriculum. Designed to support you in Paper 1, Paper 2, and Paper 3, this resource ensures you have the right language tools at your fingertips.
On this page, you'll find an organized list of essential terms, complete with clear definitions, IB-specific usage, and examiner-focused context that helps you build confidence in understanding and applying subject-specific vocabulary.
With Jojo AI integration, you can reinforce learning through quizzes, contextual examples, or targeted term practice. Perfect for coursework, written assignments, oral exams, or exam preparation, RevisionDojo's IB Computer Science Key Definitions equips you with precise language knowledge to excel in IB assessments.
Key Definitions
A
Abstraction
The process of simplifying complex systems by focusing on essential details while ignoring irrelevant ones.
Access modifiers
Keywords that define the visibility and accessibility of class members (variables and methods).
Accessibility
metric of how the technology or system suits people with some sort of disability
Accessibility
metric of how the technology or system suits people with some sort of disability
Addition
The process of combining two or more values to produce a result.
Alpha testing
Testing conducted by developers in a controlled environment to catch major bugs before release
Ambient Intelligence
A digital environment that is sensitive, adaptive, and responsive to the presence of people.
Antivirus
Software that detects, prevents, and removes malware.
Arguments
Actual values passed to the parameters when the method is called.
Arithmetic Logic Unit (ALU)
A core digital circuit within the CPU that performs arithmetic and logical operations on binary data
Authentication
The process of verifying the identity of a user or entity.
Automated testing
Testing that uses software tools to execute tests, compare results, and report outcomes automatically without human interaction
Autonomous agent
An entity that can perceive its environment through sensors and act upon it using effectors. They operate with a degree of independence, following algorithms to achieve specific goals
B
Backpropagation
An algorithm used to train neural networks by adjusting the weights of connections between neurons to minimize prediction errors.
Bandwidth
The maximum rate at which data can be transmitted over a network, usually measured in bits per second (bps).
Bandwidth
The rate at which data can be transferred between components or over a network.
Beta testing
Testing that involves a group of real users testing the software in real-world conditions to provide feedback and identify issues
Binary search
A search algorithm that repeatedly divides a sorted list in half to locate a target element.
Binary tree
A tree where each node has at most two children.
Bit
The smallest unit of data in a computer, representing a binary value of 0 or 1.
Boolean logic
A branch of algebra that deals with true or false values, represented as 1 and 0 in binary systems
Bubble sort
A sorting algorithm that repeatedly steps through the list, compares adjacent elements, and swaps them if they are in the wrong order.
Business merger
The process occurs when two or more companies are combined into a single entity. It usually implies that the systems used in companies separately before should not have any issues when working together.
Business merger
The process occurs when two or more companies are combined into a single entity
Byte
Fundamental unit of data storage, which consists of eight bits
C
Central processing unit (CPU)
The primary component of a computer responsible for executing instructions and processing data. It performs arithmetic, logic, control, and input/output operations specified by the instructions in programs.
Centralised control system
A control system that relies on a single central computer to manage all processing and decision-making
Change Management
Systematic approach to transitioning individuals, teams, and organisations from a current state to a desired future state. It involves planning, implementation and monitoring.
Child
A node that is directly connected and one level below another node.
Class
A blueprint for creating objects, defining their data (attributes) and actions (methods).
Client
A computer or device that requests services or resources from a server
Client-server model
A network architecture where clients request services and servers provide them
Client-Side Scripting
Refers to code that runs in the user's web browser , typically written in languages like JavaScript , HTML , and CSS.
Cloud Computing
The delivery of computing services (servers, storage, databases, networking, software) over the Internet ("the cloud").
Collection
A group of related data items, such as a list of numbers, a set of names, or a dictionary of key-value pairs.
Collective Intelligence
The shared intelligence that emerges from the collaboration and interaction of a group of individuals or systems.
Command line interace (CLI)
A text-based interface is used to interact with a computer. Users type commands to perform tasks instead of using a graphical interface with buttons and icons.
Common Gateway Interface (CGI)
A standard protocol that allows web servers to interact with external programs, often written in languages like **Perl **or Python.
Complex Query
A query that retrieves data based on multiple conditions, often using logical operators like AND, OR, and NOT.
Compound operation
A sequence of fundamental operations combined to perform a more complex task.
Computer language
A formal language used to communicate instructions to a computer.
Computer Modeling
The process of creating a digital representation of a system or process to simulate its behavior under various conditions.
Concurrency
The ability to execute multiple tasks simultaneously.
Constant
A named storage location in memory that holds a value, which cannot be changed during the execution of a program.
Constructors
Special methods used to initialise an object
Context
background, environment, setting in which the new system will be appplied
Control system
A combination of devices and algorithms that automate tasks by monitoring and manipulating the environment
Control Unit
A key component of the CPU that manages and coordinates all operations within the computer
Copyright
A legal right that gives creators control over how their work is used.
Correctness of a model
Refers to how accurately the model represents the real-world system it is designed to simulate.
D
Data Collection
Data compression
The process of reducing the size of digital data by encoding it more efficiently, so it requires less storage space or transmission bandwidth
Data Definition Language (DDL)
A subset of SQL used to define and manage the structure of a database.
Data Dictionary
A centralized repository that stores metadata about the data in a database.
Data integrity
The accuracy and consistency of data as it travels from source to destination.
Data loss
Permanent or temporary unavailability of data due to various factors such as hardware failure, human error, or cyberattacks
Data Matching
The process of comparing and linking data from different sources to identify records that refer to the same entity.
Data migration
The process of transferring data between different formats, storage types, or computer systems.
Data Mining
The process of discovering patterns, correlations, and insights from large datasets using statistical and computational techniques.
Data Modeling
The process of creating a visual representation of the data and its relationships within a database.
Data Recovery
The process of restoring lost, corrupted, or inaccessible data from backups or other sources.
Data structure
A way of organising and storing data so that it can be used efficiently in algorithms and programs.
Data testing
The process of testing involves inputting normal, boundary, abnormal, and extreme data to ensure the system handles all scenarios
Data Warehouse
A data warehouse is a centralized repository that stores data from multiple sources, collected over a period of time
Database
A structured, persistent collection of related data that can be efficiently queried, inserted, updated and deleted usually managed by a database‑management system (DBMS).
Database Administrator
An individual responsible for managing, maintaining, and securing a database system.
Database Management System (DBMS)
Software that creates, stores, retrieves, and manages data in one or more databases.
Database Schema
A blueprint that outlines how data is organised within a database.
Database Segmentation
The process of dividing a database into smaller, more manageable parts based on a specific feature or criterion.
Database Transaction
A single unit of work, consisting of one or more (SQL) operations which are executed atomically such that all changes take effect together (commit) or none do (rollback).
Debugging
The process of identifying and fixing errors or bugs in the code
Decentralisation
Refers to the distribution of control and decision-making across a network, rather than relying on a single central authority.
Decision Tree
A flowchart-like structure where each internal node represents a test on an attribute, each branch represents the outcome of the test, and each leaf node represents a class label or a prediction.
Decomposition
The process of breaking down a complex problem into smaller, more manageable parts.
Dedicated Operating System
An operating system that is specifically designed to meet the unique requirements of a particular device or application
Democratic web
Emphasizes user empowerment , transparency , and equal access to information.
Deviation Detection
Also known as outlier detection, it is the process of identifying data points that significantly differ from the majority of the data in a database.
Deviation Detection
Also known as outlier detection, is the process of identifying data points that significantly differ from the majority of the data in a database.
Digital divide
The gap between individuals, groups, or countries in terms of access to digital technology, such as the internet, computers, and mobile devices.
Direct changeover
The new system replaces the old system immediately
Directed graph
A collection of vertices (nodes) connected by edges (links) that have a specific direction.
Distributed control system
A control system that spreads processing and decision-making across multiple independent nodes
Documentation
All information collected during software development that involves the system. It helps people understand, use, and maintain the system
Domain Name Server (DNS)
A hierarchical and decentralized system that translates human-readable domain names (like www.example.com) into IP addresses (like 192.0.2.1) that computers use to identify each other on the internet.
Domain Name System (DNS) server
A type of server that translates human-readable domain names (e.g., example.com) into IP addresses (e.g., 192.0.2.1) that computers use to identify each other on the network
Dry-run testing
A manual process where developers simulate the execution of code to predict outcomes
Dynamic data structures
Data structures that can grow or shrink during program execution.
Dynamic Web Page
A web page that is generated in real-time by the server , often using server-side scripts like PHP, ASP.NET, or Java Servlets , and can be customized based on user input or other factors.
E
Edge
Connection between two nodes.
Efficiency
A measure of how well an algorithm uses resources, such as time and memory, to solve a problem.
Email application
Software applications that enable users to send, receive, and manage digital messages
Email server
A server that manages the flow of emails within and outside a network.
Emergent Social Structures
The patterns of relationships and interactions among individuals or groups within a community or platform.
Encapsulation
An OOP principle where data (attributes) and the methods that operate on it are bundled together within a class, while restricting direct access to the data to protect it from unintended interference.
Encryption
The process of converting data into a coded format to prevent unauthorised access.
Ergonomics
The design of products or systems to optimise human comfort and performance (efficiency)
ETL
Extract, Transform, Load (ETL) is a process used in data warehousing to collect data from different sources, transform it into a consistent format, and load it into a central repository for analysis and reporting.
Exceptions
Unusual or unexpected events that disrupt the normal flow of a program.
Expressivity
The ability of a language or system to represent complex and detailed information.
F
Feedback
The process of using output data as input to adjust future actions
Feedback Loops
Mechanisms that use the results of previous actions to adjust future behaviour, helping the system improve or maintain performance
FIFO
First-In, First-Out principle.
File Transfer Protocol (FTP)
Protocol used to transfer files between a client and a server over a network.
Flow chart
A visual representation of an algorithm, using symbols to show the sequence, decisions, and processes involved in solving a problem.
Folksonomy
A user-driven classification system that organizes information through collaborative tagging, relying on user-generated tags rather than a predefined structure.
Functional testing
Process of verification that each software function operates according to its specifications
G
Genetic Algorithm
A search heuristic that mimics the process of natural selection to generate high-quality solutions to optimization and search problems.
Getters
Methods used to retrieve the value of private and protected attributes.
Getters
Methods used to retrieve the value of private attributes.
Goodput
The rate of usable data transfer, excluding protocol overhead and retransmissions.
Graphical user interface (GUI)
Visual interfaces that allow users to interact with applications through graphical elements such as windows, icons, menus, and pointers (WIMP).
Grid Computing
Involves connecting multiple computers, often geographically dispersed, to work together as a single virtual supercomputer to solve large-scale computational problems.
H
Hardware
The physical parts of a computer system, including internal components like the CPU and RAM, and external devices like monitors, keyboards, and printers.
High-level programming language
A programming language that allows programmers to write instructions using human-readable syntax, without needing to manage hardware details directly.
Human Resources
The people who work within an organisation, along with the department that manages hiring, training, and employee support.
I
Identification
The process of establishing the identity of a user or entity.
Identifier
A name used to identify a programming entity, such as a class, variable, or method.
Information System
An organised combination of people, procedures, hardware, software, networks, (databases) and data that captures, stores, processes and delivers information to support decision‑making and control within an organisation.
Inheritance
An OOP principle where one class (the subclass) can reuse and extend the attributes and methods of another class (the superclass).
Input device
Hardware components that capture data from the environment and convert it into a form that a computer system can process
Inputs
The data or information is provided to a program to process.
Instance variable
A variable defined in a class for which each instantiated object of the class has its own copy.
Instantiation
The process of creating a specific object from a class.
Integration testing
Testing that ensures that different modules or components work together as expected
Intellectual Property
Creations of the mind, such as inventions, literary works, and designs, protected by law.
Intermediate Code
Code that is not specific to any hardware architecture.
Internet
A global network of interconnected computers that communicate using standard protocols, such as the Transmission Control Protocol/Internet Protocol (TCP/IP).
Internet Protocol (IP)
A set of rules that govern how data is transmitted across networks, ensuring communication between devices.
Interoperability
The ability of different systems, devices, or applications to work together and exchange information seamlessly.
Interrupts
Signals that inform the CPU of an event that requires immediate attention
Iteration
The repetition of a set of instructions or processes until a desired outcome is achieved
L
Legacy system
System that is not supported anymore, but is still in use
Libraries of objects
Collections of pre-written classes and methods that can be integrated into programs.
LIFO
Last-in, First-out principle.
Link Analysis
A technique used to identify relationships and connections between entities in a dataset.
Local variable
A variable declared within a method or block of code.
M
Machine code
The lowest-level programming language, consisting of binary instructions that a computer's CPU can execute directly.
Machine instruction cycle
The fundamental process by which a computer's central processing unit (CPU) executes instructions. It consists of four main stages: fetch, decode, execute, and store.
Mainframes
Powerful computers designed for large-scale data processing and critical applications.
Metadata
Data that describes other data, providing information such as the content, format, source, or structure to help organize, find, and understand it.
Microprocessor
Integrated circuits that perform arithmetic, logic, and control operations
Mobile Computing
Refers to the ability to access and process data or perform computing tasks using portable devices such as smartphones, tablets, and laptops.
Model
A simplified representation of a system or phenomenon.
Modularity
The practice of dividing a program into smaller, self-contained units called modules.
Multi-Access Environment
An environment that allows multiple users to interact with a single computer system simultaneously.
Multi-Programming Environment
An environment that allows multiple programs to be loaded into memory simultaneously, with the CPU switching between them.
N
Naming conventions
Rules for naming variables, functions, and other identifiers in a consistent and meaningful way.
Natural Language
The language humans use to communicate, such as English, Spanish, or Mandarin.
Natural Language Processing
NLP is a branch of artificial intelligence that enables computers to understand, interpret, and generate human language.
Network
A system where multiple computers or devices (nodes) are connected to share data, resources, and communicate with each other
Network
A collection of interconnected computer systems that share resources and data.
Network Architecture
The design and structure of a computer network, including its physical and logical layout, communication protocols, and data transmission methods.
Network connectivity
The ability of a device to connect to local and global networks.
Network standards
Agreed-upon rules and protocols that ensure interoperability between different devices and systems within a network. They define how data is formatted, transmitted, and received, allowing devices from various manufacturers to communicate seamlessly.
Neural Network
A computational model inspired by the human brain, consisting of interconnected nodes (neurons) that process data in layers to recognize patterns and solve complex problems.
Node
A basic unit containing data and one or more pointers.
Normalization
A process used to organize data in a database to reduce redundancy and improve data integrity.
O
Object
A specific instance of a class, containing attributes and methods.
Object references
Variables that store the memory address of an object rather than the object itself.
On-Premise system
A system that is installed and run on a client's local hardware
Online Interaction
A term that describes the transition of the web from a static collection of pages to a dynamic, interactive platform where users can create, share, and collaborate on content.
Ontology
A formal, machine-readable representation of knowledge that defines a set of concepts and their relationships within a specific domain, providing a structured framework for organizing information.
Open Standards
Publicly available specifications that ensure compatibility and interoperability between different systems.
Operator
A function that performs an operation on one or more operands.
Outputs
The results or responses produced by the program after processing the inputs that are available to the user or another system.
P
Packet
A small, formatted unit of data that is sent across a computer network.
Packet switching
A method of data transmission where information is broken into small units called packets. Each packet travels independently through the network and is reassembled at the destination.
Parallel running
Both the old and new systems run simultaneously for a period.
Parameter variable
A variable used to pass data into a method.
Parameters
Variables used in methods to receive data from the caller.
Parent
A node that has one or more children.
Peer-to-peer (P2P)
A decentralized network architecture where each participant (peer) acts as both a client and a server, sharing resources directly with other peers without relying on a central server.
Peripheral
An external device connected to a computer that adds functionality, such as input (e.g., keyboard), output (e.g., headphones), or both (e.g., touchscreen)
Phased conversion
The new system is implemented in stages or modules over time
Pilot Running
The new system is implemented in a small part of the organisation (a pilot site) before being rolled out fully
Pointer
A reference to another node.
Policies
The rules and guidelines for managing resources and user access within a system.
Polymorphism
An OOP concept where a single method can take multiple forms, allowing for the definition of different behaviour while sharing the same method name.
Post-conditions
The outcomes that must be true after the function or algorithm has completed.
Pre-conditions
The requirements that must be met before a function or algorithm is executed.
Predictive modeling
A data mining technique used to make predictions about future outcomes based on historical data.
Primary memory
The only storage directly accessible by the CPU. It holds data and instructions currently in use, stored as binary machine code.
Primitive
A basic data type provided by a programming language.
Privacy
The right of individuals to control their personal information and decide how it is collected, used, and shared.
Procedure
A is a series of steps or actions that are followed to achieve a specific goal.
Process control
A system that automatically monitors and manages physical processes (like temperature, speed, or pressure) to maintain desired output
Processors
Components that analyse the data from sensors and decide what actions to take in the context of control systems
Program counter
A special register that keeps track of the address of the next instruction to be executed.
Protocol
A set of rules that defines how data is transmitted and received over a network.
Prototype
Preliminary version of a system or product, designed to demonstrate its core features and functionality
Pseudocode
A human-readable representation of an algorithm that combines natural language with programming constructs.
Q
Query
Instructions written in a query language (such as SQL) that retrieve and manipulate data from a database.
R
Recursion
Process when function calls itself within its own definition/body.
Recursion
Process when function calls itself within its own definition/body.
Redundant Data
Occurs when the same piece of information is stored in multiple places within a database or a data storage system.
Referential Integrity
A fundamental concept in database management, ensuring that data remains reliable and accurate.
Relational Database Management System (RDBMS)
A type of DBMS that organises data into two-dimensional tables (relations) linked by keys.
Relational Databases
A collection of data items with predefined relationships between them, organized as a set of tables with columns and rows.
Remote hosting
Software hosted on external servers, accessed via the internet. Also referred to as cloud and SaaS (Software as a Service)
Retrieval
The process of accessing data stored in memory or storage devices.
Return value
The data that a method sends back to the code that called it.
Root
The topmost node of the tree.
Rules
Statements that define the relationships between facts and actions.
S
Scheduling
The process of determining which tasks or processes should be executed by the CPU at any given time.
Screen resolution
The number of pixels displayed on a screen, affecting the clarity and detail of images.
Search Engine
A software system that indexes and retrieves information from a database or the internet based on user queries.
Search Engine Optimization (SEO)
The process of optimizing web pages to improve their ranking in search engine results.
Selection sort
A sorting algorithm that repeatedly selects the smallest element from the unsorted part of the list and places it at the beginning.
Semantic Web
An extension of the World Wide Web that enables machines to understand and interpret the meaning (semantics) of information by using metadata and ontologies to create a web of linked data.
Sequential search algorithm
An algorithm that checks each element in a list one by one until the target element is found or the end of the list is reached.
Server
A device or program that provides services or resources to clients
Server-Side Scripting
Involves code that runs on the web server, using languages like PHP, Python, Ruby ,or Node.js.
Setters
Methods used to update the value of private attributes (in a controlled way).
Setters
Methods used to update the value of private or protected attributes (in a controlled way).
Simple Query
A query that retrieves data based on a single condition or criterion.
Simulation
A model that behaves in the same way as a real-world entity or process.
Software
A set of programs, instructions, or data that directs computer operation and allows it to execute specific tasks
Software license
A legal agreement that defines how you can use, share, or modify a piece of software
Spreadsheets
Software applications that allow users to organise data in rows and columns
Stakeholders
People or groups who are affected by or interested in a new system. This includes users, clients, developers, managers, and investors.
Standard
An agreed-upon specification that ensures interoperability between different systems and devices.
Standards
An agreed-upon specification that ensures compatibility and interoperability between different systems and technologies.
Static data structures
Data structures whose size is fixed at compile time.
Static Web Page
A web page that is delivered to the user exactly as stored , without any server-side processing or customization.
Storage
The process of saving data to memory or storage devices.
Storage Area Network (SAN)
A specialised network that provides high-speed access to consolidated storage devices.
Sub-graph
A smaller part of a larger graph, containing a subset of nodes and edges that maintain the original connections between those nodes.
Sub-procedures
Smaller, reusable blocks of code that help break down complex problems into manageable parts.
Subtree
The portion of the tree rooted at a particular node, consisting of that node together with all of its descendant nodes and the edges connecting them.
Supercomputers
Computers that are specialised for complex mathematical calculations and simulations.
Surveillance
The monitoring of individuals or groups using technology, often without their knowledge or consent
System resources
The hardware and software components that enable a computer to function effectively.
T
Test Case
A set of conditions or inputs used to evaluate whether a simulation program produces the expected output.
Three-Dimensional Visualization
Involves creating and displaying 3D models of objects, environments, or data.
Throughput
The actual rate of successful data transfer is often lower than the bandwidth due to various factors.
Transmission Control Protocol (TCP)
Protocol which ensures reliable, ordered, and error-checked delivery of data between applications.
Transmission media
The physical pathway or channel through which data is transmitted from one device to another in a network
Tree traversal
The process of visiting each node in a tree data structure in a specific order.
Truth table
A tool to show all possible combinations of input values (usually true or false) and their corresponding output for a logical operation or Boolean expression
Two-dimensional array
A data structure that organizes data in a grid-like format. It consists of rows and columns, allowing you to store and access data using two indices.
Two-Dimensional Visualisation
The representation of data or information in a flat (two-dimensional) space, such as a graph, chart, or image.
U
Ubiquitous computing
Also known as pervasive computing, is the concept of embedding computing technology into everyday objects and environments, making it seamlessly integrated and accessible.
UML
Unified Modelling Language (UML) is a standardised visual language used to model the design of software systems.
Uniform Resource Identifier (URI)
A string of characters that uniquely identifies a resource on the internet.
Unit testing
Testing individual components or modules of the software in isolation
URL
A Uniform Resource Locator (URL) is a specific type of URI that provides the address of a resource and how to access it.
Usability
metric of how the technology or system suits everybody
Usability
The ease with which users can create, manage, and interpret data.
User Acceptance Testing (UAT)
Validation process that ensures the software meets user needs and requirements before final deployment
V
Variable
A named storage location in memory that can hold a value, which can be changed during the execution of a program.
View
A virtual table created by a query that presents data in a specific format without modifying the underlying tables.
Virtual Local Area Network (VLAN)
A logical grouping of devices within a LAN, allowing them to communicate as if they were on the same physical network, even if they are not.
Virtual machine
A virtual machine (VM) is a software-based emulation of a physical computer.
Virtual memory
A technique that allows a computer to use secondary storage (e.g., a hard drive) as an extension of primary memory (RAM).
Virtual Private Network (VPN)
A technology that creates a secure and encrypted connection over a less secure network, such as the Internet and allows remote users to access a private network as if they were directly connected to it.
Visualization
The process of representing data or information graphically to make it easier to understand, analyze, and interpret
Visualization
The process of representing data or information graphically to make it easier to understand, analyze, and interpret.
W
Web browser
Software applications that allow users to access and navigate the World Wide Web
Web Crawlers
Automated programs that systematically browse the internet to collect information from web pages.
Web Indexing
A critical process that enables search engines to organize and retrieve information efficiently from the vast expanse of the internet.
Web page
A web page is a digital document accessible through a web browser , typically written in HTML and often enhanced with CSS and JavaScript to provide structure , style , and interactivity.
Web Page Structure
The organization and layout of elements on a web page, including headers, navigation menus, content sections, and footers.
Word processors
Software applications designed for creating, editing, and formatting text documents
World Wide Web
WWW is a system of interlinked hypertext documents and resources, accessed via the Internet using web browsers.