IB Computer Science · first assessment 2027
Interactive lessons
One lesson per syllabus understanding, each ending with exam-style questions and a markscheme. Every unit has one free lesson.
- Lessons
- 112
- Unit tests
- 25
Theme AConcepts of computer science
A1Computer fundamentals
A1.1Computer hardware and operation9 lessons· Unit test
- A1.1.1CPU componentsFree
- A1.1.2Role of a GPUPremium
- A1.1.3Differences between CPU and GPUHLPremium
- A1.1.4Types of primary memoryPremium
- A1.1.5Fetch, decode and execute cyclePremium
- A1.1.6Pipelining in multi-core architecturesHLPremium
- A1.1.7Internal and external secondary memory storagePremium
- A1.1.8Concept of compressionPremium
- A1.1.9Cloud computing servicesPremium
- Unit test≈ 60 min · 25 + 11 questionsPremium
A1.2Data representation and computer logic5 lessons· Unit test
A1.3Operating systems and control systems7 lessons· Unit test
- A1.3.1Role of operating systemsFree
- A1.3.2Functions of an operating systemPremium
- A1.3.3Approaches to schedulingPremium
- A1.3.4Polling and interrupt handlingPremium
- A1.3.5Multitasking and resource allocationHLPremium
- A1.3.6Control system componentsHLPremium
- A1.3.7Control systems in real-world applicationsHLPremium
- Unit test≈ 60 min · 27 + 10 questionsPremium
A1.4Translation1 lesson· Unit testHL
A2Networks
A2.1Network fundamentals5 lessons· Unit test
- A2.1.1Purpose and characteristics of networksFree
- A2.1.2Purpose, benefits and limitations of modern digital infrastructuresPremium
- A2.1.3Function of network devicesPremium
- A2.1.4Network protocols for transport and applicationPremium
- A2.1.5Function of the TCP/IP modelHLPremium
- Unit test≈ 60 min · 25 + 10 questionsPremium
A2.2Network architecture4 lessons· Unit test
A2.3Data transmissions4 lessons· Unit test
A3Databases
A3.1Database fundamentals1 lesson· Unit test
A3.2Database design7 lessons· Unit test
- A3.2.1Database schemaFree
- A3.2.2Construct ERDsPremium
- A3.2.3Data types used in relational databases (MySQL)Premium
- A3.2.4Construct tables for relational databasesPremium
- A3.2.5Difference between normal formsPremium
- A3.2.6Constructing a database normalized to 3NFPremium
- A3.2.7Evaluate the need for denormalizing databasesPremium
- Unit test≈ 75 min · 20 + 8 questionsPremium
A3.3Database programming6 lessons· Unit test
- A3.3.1Data language types within SQLFree
- A3.3.2Construct queries between two tables in SQLPremium
- A3.3.3Using SQL to update data in a databasePremium
- A3.3.4Calculations using SQL aggregate functionsHLPremium
- A3.3.5Different database viewsHLPremium
- A3.3.6How transactions maintain data integrity in a databaseHLPremium
- Unit test≈ 75 min · 23 + 12 questionsPremium
A3.4Alternative databases and data warehouses4 lessons· Unit testHL
- A3.4.1Types of databases as approaches to storing dataFree
- A3.4.2Primary objectives of data warehouses in data management and business intelligencePremium
- A3.4.3Role of OLAP and data mining for business intelligencePremium
- A3.4.4Features of distributed databasesPremium
- Unit test≈ 70 min · 20 + 10 questionsPremium
A4Machine learning
A4.1Machine learning fundamentals2 lessons· Unit test
A4.2Data preprocessing3 lessons· Unit testHL
A4.3Machine learning approaches10 lessons· Unit testHL
- A4.3.1Linear regression for predicting continuous outcomesFree
- A4.3.2Classification techniques in supervised learningPremium
- A4.3.3Role of hyperparameter tuning when evaluating supervised learning algorithmsPremium
- A4.3.4Clustering techniques in unsupervised learningPremium
- A4.3.5Association rule learning techniquesPremium
- A4.3.6How an agent learns to make decisions by interacting with its environment in reinforcement learningPremium
- A4.3.7Application of genetic algorithms in various real-world situationsPremium
- A4.3.8Structure and function of ANNs and multi-layer networksPremium
- A4.3.9How CNNs are designed to adaptively learn spatial hierarchies of features in imagesPremium
- A4.3.10Importance of model selection and comparison in machine learningPremium
- Unit test≈ 80 min · 22 + 12 questionsPremium
Theme BComputational thinking and problem-solving
B1Computational thinking
B1.1Approaches to computational thinking4 lessons· Unit test
- B1.1.1Construct a problem specificationFree
- B1.1.2Fundamental concepts of computational thinkingPremium
- B1.1.3Applying computational thinking to fundamental concepts in computer sciencePremium
- B1.1.4Trace flowcharts for a range of programming algorithmsPremium
- Unit test≈ 50 min · 17 + 8 questionsPremium
B2Programming
B2.1Programming fundamentals4 lessons· Unit test
- B2.1.1Construct and trace programs using a range of global and local variables of various data typesFree
- B2.1.2Construct programs that can extract and manipulate substringsPremium
- B2.1.3How programs use common exception handling techniquesPremium
- B2.1.4Construct and use common debugging techniquesPremium
- Unit test≈ 50 min · 16 + 8 questionsPremium
B2.2Data structures4 lessons· Unit test
B2.3Programming constructs4 lessons· Unit test
B2.4Programming algorithms5 lessons· Unit test
- B2.4.1Big O Notation and Algorithm EfficiencyFree
- B2.4.2Linear Search and Binary SearchPremium
- B2.4.3Bubble Sort and Selection SortPremium
- B2.4.4Recursion — Fundamental Concept and Applications (AHL)HLPremium
- B2.4.5Constructing and Tracing Recursive Algorithms (AHL)HLPremium
- Unit test≈ 50 min · 17 + 7 questionsPremium
B2.5File processing1 lesson· Unit test
B3Object-oriented programming
B3.1Fundamentals of OOP for a single class5 lessons· Unit test
- B3.1.1Fundamentals of Object-Oriented ProgrammingFree
- B3.1.2Designing Classes — Attributes, Behaviours and UML DiagramsPremium
- B3.1.3Static vs Non-Static Variables and MethodsPremium
- B3.1.4Defining Classes and Instantiating ObjectsPremium
- B3.1.5Encapsulation and Information HidingPremium
- Unit test≈ 50 min · 14 + 6 questionsPremium
B3.2Fundamentals of OOP for multiple classes5 lessons· Unit testHL
- B3.2.1Inheritance — Superclasses, Subclasses and Code ReusabilityFree
- B3.2.2Polymorphism — Static (Method Overloading) and Dynamic (Method Overriding)Premium
- B3.2.3Abstraction in OOP — Abstract Classes and MethodsPremium
- B3.2.4Composition and Aggregation in Class RelationshipsPremium
- B3.2.5Commonly Used Design Patterns in OOPPremium
- Unit test≈ 50 min · 14 + 6 questionsPremium
B4Abstract data types (ADTs)
B4.1Fundamentals of ADTs6 lessons· Unit testHL
- B4.1.1Properties and purpose of ADTs in programmingFree
- B4.1.2Evaluate linked listsPremium
- B4.1.3Construct and apply linked lists: singly, doubly and circularPremium
- B4.1.4Structures and properties of binary search trees (BSTs)Premium
- B4.1.5Construct and apply sets as an ADTPremium
- B4.1.6Core principles of ADTs — hash tablesPremium
- Unit test≈ 50 min · 15 + 6 questionsPremium