OCR 9-1 (J277) GCSE Computer Science

1.1.1 Architecture of the CPU

Defining what is a computer system
  • Computer system
  • Input, process, output, storage
  • Data bus
Common CPU components and their function
  • Control unit
  • ALU
  • Registers
  • Cache
Von Neumann architecture
  • Von Neumann architecture
  • MAR & MDR
  • Program Counter
  • Accumulator
Fetch-Decode-Execute cycle
  • Registers involved
  • Fetch, decode, execute cycle

1.1.2 CPU performance

CPU common characteristics
  • Clock speed
  • Multi-core processors
  • Cache size

1.1.3 Embedded systems

Purpose, characteristics of embedded systems
  • Introduction
  • Features
  • Microcontroller

1.2.1 Primary storage

Primary storage features
  • Features
  • RAM ROM Cache

1.2.2 Secondary storage

Secondary storage features
  • Common types of storage
  • Suitable devices
  • How to choose

1.2.3 Units

Units
  • Units for data storage
  • Bytes, bits and nibbles
  • Powers of ten—kilo, mega, giga, tera

1.2.4 Data storage

Binary numbers
  • Number systems
  • Digit position
  • Converting between binary/denary
  • Adding binary
  • Binary shift
  • Binary overflows
Hexadecimal numbers
  • Hex symbols
  • Converting between binary/hexadecimal
  • Converting between denary / hexadecimal
Characters
  • ASCII
  • Character sets
  • Unicode
Images
  • Storing pixels
  • Meta data
  • Quality of image
  • Size of image file
Sound
  • What is sound
  • Sample rate
  • Bit depth
  • Size of sound file
Compression
  • Lossy compression
  • Lossless compression

1.3.1 Networks and Topologies

Types of network
  • What is a network
  • Home/Business networks
  • Cache size
Network performance
  • Bandwidth
  • Latency
  • Number of users
  • Error rate
  • Wi-Fi performance
Roles of computers
  • Client-server
  • Peer-to-peer
Network hardware
  • Hubs, switches and routers
  • Transmission media
  • Wireless hardware
Internet technology
  • DNS system
  • Local hosting
  • Web servers and the Cloud
Network topology
  • Star topology
  • Mesh topology
  • Make your own network

1.3.2 Networks, protocols, and layers

Modes of connection
  • Ethernet
  • Wi-Fi
  • Bluetooth
Encryption
  • Encryption methods
  • Symmetric
  • Public - Private key
IP and MAC addressing
  • IP addressing
  • MAC addressing
Common protocols
  • TCP/IP
  • HTTP(S)
  • FTP
  • POP
  • IMAP
  • SMTP
  • Layer concept

1.4.1 Network threats

Types of threats
  • Malware
  • Social engineering, phishing
  • Brute force attack
  • Denial of Service
  • Data interception
  • SQL injection

1.4.2 Prevention methods

Threat prevention methods
  • Penetration testing
  • Anti-malware software
  • Firewalls
  • User-access rights
  • Passwords
  • Encryption
  • Physical security

1.5.1 Operating systems

Purpose and use of operating systems
  • User interface
  • Memory management, multitasking
  • Peripheral management and drivers
  • User management
  • File management

1.5.2 Utility software

Purpose and use of utility software
  • Encryption software
  • Defragmentation
  • Data compression

1.6.1 Wider impacts of computer science

Ethical issues
  • Digital divide
  • Genetic screening
  • Whistleblowers
  • Drones
  • Self-driving cars
Environment
  • E-waste
  • Sustainability
  • Recycling
  • Energy
  • Earth monitoring
  • The stakeholders
Privacy issues
  • DNA profiling
  • National ID cards
  • CCTV
  • Electronic tracking
  • Earth monitoring
  • Personal data
  • Stakeholder perspective
Cultural issues
  • Anonymity issues
  • Use of social media
  • Health issues arising
  • Citizen journalism
  • Making popular videos
Legislation
  • The Data Protection Act 2018
  • Computer Misuse Act 1990
  • Copyright Designs & Patents Act 1988
  • Software licences - open, proprietary

2.1.2 Computational thinking

Principles of computational thinking
  • Abstraction
  • Decomposition
  • Algorithmic thinking
  • Structure diagrams
  • Abstraction practice
  • Input-process-output practice
  • Decomposition practice
  • Algorithm practice
  • Pattern recognition practice
Writing pseudocode and Python code
  • Pseudocode
  • Practice activities
  • Exam Reference language
  • Python practice tasks
Using flowcharts
  • Flowcharts
  • Practice activities

2.1.3 Searching and sorting algorithms

Search algorithms
  • Binary search
  • Linear search
Sort algorithms
  • Bubble sort
  • Merge sort
  • Insertion sort
  • Practice questions

2.2.1 Programming Fundamentals

Variables and others
  • Variables
  • Constants
  • Operators
  • Assignments
  • Input Output
Arrays
  • One dimenstion
  • Two dimension
  • Static
  • Dynamic
  • Array functions
Sequence Selection Iteration
  • Sequence
  • Selection
  • Iteration
  • Conditionals - IF
  • Conditionals - CASE
  • WHILE iteration
  • DO iteration
  • FOR iteration

2.2.2 Data types

Use of data types
  • Integer
  • Real
  • Boolean
  • Character
  • String
  • Casting

2.2.3 Additional programming

String manipulation and handling
  • Assignment
  • Concatenate
  • Traversal
  • Search
  • Copy
File manipulation and handling
  • Open
  • Read
  • Write
  • Close
SQL and databases
  • Records
  • SQL
  • SELECT
  • WHERE
  • FROM
Functions, procedures, and subroutines
  • Repeating code
  • Procedures and Subroutines
  • Functions
  • Code library
Random numbers
  • Use of random numbers
  • Python worked example
  • Python files in zip

2.3.1 Defensive design methods

Defensive design
  • User interface choice
  • Screen widgets
  • Repeat data entry
  • Input boxes
  • Validation
  • Authentication
Maintainable code
  • Comments
  • Headers
  • Whitespace
  • Indentation
  • Naming

2.3.2 Errors and testing

Spotting errors
  • Logic errors
  • Syntax errors
  • Arithmetic order
  • Debugging tools
  • Runtime errors
  • Authentication
Types of testing
  • Test plan
  • Test data
  • Iterative testing
  • Final testing

2.4.1 Boolean logic

Logic
  • What is logic
  • Binary logic
  • Logic gates
  • Truth tables
  • Standard symbols

2.5.1 & 2.5.2 Languages & IDEs

Languages
  • Machine code
  • Assembly language
  • High level language
  • Translator
  • Compilers
  • IDE features