Home
All Resources
Login
Home
All Resources
Past Papers
Syllabus Notes
Revision Qns
Tutors
Login
Computer Science | 9618
1.1 Data Representation -
Show understanding of binary magnitudes and the difference between binary prefixes and decimal prefixes
1.1 Data Representation -
Show understanding of different number systems
1.1 Data Representation -
Perform binary addition and subtraction
1.1 Data Representation -
Describe practical applications where Binary Coded Decimal (BCD) and Hexadecimal are used
1.1 Data Representation -
Show understanding of and be able to represent character data in its internal binary form, depending on the character set used
1.2 Multimedia -
Show understanding of how data for a bitmapped image are encoded
1.2 Multimedia -
Perform calculations to estimate the file size for a bitmap image
1.2 Multimedia -
Show understanding of the effects of changing elements of a bitmap image on the image quality and file size
1.2 Multimedia -
Show understanding of how data for a vector graphic are encoded
1.2 Multimedia -
Justify the use of a bitmap image or a vector graphic for a given task
1.2 Multimedia -
Show understanding of how sound is represented and encoded
1.2 Multimedia -
Show understanding of the impact of changing the sampling rate and resolution
1.3 Compression -
Show understanding of the need for and examples of the use of compression
1.3 Compression -
Show understanding of lossy and lossless compression and justify the use of a method in a given situation
1.3 Compression -
Show understanding of how a text file, bitmap image, vector graphic and sound file can be compressed
2.1 Networks including the internet -
Show understanding of the purpose and benefits of networking devices
2.1 Networks including the internet -
Show understanding of the characteristics of a LAN (local area network) and a WAN (wide area network)
2.1 Networks including the internet -
Explain the client-server and peer-to-peer models of networked computers
2.1 Networks including the internet -
Show understanding of thin-client and thick-client and the differences between them
2.1 Networks including the internet -
Show understanding of the bus, star, mesh and hybrid topologies
2.1 Networks including the internet -
Show understanding of cloud computing
2.1 Networks including the internet -
Show understanding of the differences between and implications of the use of wireless and wired networks
2.1 Networks including the internet -
Describe the hardware that is used to support a LAN
2.1 Networks including the internet -
Describe the role and function of a router in a network
2.1 Networks including the internet -
Show understanding of Ethernet and how collisions are detected and avoided
2.1 Networks including the internet -
Show understanding of bit streaming
2.1 Networks including the internet -
Show understanding of the differences between the World Wide Web (WWW) and the internet
2.1 Networks including the internet -
Describe the hardware that is used to support the internet
2.1 Networks including the internet -
Explain the use of IP addresses in the transmission of data over the internet
2.1 Networks including the internet -
Explain how a Uniform Resource Locator (URL) is used to locate a resource on the World Wide Web (WWW) and the role of the Domain Name Service (DNS)
3.1 Computers and their components -
Show understanding of the need for input, output, primary memory and secondary (including removable) storage
3.1 Computers and their components -
Show understanding of embedded systems
3.1 Computers and their components -
Describe the principal operations of hardware devices
3.1 Computers and their components -
Show understanding of the use of buffers
3.1 Computers and their components -
Explain the differences between Random Access Memory (RAM) and Read Only Memory (ROM)
3.1 Computers and their components -
Explain the differences between Static RAM (SRAM) and Dynamic RAM (DRAM)
3.1 Computers and their components -
Explain the difference between Programmable ROM (PROM), Erasable Programmable ROM (EPROM) and Electrically Erasable Programmable ROM (EEPROM)
3.1 Computers and their components -
Show an understanding of monitoring and control systems
3.2 Logic Gates and Logic Circuits -
Use the following logic gate symbols: NOT, AND, OR, NAND, NOR, XOR
3.2 Logic Gates and Logic Circuits -
Understand and define the functions of: NOT, AND, OR, NAND, NOR and XOR (EOR) gates
3.2 Logic Gates and Logic Circuits -
Construct the truth table for each of the logic gates above
3.2 Logic Gates and Logic Circuits -
Construct a logic circuit
3.2 Logic Gates and Logic Circuits -
Construct a truth table
3.2 Logic Gates and Logic Circuits -
Construct a logic expression
4.1 Central Processing Unit (CPU) Architecture -
Show understanding of the basic Von Neumann model for a computer system and the stored program concept
4.1 Central Processing Unit (CPU) Architecture -
Show understanding of the purpose and role of registers, including the difference between general purpose and special purpose registers
4.1 Central Processing Unit (CPU) Architecture -
Show understanding of the purpose and roles of the Arithmetic and Logic Unit (ALU), Control Unit (CU) and system clock, Immediate Access Store (IAS)
4.1 Central Processing Unit (CPU) Architecture -
Show understanding of how data are transferred between various components of the computer system using the address bus, data bus and control bus
4.1 Central Processing Unit (CPU) Architecture -
Show understanding of how factors contribute to the performance of the computer system
4.1 Central Processing Unit (CPU) Architecture -
Understand how different ports provide connection to peripheral devices
4.1 Central Processing Unit (CPU) Architecture -
Describe the stages of the Fetch-Execute (F-E) cycle
4.1 Central Processing Unit (CPU) Architecture -
Show understanding of the purpose of interrupts
4.2 Assembly Language -
Show understanding of the relationship between assembly language and machine code
4.2 Assembly Language -
Describe the different stages of the assembly process for a two-pass assembler
4.2 Assembly Language -
Trace a given simple assembly language program
4.2 Assembly Language -
Show understanding that a set of instructions are grouped
4.2 Assembly Language -
Show understanding of and be able to use different modes of addressing
4.3 Bit manipulation -
Show understanding of and perform binary shifts
4.3 Bit manipulation -
Show understanding of how bit manipulation can be used to monitor/control a device
5.1 Operating Systems -
Explain why a computer system requires an Operating System (OS)
5.1 Operating Systems -
Explain the key management tasks carried out by the Operating System
5.1 Operating Systems -
Show understanding of the need for typical utility software provided with an Operating System
5.1 Operating Systems -
Show understanding of program libraries
5.2 Language Translators -
Show understanding of the need for: assembler software for the translation of an assembly language program
5.2 Language Translators -
Show understanding of the need for: a compiler for the translation of a high-level language program
5.2 Language Translators -
Show understanding of the need for: an interpreter for translation and execution of a high-level language program
5.2 Language Translators -
Explain the benefits and drawbacks of using either a compiler or interpreter and justify the use of each
5.2 Language Translators -
Show awareness that high-level language programs may be partially compiled and partially interpreted, such as Java (console mode)
5.2 Language Translators -
Describe features found in a typical Integrated Development Environment (IDE)
6.1 Data Security -
Explain the difference between the terms security, privacy and integrity of data
6.1 Data Security -
Show appreciation of the need for both the security of data and the security of the computer system
6.1 Data Security -
Describe security measures designed to protect computer systems, ranging from the stand-alone PC to a network of computers
6.1 Data Security -
Show understanding of the threats to computer and data security posed by networks and the internet
6.1 Data Security -
Describe methods that can be used to restrict the risks posed by threats
6.1 Data Security -
Describe security methods designed to protect the security of data
6.2 Data Integrity -
Describe how data validation and data verification help protect the integrity of data
6.2 Data Integrity -
Describe and use methods of data validation
6.2 Data Integrity -
Describe and use methods of data verification during data entry and data transfer
7.1 Ethics and Ownership -
Show understanding of the need for and purpose of ethics as a computing professional
7.1 Ethics and Ownership -
Show understanding of the need to act ethically and the impact of acting ethically or unethically for a given situation
7.1 Ethics and Ownership -
Show understanding of the need for copyright legislation
7.1 Ethics and Ownership -
Show understanding of the different types of software licensing and justify the use of a licence for a given situation
7.1 Ethics and Ownership -
Show understanding of Artificial Intelligence (AI)
8.1 Database Concepts -
Show understanding of the limitations of using a file-based approach for the storage and retrieval of data
8.1 Database Concepts -
Describe the features of a relational database that address the limitations of a file-based approach
8.1 Database Concepts -
Show understanding of and use the terminology associated with a relational database model
8.1 Database Concepts -
Use an entity-relationship (E-R) diagram to document a database design
8.1 Database Concepts -
Show understanding of the normalisation process
8.1 Database Concepts -
Explain why a given set of database tables are, or are not, in 3NF
8.1 Database Concepts -
Produce a normalised database design for a description of a database, a given set of data, or a given set of tables
8.2 Database Management Systems (DBMS) -
Show understanding of the features provided by a Database Management System (DBMS) that address the issues of a file-based approach
8.2 Database Management Systems (DBMS) -
Show understanding of how software tools found within a DBMS are used in practice
8.3 Data Definition Language (DDL) and Data Manipulation Language (DML) -
Show understanding that the DBMS carries out all creation/modification of the database structure using its Data Definition Language (DDL)
8.3 Data Definition Language (DDL) and Data Manipulation Language (DML) -
Show understanding that the DBMS carries out all queries and maintenance of data using its DML
8.3 Data Definition Language (DDL) and Data Manipulation Language (DML) -
Show understanding that the industry standard for both DDL and DML is Structured Query Language (SQL)
8.3 Data Definition Language (DDL) and Data Manipulation Language (DML) -
Understand given SQL (DDL) statements and be able to write simple SQL (DDL) statements using a sub-set of statements
8.3 Data Definition Language (DDL) and Data Manipulation Language (DML) -
Write an SQL script to query or modify data (DML) which are stored in (at most two) database tables
9.1 Computational Thinking Skills -
Show an understanding of abstraction
9.1 Computational Thinking Skills -
Describe and use decomposition
9.2 Algorithms -
Show understanding that an algorithm is a solution to a problem expressed as a sequence of defined steps
9.2 Algorithms -
Use suitable identifier names for the representation of data used by a problem and represent these using an identifier table
9.2 Algorithms -
Write pseudocode that contains input, process and output
9.2 Algorithms -
pseudocode using the three basic constructs of sequence, decision, and iteration
9.2 Algorithms -
Document a simple algorithm using a structured English description, a flowchart or pseudocode
9.2 Algorithms -
Write pseudocode from a structured English description
9.2 Algorithms -
Write pseudocode from a flowchart
9.2 Algorithms -
Draw a flowchart from a structured English description
9.2 Algorithms -
Draw a flowchart from pseudocode
9.2 Algorithms -
Describe and use the process of stepwise refinement to express an algorithm to a level of detail from which the task may be programmed
9.2 Algorithms -
Use logic statements to define parts of an algorithm solution
10.1 Data Types and Records -
Select and use appropriate data types for a problem solution
10.1 Data Types and Records -
Show understanding of the purpose of a record structure to hold a set of data of different data types under one identifier
10.2 Arrays -
Use the technical terms associated with arrays
10.2 Arrays -
Select a suitable data structure (1D or 2D array) to use for a given task
10.2 Arrays -
Write pseudocode for 1D and 2D arrays
10.2 Arrays -
Write pseudocode to process array data
10.3 Files -
Show understanding of why files are needed
10.3 Files -
Write pseudocode to handle text files that consist of one or more lines
10.4 Introduction to Abstract Data Types (ADT) -
Show understanding that an ADT is a collection of data and a set of operations on those data
10.4 Introduction to Abstract Data Types (ADT) -
Show understanding that a stack, queue and linked list are examples of ADTs
10.4 Introduction to Abstract Data Types (ADT) -
Use a stack, queue and linked list to store data
10.4 Introduction to Abstract Data Types (ADT) -
Describe how a queue, stack and linked list can be implemented using arrays
11.1 Programming Basics -
Implement and write pseudocode from a given design presented as either a program flowchart or structured English
11.1 Programming Basics -
Write pseudocode statements for: the declaration and initialisation of constants
11.1 Programming Basics -
Write pseudocode statements for: the declaration of variables
11.1 Programming Basics -
Write pseudocode statements for: the assignment of values to variables
11.1 Programming Basics -
Write pseudocode statements for: expressions involving any of the arithmetic or logical operators input from the keyboard and output to the console
11.1 Programming Basics -
Use built-in functions and library routines
11.2 Constructs -
Use pseudocode to write: an 'IF' statement including the 'ELSE' clause and nested IF statements
11.2 Constructs -
Use pseudocode to write: a 'CASE' structure
11.2 Constructs -
Use pseudocode to write: a 'count-controlled' loop
11.2 Constructs -
Use pseudocode to write: a 'post-condition' loop
11.2 Constructs -
Use pseudocode to write: a 'pre-condition' loop
11.2 Constructs -
Justify why one loop structure may be better suited to solve a problem than the others
11.3 Structured Programming -
Define and use a procedure
11.3 Structured Programming -
Explain where in the construction of an algorithm it would be appropriate to use a procedure
11.3 Structured Programming -
Use parameters
11.3 Structured Programming -
Define and use a function
11.3 Structured Programming -
Explain where in the construction of an algorithm it is appropriate to use a function
11.3 Structured Programming -
Use the terminology associated with procedures and functions
11.3 Structured Programming -
Write efficient pseudocode
12.1 Program Development Life cycle -
Show understanding of the purpose of a development life cycle
12.1 Program Development Life cycle -
Show understanding of the need for different development life cycles depending on the program being developed
12.1 Program Development Life cycle -
Describe the principles, benefits and drawbacks of each type of life cycle
12.1 Program Development Life cycle -
Show understanding of the analysis, design, coding, testing and maintenance stages in the program development life cycle
12.2 Program Design -
Use a structure chart to decompose a problem into sub-tasks and express the parameters passed between the various modules/procedures/functions which are part of the algorithm design
12.2 Program Design -
Show understanding of the purpose of state-transition diagrams to document an algorithm
12.3 Program Testing and Maintenance -
Show understanding of ways of exposing and avoiding faults in programs
12.3 Program Testing and Maintenance -
Locate and identify the different types of errors
12.3 Program Testing and Maintenance -
Correct identified errors
12.3 Program Testing and Maintenance -
Show understanding of the methods of testing available and select appropriate data for a given method
12.3 Program Testing and Maintenance -
Show understanding of the need for a test strategy and test plan and their likely contents
12.3 Program Testing and Maintenance -
Choose appropriate test data for a test plan
12.3 Program Testing and Maintenance -
Show understanding of the need for continuing maintenance of a system and the differences between each type of maintenance
12.3 Program Testing and Maintenance -
Analyse an existing program and make amendments to enhance functionality
13.1 User-defined data types -
Show understanding of why user-defined types are necessary
13.1 User-defined data types -
Define and use non-composite types
13.1 User-defined data types -
Define and use composite data types
13.1 User-defined data types -
Choose and design an appropriate user-defined data type for a given problem
13.2 File organisation and access -
Show understanding of the methods of file organisation and select an appropriate method of file organisation and file access for a given problem
13.2 File organisation and access -
Show understanding of methods of file access
13.2 File organisation and access -
Show understanding of hashing algorithms
13.3 Floating-point numbers, representation and manipulation -
Describe the format of binary floating-point real numbers
13.3 Floating-point numbers, representation and manipulation -
Convert binary floating-point real numbers into denary and vice versa
13.3 Floating-point numbers, representation and manipulation -
Normalise floating-point numbers
13.3 Floating-point numbers, representation and manipulation -
Show understanding of the consequences of a binary representation only being an approximation to the real number it represents (in certain cases)
13.3 Floating-point numbers, representation and manipulation -
Show understanding that binary representations can give rise to rounding errors
14.1 Protocols -
Show understanding of why a protocol is essential for communication between computers
14.1 Protocols -
Show understanding of how protocol implementation can be viewed as a stack, where each layer has its own functionality
14.1 Protocols -
Show understanding of the TCP/IP protocol suite
14.1 Protocols -
Show understanding of protocols (HTTP, FTP, POP3, IMAP, SMTP, BitTorrent) and their purposes
14.2 Circuit switching, packet switching -
Show understanding of circuit switching
14.2 Circuit switching, packet switching -
Show understanding of packet switching
15.1 Processors, Parallel Processing and Virtual Machines -
Show understanding of Reduced Instruction Set Computers (RISC) and Complex Instruction Set Computers (CISC) processors
15.1 Processors, Parallel Processing and Virtual Machines -
Show understanding of the importance/use of pipelining and registers in RISC processors
15.1 Processors, Parallel Processing and Virtual Machines -
Show understanding of the four basic computer architectures
15.1 Processors, Parallel Processing and Virtual Machines -
Show understanding of the characteristics of massively parallel computers
15.1 Processors, Parallel Processing and Virtual Machines -
Show understanding of the concept of a virtual machine
15.2 Boolean Algebra and Logic Circuits -
Produce truth tables for logic circuits including half adders and full adders
15.2 Boolean Algebra and Logic Circuits -
Show understanding of a flip-flop (SR, JK)
15.2 Boolean Algebra and Logic Circuits -
Show understanding of Boolean algebra
15.2 Boolean Algebra and Logic Circuits -
Show understanding of Karnaugh maps (K-map)
16.1 Purposes of an Operating System (OS) -
Show understanding of how an OS can maximise the use of resources
16.1 Purposes of an Operating System (OS) -
Describe the ways in which the user interface hides the complexities of the hardware from the user
16.1 Purposes of an Operating System (OS) -
Show understanding of process management
16.1 Purposes of an Operating System (OS) -
Show understanding of virtual memory, paging and segmentation for memory management
16.2 Translation Software -
Show understanding of how an interpreter can execute programs without producing a translated version
16.2 Translation Software -
Show understanding of the various stages in the compilation of a program
16.2 Translation Software -
Show understanding of how the grammar of a language can be expressed using syntax diagrams or Backus-Naur Form (BNF) notation
16.2 Translation Software -
Show understanding of how Reverse Polish Notation (RPN) can be used to carry out the evaluation of expressions
17.1 Encryption, Encryption Protocols and Digital Certificates -
Show understanding of how encryption works
17.1 Encryption, Encryption Protocols and Digital Certificates -
Show awareness of the Secure Socket Layer (SSL)/Transport Layer Security (TLS)
17.1 Encryption, Encryption Protocols and Digital Certificates -
Show understanding of digital certification
18.1 Artificial Intelligence (AI) -
Show understanding of how graphs can be used to aid Artificial Intelligence (AI)
18.1 Artificial Intelligence (AI) -
Show understanding of how artificial neural networks have helped with machine learning
18.1 Artificial Intelligence (AI) -
Show understanding of Deep Learning, Machine Learning and Reinforcement Learning and the reasons for using these methods
18.1 Artificial Intelligence (AI) -
Show understanding of back propagation of errors and regression methods in machine learning
19.1 Algorithms -
Show understanding of linear and binary searching methods
19.1 Algorithms -
Show understanding of insertion sort and bubble sort methods
19.1 Algorithms -
Show understanding of and use Abstract Data Types (ADT)
19.1 Algorithms -
Show how it is possible for ADTs to be implemented from another ADT
19.1 Algorithms -
Show understanding that different algorithms which perform the same task can be compared by using criteria (e.g. time taken to complete the task and memory used)
19.2 Recursion -
Show understanding of recursion
19.2 Recursion -
Show awareness of what a compiler has to do to translate recursive programming code
20.1 Programming Paradigms -
Understanding what is meant by a programming paradigm
20.1 Programming Paradigms -
Show understanding of the characteristics of a number of programming paradigms: Low-level
20.1 Programming Paradigms -
Show understanding of the characteristics of a number of programming paradigms: Imperative (Procedural)
20.1 Programming Paradigms -
Show understanding of the characteristics of a number of programming paradigms: Object Oriented
20.1 Programming Paradigms -
Show understanding of the characteristics of a number of programming paradigms: Declarative
20.2 File Processing and Exception Handling -
Write code to perform file-processing operations
20.2 File Processing and Exception Handling -
Show understanding of an exception and the importance of exception handling