IB DP Computer Science Syllabus
IB DP Computer Science Syllabus
IB DP course syllabus
2016-2018
Computer science requires an understanding of the fundamental concepts of computational thinking as well as
knowledge of how computers and other digital devices operate.
The Diploma Programme computer science course is engaging, accessible, inspiring and rigorous. It has the
following characteristics.
• draws on a wide spectrum of knowledge
• enables and empowers innovation, exploration and the acquisition of further knowledge
• interacts with and influences cultures, society and how individuals and societies behave
• raises ethical issues
• is underpinned by computational thinking.
During the course the student will develop computational solutions. This will involve the ability to:
• identify a problem or unanswered question
• design, prototype and test a proposed solution liaise with clients to evaluate the success of the proposed solution
and make recommendations for future developments.
The study of computer science at HL demands a higher level of problem-solving skills and the ability to understand
and manipulate abstract concepts. Although no previous knowledge of computer science is required, some
exposure to programming is desirable.
Students at HL are required to study additional topics in the core, a case study and also extension material of a more
demanding nature in the option chosen.
Syllabus Outline
The core topics that must be studied, including some practical work, are:
Additional subject content will be introduced at HL by the annually issued case study.
Objectives
Having followed the Diploma Programme course in Computer Science, students will be expected to:
Assessment
The final Diploma grade in the subject is determined by two assessment components:
External
Paper 1, which consists of two compulsory sections:
Section A consists of several compulsory short answer questions
Section B consists of five compulsory structured questions.
Paper 2, which is linked to the option studied.
Paper 3, which consists of four compulsory questions based on a pre-seen case study.
Internal Assessment
a) The development of a computational solution, including a product and a 2,000 word written
supporting documentation.
b) The group 4 Project, a collaborative activity where students from different group 4 subjects
work together and are assessed using the criterion of Personal skills.
1.2 System 1
design basics 0
1.2.1 Components hardware, software, peripheral, network, human resources, roles of
of a computers, ethical issues
computer
system
1.2.4 System Stakeholders, Client requirements, gathering and representing systems info,
design and Design Cycles, Prototypes and clients involvement, Social & Ethical
analysis implications of system installation
1.2.1 Human Usability and Accessability, moral, ethical, social, economic and
2 interaction environmental implications of the interaction between humans and
with the machines
system
2.1 Computer 6
organisation
2.1.1 Computer CPU, ALU, Input & Outputs block diagram with MAR & MDR, Primary
architecture Memory, ROM & RAM, Cache Memory, Machine Instruction Cycle (Data bus
& Address Bus)
2.1.5 Secondary Identify the need for persistent storage. HDD Flash CD ROM
memory
2.1.6 Operating Main Functions of OS, Word Processors, Spreadsheets, Databases, Email,
systems and Web, CAD, Menus Toolbars GUIs
application
systems
2.1.9 Binary Define the terms: bit, byte, binary, denary/decimal, hexadecimal, how is
representati data represented in the computer, To include strings, integers, characters
on and colours
2.1.1 Simple logic AND, OR, NOT, NAND, NOR and XOR, construct truth tables & Logic
1 gates diagrams
3.1 Networks 9
3.1.1 Network LAN, VLAN, WAN, SAN, WLAN,internet, extranet, VPN, PAN, P2P, Standards,
fundamental Compatibility, Awareness of the OSI seven layer model is required
s
3.1.6 Data Protocol, data, packet, why protocols are necessary, speed of data
transmission transmission , compression, transmission media (metal conductor, fibre
optic, wireless), Packet switching.
3.1.1 Wireless advantages and disadvantages of wireless networks, hardware and
2 networking software, components, Characteristics, security,
4.1 General 1
Principles 0
4.1.1 Thinking Procedures appropriate to solving a problems, Evaluate solution order, the
procedurally role of sub-procedures.
4.1.4 Thinking Identify when decision-making is required, what decisions, Conditions,
logically Relationships, Testing AND, OR, NOT, If, THEN, ELSE etc.., Deduce logical
rules for real-world situations , relationships—Boolean tests
4.1.9 Thinking Identify the inputs and outputs required in a solution, Gantt charts, Pre-
ahead ordering, Caching/pre-fetching. Identify exceptions that need to be
considered in a specified problem solution libraries of pre-formed elements
for future use, Pre-conditions, Post Conditions
4.1.1 Thinking concurrent processing
4 concurrently
4.1.1 Thinking Selecting the pieces of information that are relevant to solving the problem,
7 abstractly why abstraction is required in the derivation of computational solutions for
a specified situation
4.2 Connecting 2
Computation 2
al Thinking
4.2.1 Algorithims sequential search, binary search, bubble sort, selection sort, binary vs
sequential search,
4.2.4 Flow Analyse Flow diagrams - variables, calculations, simple and nested loops,
Diagrams simple conditionals and multiple or nested conditionals
4.2.6 Psuedocode Analyse Psuedocode - variables, calculations, simple and nested loops,
simple conditionals and multiple or nested conditionals
4.2.8 Efficiency of the difference in efficiency between a single loop, nested loops, a loop that
Algorithim ends when a condition is met - iterations that a step will execute
4.3 Introduction 1
to 3
Programmin
g
4.3.1 Nature of fundamental operations of a computer, add, compare, retrieve and store
programmin data, fundamental and compound operation. Language, Syntax, Unabiguity,
g languages why we need High Level Language, compilers and interpreters, the virtual
machine
4.3.6 Use of variable, constant, operator, object, Define the operators =, ≠, <, <=, >, >=,
programmin mod, div. (Approvaed notation sheet), analyse, construct algorithims using
g languages loop and branching, the need for sub-programs (classes),
5.1 Abstract 2
Data 3
Structures
5.1.1 Thinking When it is required, Identification, state the output of the recursive
recursively algorithm
5.1.4 Abstract data characteristics of a two dimensional array, constructing algorithims with 2D
structures arrays, Stacks and Queues
5.1.1 Linked lists Dynamic Data structues, linked lists, adding a data item to linked list,
1 deleting specified data item, modifying the data held in the linked list,
searching for a given data item
5.1.1 Trees how trees operate logically, parent, left-child, right-child, subtree, root and
4 leaf, the result of inorder, postorder, and preorder tree traversal, Sketching
Binary Trees.
5.1.1 Applications static and dynamic data structures
8
6.1 Resource 8
Managemen
t
6.1.1 System The resources that need to be managed within a computer system,
resources availability, limitations, potential problems
6.1.5 Role of the What does the Operating system do? Managing memory, peripherals,
operating hardware, resource management techniques: scheduling, policies,
system multitasking, virtual memory, paging, interrupt, polling , the advantages of
specific OS for devices.
7.1 Centralised 1
Control 4
7.1.1 Centralized automatic doors, heating systems, taxi meters, elevators, washing
control machines, process control, device drivers, domestic robots, GPS systems,
systems traffic lights and other common devices , the uses of microprocessors and
sensor input in control systems. Inputs, processes and outputs. Social
implications
7.1.7 Distributed Centrally controlled system Versus a distributed system. The role of
systems autonomous agents acting within a larger system
D1 Objects as a 6
programmin
g concept
D1.1 Definition,
Template or
Class
D1.3 UML
Diagrams
D1.5 Decompositi
on and
Relationships
D1.9 Data types &
Parameters
D2 Features of 4
OOP
D2.1 Encapsulatio Definitions, advantages, disadvantages.
n,
Inheritence
&
Polymorphis
m
D2.7 Libraries of Definitions, advantages, disadvantages.
Objects
D2.8 OOP Disadvantages, programming teams, modularity in program development
D3 Program 2
developmen 0
t
D3.1 Terms class, identifier, primitive, instance variable, parameter variable, local
Definition variable, method, accessor, mutator, constructor, signature, return value,
private, protected, public, extends, static
D3.4 Primitive the uses of the primitive data types and the reference class string, primitive
data types types will be limited to int, long, double, char and Boolean
D3.5 Construct trace, explain or construct algorithms related to selection statements,
Code repetition statements, static arrays, UNICODE, Ethics
D4 Advanced 1
program 5
developmen
t
D4.1 Recursive Definition, Applications, limitations, trace and understand
Algorithims
D4.5 Object As typified by simple classes that are self-referential, algorithims with
Reference reference mechanisms
D4.7 ADTS Abstract Data Types, Features and nature of
D4.8 Lists Stacks Construct and understand code, features of, advantages of library
and Queues collections,
D4.1 Style and understand that meaningful identifiers, proper indentation and adequate
5 Conventions comments all improve the readability of code for humans
CS Case Study
IA Computation 30
al Solution