Standard set
Computer Science 9-1
Standards
Showing 118 of 118 standards.
CS
iGCSE_Computer Science (9-1)
CS.PS
Problem solving
CS.Pr
Programming
CS.Da
Data
CS.Co
Computers
CS.CI
Communication and the internet
CS.BP
The Bigger Picture
CS.PS.1
Algorithms
CS.PS.2
Decomposition and abstraction
CS.Pr.1
Develop code
CS.Pr.2
Constructs
CS.Pr.3
Data types and structures
CS.Pr.4
Input/output
CS.Pr.5
Operators
CS.Pr.6
Subprograms
CS.Da.1
Binary
CS.Da.2
Understand how computers represent and manipulate numbers (unsigned integers, signed integers
CS.Da.3
Data storage and compression
CS.Da.4
Encryption
CS.Co.1
Machines and computational modelling
CS.Co.2
Hardware
CS.Co.3
Logic
CS.Co.4
Software
CS.Co.5
Programming languages
CS.CI.1
Networks
CS.CI.2
Network security
CS.CI.3
The internet and the world wide web
CS.BP.1
Emerging trends, issues and impact
CS.PS.1a
Understand what an algorithm is, what algorithms are used for and be able to interpret algorithms (flowcharts, pseudocode, written descriptions, program code).
CS.PS.1b
Understand how to create an algorithm to solve a particular problem, making use of programming constructs (sequence, selection, iteration) and using appropriate conventions (flowchart, pseudocode, written description, draft program code).
CS.PS.1c
Understand the purpose of a given algorithm and how an algorithm works.
CS.PS.1d
Understand how to determine the correct output of an algorithm for a given set of data.
CS.PS.1d
Understand how to identify and correct errors in algorithms, including using trace tables.
CS.PS.1e
Understand how to code an algorithm in a high-level language.
CS.PS.1f
Understand how the choice of algorithm is influenced by the data structures and data values that need to be manipulated.
CS.PS.1g
Understand how standard algorithms work (bubble sort, merge sort, linear search, binary search).
CS.PS.1h
Be able to evaluate the fitness for purpose of algorithms in meeting specified requirements efficiently, using logical reasoning and test data.
CS.PS.2a
Be able to analyse a problem, investigate requirements (inputs, outputs, processing, initialisation) and design solutions.
CS.PS.2b
Be able to decompose a problem into smaller sub-problems.
CS.PS.2c
Understand how abstraction can be used effectively to model aspects of the real world.
CS.PS.2d
Be able to program abstractions of real-world examples.
CS.Pr.1a
Be able to write programs in a high-level programming language.
CS.Pr.1b
Understand the benefit of producing programs that are easy to read and be able to use techniques (comments, descriptive names (variables, constants, subprograms), indentation) to improve readability and to explain how the code works.
CS.Pr.1c
Be able to differentiate between types of error in programs (logic, syntax, runtime).
CS.Pr.1d
Be able to design and use test plans and test data (normal, boundary, erroneous).
CS.Pr.1e
Be able to interpret error messages and identify, locate and fix errors in a program.
CS.Pr.1f
Be able to determine what value a variable will hold at a given point in a program (trace table).
CS.Pr.1g
Be able to determine the strengths and weaknesses of a program and suggest improvements.
CS.Pr.2a
Understand the structural components of a program (variable and type declarations, command sequences, selection, iteration, data structures, subprograms
CS.Pr.2b
Be able to use sequencing, selection and iteration constructs in their programs.
CS.Pr.3a
Understand the need for, and understand how to use, data types (integer, real, Boolean, char, string).
CS.Pr.3b
Understand the need for, and understand how to use, data structures (records, one-dimensional arrays, two-dimensional arrays).
CS.Pr.3c
Understand the need for, and how to manipulate, strings
CS.Pr.3d
Understand the need for, and how to use, variables and constants.
CS.Pr.3e
Understand the need for, and how to use, global and local variables when implementing subprograms.
CS.Pr.4a
Understand how to write code that accepts and responds appropriately to user input.
CS.Pr.4b
Understand the need for, and how to implement, validation.
CS.Pr.4c
Be able to write code that reads/writes from/to a text file.
CS.Pr.5a
Understand the purpose of, and how to use, arithmetic operators (add, subtract, divide, multiply, modulus, integer division).
CS.Pr.5b
Understand the purpose of, and how to use, relational operators (equal to, less than, greater than, not equal to, less than or equal to, greater than or equal to)
CS.Pr.5c
Understand the purpose of, and how to use, logic operators (AND, OR, NOT).
CS.Pr.5a
Understand the benefits of using subprograms and be able to write code that uses user-written and pre-existing (built-in, library) subprograms.
CS.Pr.5b
Understand the concept of passing data into and out of subprograms (procedures, functions).
CS.Pr.5c
Be able to create subprograms that use parameters.
CS.Da.1a
Understand that computers use binary to represent data (numbers, text, sound, graphics) and program instructions.
CS.Da.1b
Understand how computers represent and manipulate numbers (unsigned integers, signed integers
CS.Da.1c
Be able to convert between binary and denary whole numbers (0–255).
CS.Da.1d
Understand how to perform binary arithmetic (add, shifts (logical and arithmetic)) and understand the concept of overflow.
CS.Da.1e
Understand why hexadecimal notation is used and be able to convert between hexadecimal and binary.
CS.Da.2a
Understand how computers encode characters using ASCII and Unicode.
CS.Da.2b
Understand how bitmap images are represented in binary (pixels, resolution, colour depth)
CS.Da.2c
Understand how sound, an analogue signal, is represented in binary.
CS.Da.2d
Understand the limitations of binary representation of data (sampling frequency, resolution) when constructed by the number of available bits.
CS.Da.3a
Understand how to use and convert between binary and denary multiples (as defined by the International Electrotechnical Commission (IEC)): • bit • nibble • byte • kibibyte (KiB) 210 • mebibyte (MiB) 220 • gibibyte (GiB) 230 • tebibyte (TiB) 240 • kilobyte (kB), 103 • megabyte (MB) 106 • gigabyte (GB) 109 • terabyte (TB) 1012.
CS.Da.3b
Understand the need for data compression and methods of compressing data (lossless, lossy), and that JPEG and MP3 are examples of lossy algorithms.
CS.Da.3c
Understand how a lossless, run-length encoding (RLE) algorithm works.
CS.Da.3d
Understand how a lossless, run-length encoding (RLE) algorithm works.
CS.Da.3e
Understand that file storage is measured in bytes and be able to calculate file sizes.
CS.Da.4a
Understand the need for data encryption.
CS.Da.4b
Understand how encryption algorithms work (Pigpen cipher, Caesar cipher, Vigenére cipher, Rail Fence cipher).
CS.Co.1a
Understand the input-process-output mode
CS.Co.1b
Understand that there is a range of computational models (sequential, parallel, multi-agent).
CS.Co.2a
Understand the function of the hardware components of a computer system (central processing unit (CPU), main memory, secondary storage, input and output devices) and how they work together
CS.Co.2b
Understand the function of different types of memory (random-access memory (RAM), read-only memory (ROM), cache, virtual memory).
CS.Co.2c
Understand the concept of a stored program and the role of components of the CPU (control unit (CU), arithmetic/logic unit (ALU), registers, clock, address bus, data bus, control bus) in the fetch-decodeexecute cycle (the Von Neumann model).
CS.Co.2d
Understand factors that affect the performance of the CPU (clock speed, number of processor cores, size of cache, type of cache).
CS.Co.2e
Understand how data is stored on physical devices (magnetic, optical, solid state).
CS.Co.2f
Understand the concept of storing data in the ‘cloud’ and other contemporary secondary storage.
CS.Co.2g
Understand the need for embedded systems and their functions.
CS.Co.3a
Be able to construct and interpret truth tables for a given logic statement (AND, OR, NOT).
CS.Co.3b
Be able to produce logic statements for a given problem.
CS.Co.4a
Know what an operating system is and how it manages files, processes, hardware and the user interface.
CS.Co.4b
Understand the purpose and functions of utility software (managing, repairing and converting files; compression; defragmentation; backing up; anti-malware (antivirus, anti-spyware)).
CS.Co.4c
Understand how software can be used to simulate and model aspects of the real world.
CS.Co.4d
Understand what is meant by system software and application software.
CS.Co.5a
Understand what is meant by high-level and low-level programming languages and understand their suitability for a particular task.
CS.Co.5b
Understand what is meant by an assembler, a compiler and an interpreter when translating programming languages and know the advantages and disadvantages of each.
CS.CI.1a
Understand why computers are connected in a network
CS.CI.1b
Understand the different types of networks (local area network (LAN), wide area network (WAN), personal area network (PAN)) and usage models (client-server, peer-to-peer).
CS.CI.1c
Understand wired and wireless connectivity.
CS.CI.1d
Understand that network data speeds are measured in bits per second (Mbps, Gbps).
CS.CI.1e
Understand the role of and need for network protocols (Ethernet®, Wi-Fi, TCP/IP, HTTP, HTTPS, FTP, email (POP3, SMTP, IMAP))
CS.CI.1f
Understand that data can be transmitted in packets using layered protocol stacks and the 4-layer TCP/IP model (application, transport, network, data link)
CS.CI.1g
Understand characteristics of network topologies (bus, ring, star, mesh)
CS.CI.1h
Understand the different mobile communication standards (3G, 4G and subsequent generations).
CS.CI.2a
Understand the importance of network security and be able to use appropriate validation and authentication techniques (access control, physical security and firewalls).
CS.CI.2b
Understand security issues associated with the ‘cloud’ and other contemporary storage
CS.CI.2c
Understand different forms of cyber attack (based on technical weaknesses and behaviour), including social engineering (phishing, shoulder surfing, pharming), unpatched software, USB devices, digital devices and eavesdropping
CS.CI.2d
Understand methods of identifying vulnerabilities, including penetration testing, ethical hacking, commercial analysis tools and review of network and user policies.
CS.CI.2e
Understand how to protect software systems from cyber attacks, including considerations at the software (application) design stage, audit trails, securing operating systems, secure coding, code reviews to remove code vulnerabilities in programming languages and bad programming practices, modular testing and effective network security provision.
CS.CI.3a
Understand what is meant by the internet and how the internet is structured (IP addressing, domain name service (DNS)).
CS.CI.3b
Understand what is meant by the world wide web (WWW) and components of the WWW (web server URLs, ISP, HTTP, HTTPS, HTML).
CS.CI.3c
Understand the need for IP addressing standards and the formats of IPv4 and IPv6.
CS.CI.3d
Understand the role of components used to access the internet (modem, router, switch, wireless access point (WAP)) and how these are combined.
CS.BP.1a
Understand the environmental impact of technology (health, energy use, resources) on society.
CS.BP.1b
Understand the ethical impact of using technology (privacy, inclusion, professionalism) on society.
CS.BP.1c
Understand the legal impact of using technology (intellectual property, patents, licensing and cyber-security).
CS.BP.1d
Be aware of current and emerging trends in computing technology (quantum computing, DNA computing, artificial intelligence (AI), nanotechnology).
Framework metadata
- Source document
- iGCSE_CS(9-1)
- License
- CC BY 4.0 US