Algorithms
Topic 1: Algorithms
Introduction to Algorithms
Searching & Sorting Algorithms
Decomposition & Abstraction
Coding
Topic 2: Python Coding
Programming Fundamentals & Constructs
- Variables & Constants
- Sequencing & Selection (If & switch statements)
- Definite Iteration
- Indefinite Iteration
- Arithmetic, Relational & Logical Operators
Error Handling & Validation
Data Types
Data Structures
Advanced Topics
Programming Challenges
Data
Topic 3: Data Representation
Binary & Hexadecimal
Data Representation
Computers
Topic 4: Hardware, Software & The CPU
Computer Models
- Input-Process-Output Model
- Sequential, Parallel & Multi-agent Models
- Von Neumann Architecture
- Fetch – Execute Cycle
High & Low Level Languages
Networking
Topic 5: Networking and the internet
Networks
- Introduction to networking
- Types of networks – LAN,WAN,PAN
- Network Topologies
- Network Hardware
- Client server vs Peer to Peer
- Servers
- Wired Networks
- Wireless Networks
- Network Speeds
- Data, Segments, Packets & Frames
- Network Protocols
- Network Stacks & Layers
- Mobile communication standards (3G,4G,5G, Bluetooth, Wifi)
Internet & World Wide Web
- Internet vs WWW
- IP v4, IPv6 & MAC Addresses
- HTTP & HTML
- URLS, DNS & Address resolution
- Components of the World Wide Web
- Internet Protocols
- Internet Hardware
Network Security
- Validation & authentication
- Network security threats
- Protecting networks
Ethics & Legalilities
Topic 6: The bigger picture
Ethical Issues & responsibilities
- Environmental Impact
- Positive Environment Impacts of Technology
- Negative Environmental Impacts of Technology
- Privacy
- IEEE Code of Ethics
- Disability Inclusion
- Gender Inclusion
- Digital Divide
- Legal Considerations
- Copyright
- Software Licensing
- Computer Usage Laws
Exams
Examination Information
Paper 1: Principles of Computer Science (50%)
- 2 Hours
- Paper Based
- Mixture of question types – Multiple choice, short answer, extended response
- Content from all units in the course, including some programming / algorithm related questions.
Paper 2: Application of Computational Thinking (50%)
- 3 Hours
- Computer Based
- Python , C# or Java (We will be doing Python!)
- Mixture of question types – Multiple choice, short answer, extended response and task based answers
- Pseudocode reference document will be available in the exam.
- Mostly programming and algorithms, though can be linked to the data, programming, logic statements & testing.