Unit 1 - Algorithms

Subunit 1 - Introduction to Algorithms

1.1.1. Algorithms
What are algorithms? Introduction to Algorithms | Examples of everyday algorithms | Thinking Algorithmically | Advantages of thinking algorithmically | Disadvantages of thinking algorithmically |
Common types of algorithms Sorting Algorithms | Search Algorithms | Compression Algorithms | Divide and Conquer Algorithms | Encryption Algorithms | Graph Algorithms |
Algorithm / Sorting / Searching / Divide and conquer / Encryption algorithm / Compression algorithm / Search algorithm / Sort algorithm / Iteration / Pattern recognition / Efficiency / Logical reasoning /
1.1.3. Flowcharts
Introduction to flowcharts Introduction to Flowcharts | Example Flowchart | Flowchart Symbols |
Flowchart / Process / Terminal Symbol / Decision Symbol / Process Symbol / Connector Symbol / Flowline / Input Symbol / Output Symbol / Loop Symbol / Iteration / Flowcharting Tool /
1.1.4. Pseudocode, Program Code & Written Descriptions
Introduction to pseudocode Introduction to Pseudocode | Pseudocode - pros & cons | Program Code - Pros & Cons | Flowcharts - Pros & Cons |
Program Code Program Code | Executing Program Code |
Written descriptions of algorithms Written descriptions |
Pseudocode / Program Code / Syntax / Flowchart / Variable / Control Structure / Loop / Conditional Statement /
1.1.4. Big O Notation
Big O Notation Introduction to Big O Notation | Big O Time Complexity Visualization | O(1) | O(n) | O(n^2) | O(log N) | Time vs Space Complexity | Best Case | Average Case | Worst Case |
Big O notation / Time complexity / Worst-case time complexity / Best-case time complexity / Average-case time complexity / O(1) / O(n) / O(log n) / O(n^2) / space complexity / best case / average case / worst case /

Subunit 2 - Decomposition & Abstraction

1.2.1. Decomposition
Decomposition Introduction to Decomposition | Benefits of Decomposition | Decomposition Steps |
Decomposition / Modular programming / Abstraction / Top-down design / Hierarchy / Modularity / Bottom-up Processing / Divide and Conquer / Decentralization / Component /
1.2.1. Subprograms
Subprograms Introduction to Subprograms | Functions | Procedures | Advantages of subprograms - Modularity | Advantages of subprograms - Reusability | Advantages of subprograms - Abstraction | Advantages of subprograms - Code organization |
Subprogram / Function / Procedure / Return statement / Call statement / Modularity / Reusability / Maintainability / Abstraction / Testing / Readability / Efficiency /
1.2.2. Abstraction
Introduction to abstraction What is Abstraction? | Examples of Abstraction | Benefits of Abstraction | Abstraction in Programming | Abstraction - Car Example |
Abstraction / Data abstraction / Abstract data type / Abstraction layer / Procedural abstraction / Class / Object / Encapsulation / Inheritance / Polymorphism /

Subunit 3 - Searching & Sorting Algorithms

1.3.1. Bubble Sort
Introduction to Bubble Sort Introduction to Bubble Sort | Example | Pros and Cons of Bubble Sort |
Bubble Sort / Comparison / Efficiency / Iteration / Swapping / In-place Sorting / Time Complexity / Space Complexity / Worst-Case Performance / Best-Case Performance / Average-Case Performance / Optimization / Element / Ascending Order / Descending Order / Stable sorting /
1.3.2. Merge Sort
Introduction to Merge Sort Introduction to Merge Sort | Steps of Merge Sort | Advantages of Merge Sort | Disadvantages of Merge Sort: |
Merge Sort / Divide and conquer / Recursive / Merge / In-place sorting / Stable sort / Comparisons / Swaps / Time complexity / Best case / Average case / Worst case / Big-O notation / Space complexity / In-place merge sort / Recursion / Merge Function / Comparison-based Sort / In-place Sort / Out-of-place Sort / Linearithmic Time Complexity / Logarithmic Time Complexity / Quadratic Time Complexity / Pseudocode /
1.3.3. Linear Search
Linear Search Introduction to Linear Search | Time & Space Complexity | Pros and Cons of Linear Search |
Sequential Search / Linear Search / List / Index / Search / Unordered / Comparison / Algorithm / Runtime / Complexity / Linear time complexity / Worst-case scenario / Best-case scenario / Average-case scenario / Efficiency / Big O notation / O(n) / Array / Element / Boolean /
1.3.3. Binary Search
Binary Search Algorithm Introduction to Binary Search | Pros and Cons of Binary Search | Binary Search Python Implementation |
Binary Search / Sorted array / Divide and Conquer / Iteration / Target element / Mid-point / Index / Comparison / Time complexity / Space complexity /

Unit 2 - Python Coding

Subunit 1 - Programming Fundamentals & Constructs

2.1.1. Variables & Constants
Variables & Constants Introduction to Variables | Declaring and Assigning Variables | Variable Naming Rules | Python Reserved Words | Built-in Functions | Sensible vs Not Sensible Variable Names | Constants |
Variable / constant / data type / declaration / assignment / scope / global variable / local variable / type inference /
2.1.2. Sequencing & Selection (If & switch statements)
IF statements If Statements | Else | IF ELIF ELSE | Nested If Statement |
Switch Statements Switch Statements | Switch statements < Python 3.10 |
Sequencing / Selection / If statement / Switch statement / Condition / Boolean / Execution path / Nested if statement / Default case /
2.1.3. Definite Iteration
Definite Iteration - For Loops Definite Iteration - For Loops | Range() function |
Nested Loop / Definite Iteration / For loop / While loop / Iteration / Loop / Counter / Increment / Decrement / Control flow /
2.1.4. Indefinite Iteration
Indefinite Iteration (While loops) Indefinite Loops (Infinite Loops) | Break Statement | Continue Statement |
Indefinite Iteration / Loop / While loop / Do-while loop / For loop / Break statement / Continue statement / Infinite loop / Conditional loop / Control flow /
2.1.5. Arithmetic Operators
Arithmetic Operators in Python Standard Arithmetic Operators ( + - * / ) | Modulo (%) | Floor division | Exponentiation (**) |
Arithmetic Operators / Addition Operator / Subtraction Operator / Multiplication Operator /
2.1.5. Comparison Operators
Comparison Operators Comparison Operators in Python | Equal to (==) | Not equal to (!=) | Greater than (>) | Greater than or equal to (>=) | Less than (<) | Less than or equal to (<=) |
Comparison Operators / == / != / > / < / >= / <= / in / not in / is /
2.1.7. Logical Operators
Logical Operators AND Operator | OR Operator | NOT Operator | Order of Precedence |
Logical Operators / AND / OR / NOT / XOR /

Subunit 2 - Error Handling & Validation

2.2.1. Error Types
Error Types Syntax Errors | Runtime errors | Logical Errors |
Syntax Error / Runtime Error / Logic Error / Type Error / Null Pointer Exception / Arithmetic Error / Index Out of Bounds / File Not Found / Overflow Error / Underflow Error / IndentationError / NameError / TypeError / ValueError / IndexError / KeyError / FileNotFoundError / ZeroDivisionError /
2.2.2. Types of Testing
Methods of testing Walkthrough Testing | White Box Testing | Black Box Testing | Unit Testing | Integration Testing | Alpha Testing | Beta Testing | Acceptance Testing | Stub Testing |
Unit Testing / Integration Testing / System Testing / Acceptance Testing / Regression Testing / Black Box Testing / White Box Testing / Test Case / dry run testing / walkthrough testing / alpha testing / beta testing / stub testing /
2.2.3. Test Plans & Test Data
Test Plans & Test Data Software Testing | Test Plan Components | Testing Table - Example | Normal, Abnormal, and Boundary Data |
Testing / Test Plans / Test Data / Test Case / Test Scenario / Test Suite / Test Execution / Test Coverage / Boundary Testing / Equivalence Partitioning / Regression Testing /
2.2.4. Debugging Techniques
Code Analysis (Debugging Techniques) Code Analysis (Debugging Techniques) | IDE Debugging Features |
Debugging / Breakpoint / Stepping / Variable Watch / Stack Trace / Logging / Assertion / Memory Dump / Code Review / Tracing / Binary Search /
2.2.5. Trace Tables
Trace Tables Introduction to Trace Tables | Trace table example |
Trace Tables / Variable / Expression / Statement / Value / Initial value / Final value / Iteration / Condition / Boolean expression / Logical operator / Relational operator / Concatenation / Debugging / Syntax error / Logic error / Runtime error / Function / Recursion /
2.2.6. Verification & Validation
Introduction to Verification & Validation Input Verification | Duplicate Entry | Checksum Verification | Luhn Algorithm | Input Validation | Benefits of Input Validation | Presence Check | Length Check | Range Check | Format Check |
range check / presence check / format check / length check / syntax check / boundary check / entry verification / validation / luhn / isbn / barcode / checksum / data validation / checksum validation / verification process / barcode scanner / Uniqueness check / Pattern check / Type check / Data integrity / Schema validation /

Subunit 3 - Data Types

2.3.1. Strings
Strings What is a String? | Python String Concatenation | String Indexing | String Slicing | String Methods | String Formatting |
String / Concatenation / Index / Substring / Length / Escape Sequence / Immutable / Comparing / String Methods / Case Sensitivity /
2.3.2. Integer
Integers Integers | Python integer operations | Converting between Integers and Strings |
Integer / Positive Integer / Negative Integer / Zero / Prime Integer / Integer Division / Integer Overflow /
2.3.3. Float data type
Floats Floating point numbers | Type Conversion Involving Floats | Floating Point Rounding Errors |
Float data type / Floating-point precision / Floating-point number / Decimal numbers / Floating-point arithmetic / Floating-point constant / Overflow / Underflow /
2.3.4. Boolean
Booleans Introduction to Boolean Data Type | Use Cases of Booleans |
Boolean / True / False / Logic / Boolean Operator / AND Operator / OR Operator / NOT Operator / Truth Table / Boolean Algebra /

Subunit 4 - Data Structures

2.4.1. 1 Dimensional Arrays
One dimensional arrays Introduction to One-Dimensional Arrays | Looping through arrays | Searching Arrays | Adding Items to a List | Removing Items from a List |
Array / Elements / Index / Array Size / Initialization / Access / Traversal / Search / Insertion / Deletion / Element / Traverse / Update / Sort /
2.4.2. 2 Dimensional Arrays
Two dimensional arrays Introduction to Two Dimensional Arrays |
2D Array / Rows / Columns / Elements / Index / Initialization / Access / Traversal / Array Length / Nested Arrays / Element / Row / Column / Array Size / Modification /
2.4.3. Dictionaries
Python Dictionaries Introduction to Dictionaries | Telephone Numbers and Emails | Dictionaries & Hast Tables |
Dictionary / Key / Value / Mutable / Immutable / Length / Update / Keys / Values / Clear / Pop / Nested Dictionary / Hash Table / Dictionary Methods / Items / Get / In / Copy / Dictionary Comprehension /
2.4.5. Records data structure
Introduction to Records data structure Records data structure |
Records data structure / Record / Field / Attribute / Key / Value / Index / Linked list / Array / Binary tree /

Subunit 5 - Advanced Topics

2.5.1. Functions & Procedures
Introduction to Functions & Procedures Introduction to Functions | Introduction to Procedures | Local Variables | Global Variables | Variable Scope |
Optional & Required Parameters Optional Parameters | Required Parameters | Parameters vs Arguments |
Procedure / Parameter / Return Value / Local Variable / Global Variable / Recursion / function / argument / call / modularization / Function scope / Block scope / scope / Subprogram / Return statement /
2.5.2. Strings Methods & String Manipulation
Strings Methods & String Manipulation len() | upper(), lower() and title() | replace() | split() | Searching and Extracting Substrings | String slicing [stard:end] | Negative Slicing | .join() |
Strings Methods / String Manipulation / Concatenation / Substring / Length / Indexing / Case Conversion / Replacing / Splitting / Trimming / String slicing / Start index / End index / Step value / Positive index / Negative index /
2.5.4. Subprogram Libraries
Subprogram Libraries Subprogram libraries | Standard Libraries | Third-Party Libraries | Framework Libraries | Domain-Specific Libraries | Utility Libraries | Advantages of Subprogram Libaries | Disadvantages of Subprogram Libraries |
Subprogram Libraries / Reusable Code / Function Library / Code Reusability / Subroutine Library / Module Library / Library Functions / Modularity / Code Consistency / Version Control / Subprogram / Library / Code reuse / Abstraction / External library / Utility library / Dependency / API / Framework / Package manager / Runtime / Framework library / Scalability / Documentation /
2.5.4. Integrated Developer Environments
Integrated Developer Environments Integrated Development Environments | Source Code Editor | Debugger | Compiler and/or Interpreter | Intelligent Code Completion | Simulators or Emulators | Project Management |
IDE / Code editor / Debugging / Compiler / Syntax highlighting / Version control / Auto-completion / Project management / Syntax errors / Refactoring /

Unit 3 - Data Representation

Subunit 1 - Binary & Hexadecimal

3.1.1. Binary Numbers
Introduction to binary numbers Introduction to Binary | Why Computers Use Binary: Reliability | Why Computers Use Binary: Ease of Storage | Why Computers Use Binary: Efficiency with Electrical Circuits | Why Computers Use Binary: Mathematical Operations | Bits, Nibbles, and Bytes | Encodings |
Denary to Binary Conversion Denary to Binary Conversion |
Binary to Denary Conversion Converting binary numbers to denary |
Binary number / Base 2 / Bit / Nibble / Byte / Binary addition / Binary subtraction / Binary conversion / Floating-point binary number / Encoding /
3.1.2. Negative Numbers in Binary
Sign & Magnitude Sign and Magnitude | Issues with Sign and Magnitude |
Two's Complement Two's Complement | Advantages of Two's Complement |
Two's complement / Negative Number / Binary Number / Sign Bit / Overflow / Magnitude / Ones Complement / Binary Representation / Sign and Magnitude /
3.1.3. Hexadecimal
Introduction to Hexadecimal Introduction to Hexadecimal | Converting hexadecimal to binary | Converting binary to hexadecimal | Binary to hexadecimal example | Common uses of Hexadecimal | Why do we use hexadecimal? |
Hexadecimal / Base / Digits / Binary / Decimal / Conversion / Representation / Nibble / Byte /
3.1.4. Binary Addition
Introduction to Binary Addition Binary Addititon | Binary addition example | How do computers perform binary addition? |
binary addition / binary / addition / bit / carry / overflow / half adder / full adder / binary arithmetic /
3.1.5. Binary Shifts & Overflow
Logical Binary Shifts Logical Left Shift (<<) | Left Logical Shift Example | Logical Right Shift (>>) | Right Logical Shift Example |
Arithmetic Binary Shifts Arithmetic Right Shift | Arithmetic Right Shift - Example | Arithmetic Left Shift | Arithmetic Left Shift - Example | Interactive Demonstration | Summary Example - 10001010 (Shift 1) |
Binary Overflow Binary Overflow | Example of Binary Overflow | Binary Underflow |
Overflow / Binary shift / Binary Shifts / Shift Left / Shift Right / Logical Shift / Arithmetic Shift / Carry Bit / Shift Amount / Binary underflow / Binary arithmetic / Floating point / Machine precision /

Subunit 2 - Data Representation

3.2.1. ASCII & Unicode
ASCII Introduction to ASCII | ASCII Table | Limitations of ASCII |
Unicode Unicode | Unicode Bit Length |
ASCII / Unicode / Character encoding / Character set / ASCII table / UTF-8 / UTF-16 / Binary representation / Bit /
3.2.2. B&W Images
Introduction to B&W Images Black & White Images |
Black and White Images / Pixel / Binary Image / Monochrome / Contrast / Sharpness / Bitmap / Resolution / Bit Depth / File Format /
3.2.3. Grayscale Images
Introduction to Grayscale Images Greyscale Images | Adjust Grayscale Brightness | Uses for Grayscale Imagery |
Grayscale image / Intensity / Monochrome / Luminosity / Histogram / Grayscale / Pixel / Bit Depth / Contrast /
3.2.4. Color Images
Introduction to Color Images RGB Color Images | RGB color demonstration | Bit Depth | Image Bit Depth Examples |
RGB color model / hex code / color depth / additive color mixing / hex color code / Bit Depth / Pixel / 8-bit / 16-bit / 24-bit /
3.2.5. Data Compression
Lossless & Lossy Image Compression Image Compression | Calculating image sizes | Lossless Compression | Lossless Compression Techniques | Benefits of Lossless Compression | Drawbacks of lossless compression | Lossy Image Compression | Advantages of lossy compression | Image Compression Artifacts | Disadvantages of lossy compression | Common Compression Artifacts |
Image Compression / Lossy Compression / Lossless Compression / JPEG / GIF / PNG / Bitrate / Compression / Data / Image compression artifacts / Blockiness / Color bleeding / Noise / Ring artifacts / Posterization / Aliasing /
3.2.6. Sound Representation
Introduction to Sound Representation Introduction to sound representation | Sampling Rate | Sampling Resolution (Bit Depth) | Lossy Sound Compression | Lossy sound compression techniques |
How microphones work How dynamic microphones work | Advantages of Dynamic Microphones | Disadvantages of Dynamic Microphones | How condenser microphones work | Advantages of Condenser Microphones | Disadvantages of Condenser Microphones |
Sound Representation / Audio Signal / Amplitude / Frequency / Waveform / Sampling Rate / Bit Depth / Digital Audio / Analog-to-Digital Conversion / Condenser microphone / Dynamic microphone / Frequency response / Phantom power / Diaphragm /
3.2.8. Binary & Denary Prefixes
Introduction to Binary & Denary Prefixes Denary Prefixes | Conversion between Binary and Denary (Binary & Denary Prefixes) | Binary & Denary comparison table |
binary / denary / prefix / binary prefix / denary prefix / bit / byte / kibibyte / mebibyte / gibibyte / binary search / denary conversion / binary conversion / binary code / megabits / megabytes /
3.2.9. Calculating file sizes
Introduction to Calculating file sizes Calculating Image Sizes |
3.2.9. Calculating Bit Depths
Calculating Image Bit Depths Image Bit Depth | Standard Image Bit Depths | Importance of Bit Depth | Calculating Bit Depth for a Given Number of Colors | Example | Advantages of Higher Bit Depths | Disadvantages of Higher Bit Depths |
Bit Depth / Color Depth / Quantization / Pixel / Resolution /

Subunit 3 - Encryption

3.3.1. Pigpen Cypher
Introduction to Pigpen Cypher Pigpen Cipher | Pigpen Cipher key | Encrypting messages |
Pigpen Cypher / Cipher / Symbol / Substitution Cipher / Cryptography / Encryption / Decryption / Algorithm / Plaintext / Ciphertext / Key / Symbol Set / Repetition / Monoalphabetic Cipher / Polyalphabetic Cipher / Key Length / Cryptanalysis /
3.3.2. Caesar Cipher
Caesar Cipher Casear Cipher | Encryption Example - Caesar Shift Cipher | Advantage of Caesar Cipher | Disadvantages of Caesar Cipher |
Caesar Cipher / Encryption / Decryption / Shift value / Alphabet / Substitution Cipher / Cipher / Plaintext / Ciphertext / Modulus operator / Brute-force attack / Key / Frequency analysis / Polyalphabetic cipher / Vigenere cipher / Cryptanalysis / Monoalphabetic cipher / Transposition cipher / Rail fence cipher /
3.3.3. Vigenere Cipher
Introduction to Vigenere Cipher Vigenere Cipher | Encrypting using the Vignere Cipher | Advantages |
Vigenere Cipher / Caesar Cipher / Polyalphabetic Cipher / Encryption / Decryption / Key / Plaintext / Ciphertext / Alphabet / Modulo Operator / Frequency Analysis / Cryptanalysis / Brute Force Attack / Kasiski Examination / Autokey Cipher / Rail Fence Cipher / Transposition Cipher / Substitution Cipher /
3.3.4. Rail Fence Cipher
Rail Fence Cipher Introduction to the Rail-Fence Cypher | Encrypting using Railfence Cipher | Decrypting Railfence Cipher | Advantages of Rail Fence Cipher | Disadvantages of Rail Fence Cipher |
Rail Fence Cipher / Transposition Cipher / Ciphertext / Plaintext / Encryption / Decryption / Zigzag Pattern / Rows / Columns / Block Cipher / Algorithm / Key / Secure Communication / Cryptanalysis / Frequency Analysis / Brute Force Attack / Key Length / Key Space /
3.3.5. Cryptanalysis Techniques
Cryptanalysis Introduction to Cryptanalysis | Brute Force Attack | Pros of brute force attacks | Cons of Brute Force Attack | Frequency analysis | Principles of Frequency Analysis | Uses of Frequency Anaylsis | Challenges and Limitations | Known Plaintext Attack (KPA) | How It Works | Use Cases | Countermeasures against KPA |
brute force / frequency analysis / known plaintext / cryptanalysis / ciphertext / encryption / substitution cipher / transposition cipher / dictionary attack / password cracking / rainbow table / password strength / two-factor authentication / account lockout /

Subunit 4 - Logic

3.4.1. Logic Gates
Introduction to Logic Gates Logic Gates | AND Gate | AND Gate Demo | OR Gate | OR Gate Demo | NOT Gate | NOT Gate Demo | XOR Gate | XOR Gate Demo | NAND Gate | NAND Gate Demo | NOR Gate | NOR Gate Demo |
Logic Circuits Combing Logic gates into logic circuits | (NOT A) AND B | (A AND B) OR C |
Logical operator / AND operator / OR operator / NOT operator / XOR operator / Logic Gates / AND Gate / OR Gate / NOT Gate / NAND Gate / NOR Gate / XOR Gate / XNOR Gate / Half Adder / Full Adder /

Unit 4 - Computer Hardware & Software

Subunit 1 - Computer Models

4.1.1. Input-Process-Output Model
Input Process Output Model Input Process Output Model | Input phase of IPO model | Process Phase of the IPO model | Output phase of the IPO Model |
Input-Process-Output Model / Input / Process / Output / Data Flow / System / Model / Abstraction / Feedback / Control /
4.1.2. Sequential, Parallel & Multi-agent Models
Sequential Architecture Introduction to sequential computer architecture | Execution Flow | Advantages | Disadvantages |
Parallel Architecture Introduction to parallel architecture | Execution | Use cases for parallel architecture | Advantages of parallel architecture | Disadvantages of parallel architecture |
Multi-agent architecture Introduction to multi-agent architecture | Use cases for Multi-Agent Architecture | Advantages | Disadvantasges |
Parallel algorithm / Sequential / Parallel / Multi-agent / Models / Task / Order / Simultaneously / Processors / Threads / Autonomous /
4.1.3. Von Neumann Architecture
Introduction to Von Neumann Architecture Introduction to the Von Neumann Architecture | Components of the Von Neumann Architecture | Central Processing Unit (CPU) | Memory (RAM) | Control Unit (CU) | Arithmetic Logic Unit (ALU) | Input/Output (I/O) System | Registers | System Busses | Data Bus | Address Bus | Control Bus | Program Counter (PC) |
Von Neumann Registers Von Neumann Registers | Program Counter (PC) | Memory Address Register (MAR) | Memory Data Register (MDR) | Accumulator | Instruction Register (IR) | Index Registers | Stack Pointer (SP) |
Von Neumann Architecture / Stored-Program Computer / Central Processing Unit / Memory / Instruction Fetch / Instruction Decode / Instruction Execution / Control Unit / Arithmetic Logic Unit (ALU) / Input/Output (I/O) / bus / control bus / data bus / address bus / register / accumulator / program counter / memory data register / memory address register / instruction register / system bus /
4.1.4. Fetch – Execute Cycle
Introduction to Fetch – Execute Cycle Introduction to the Fetch-Execute Cycle | Fetch | Fetch Stage Steps | Decode Phase | Decode Stage Steps | Execute Phase | Execute Phase Steps |
Fetch / Execute / Cycle / Instruction / Memory / CPU / Step / Retrieve / Sequence / Carry out / Fetch-Decode-Execute Cycle / Decode /

Subunit 2 - High & Low Level Languages

4.2.1. High & Low Level Languages
High Level Programming Languages High Level Programming Languages | Abstraction | Readability | Ease of Use | Rich Standard Libraries | Automatic Memory Management | Platform Independence | Limitations of High Level Languages |
Low Level Programming Languages Low level programming languages | Direct Hardware Control | Efficiency | Manual Memory Management | Platform Specificity | Assembly-Level Programming |
High-level language / Low-level language / Compiler / Interpreter / Assembly language / Machine language / Abstraction / Portability / Efficiency / Readability /
4.2.2. Compilers, Interpreters, Assemblers & Translators
Introduction to Compilers, Interpreters, Assemblers & Translators Compiler | Interpreter | Assembler |
Compilation Process Compilation Process | 1. Preprocessing | 2. Compiling | 3. Assmembly | 4. Linking | The need for separate steps |
Compiler / Interpreter / Assembler / Translator / Lexical Analysis / Syntax Analysis / Semantic Analysis / Code Generation / Optimization / Linker /

Subunit 3 - Hardware

4.3.1. CPU, GPU & Motherboard
The CPU Instruction Execution | CPU Clock | Clock Speed | Cores | Cache Memory | Cooling and Power Management | Architecture and Instruction Set |
The GPU Graphics Rendering | Parallel Processing Power | General-Purpose Computing | High Memory Bandwidth | Integrated vs discrete graphics |
Motherboard Motherboard | Motherboard Slots | Form Factors | Power Supply Unit. |
Central Processing Unit / Microprocessor / Instruction Set / Clock Speed / Cache Memory / Pipeline / Multicore / CPU / heatsink / fan / thermal paste / overclocking / liquid cooling / finned heatsink / GPU / Parallel processing / Graphics memory / Ray tracing / VRAM / memory slots / expansion slots / Power connectors / Form factor / power supply unit /
4.3.2. Main Memory
Cache Memory Cache Memory | Cache Hits & Misses | Pros & Cons of Cache Memory |
RAM RAM | Why do we need RAM? | When is RAM used? | Virtual Memory | Advantages of RAM | Disadvantages of RAM |
Cache Memory / Hits / Misses / RAM / Memory Module / Virtual Memory / Latency / Non-volatile Memory / Memory Management / Swap Space /
4.3.3. Input Devices
Touch, Pointing & Gesture Devices Touch, pointing, and gesture devices | Touchscreen | Pointing Devices | Gesture Recognition Devices | Drawing and Pen Input Devices |
Keyboards Keyboards | Keyboard Layouts | Mechanical Keyboards | Number Pads |
Automated input devices Automated Input Devices | Barcode Scanner | QR Code Scanner | Magnetic Stripe Reader | Smart Card Reader | RFID Reader | NFC Reader | Document Scanner | Voice Recognition System |
Sensors Sensors | Analog to Digital Convertor (ADC) | Temperature Sensor | Proximity Sensor | Light Sensor | Pressure Sensor | Motion Sensor | Humidity Sensor | Gas Sensor | Magnetic Sensor | IR (Infrared) Sensor | Ultrasonic Sensor | CMOS & CCD Sensors |
Touchscreen / Gestures / Trackpad / Mouse / Stylus / Multi-touch / Touchpad / Haptic feedback / Touch-sensitive / Gesture recognition / keyboards / mechanical keyboards / membrane keyboards / ergonomic keyboards / programmable keyboards / pin pad / ATM / POS terminal / Automated input devices / Barcode scanner / Biometric scanner / Optical character recognition (OCR) / Microphone array / Voice recognition / magnetic stripe reader / Chip and PIN / Contactless Payment / Offline PIN Verification / RFID reader / RFID tag / NFC reader / Contactless technology / document scanner / scan / image sensor / dpi / flatbed scanner / duplex scanning / OCR / PDF / Voice Recognition System / Speech recognition / Natural language processing / Text-to-speech / Sensor / Temperature Sensor / Motion Sensor / Proximity Sensor / Light Sensor / Pressure Sensor / Humidity Sensor / Accelerometer / Gyroscope / Analog to Digital Converter / magnetic sensor / magnetometer / Infrared sensor / ultrasonic sensor / ultrasound / transducer /
4.3.4. Output Devices
Visual Output devices Visual Output Devices | Computer Monitors | Projectors | Types of Projectors | Head-Mounted Displays (HMDs) | Digital Signage | E-ink Displays | Braille Displays |
Hard Copy Output Devices Hard Copy Output Devices | Thermal Inkjet Printers | Piezoelectric Inkjet Printers | Advantages of Inkjet Printers | Disadvantages of Inkjet Printers | Laser Printers | Advantages of Laser Printers | Disadvantages of Laser Printers | 3D Printers | 3D Printing Technology | Plotters & Cutters | Advantages of plotters | Disadvantages of Plotters |
Audio Output Devices Sound Cards | Speakers | Headphones | How audio output devices work |
Haptic Output Devices Haptic Feedback Devices | Smartphone Haptics | Gaming Controllers | Haptic Gloves and Suits | Virtual Medical Simulators | Haptic Feedback in Simulators | Accessibility Devices |
Printer / Plotter / Laser printer / Inkjet printer / 3D printer / Extruder / Filament / Build plate / piezoelectric printers / inkjet technology / thermal inkjet / print resolution / print head / monitor / projector / digital signage / VR headset / LCD projector / DLP projector / LED projector / Long throw projector / Full HD projector / e-ink displays / braille display / visually impaired / tactile / embossed / speaker / headphones / sound card / Diaphragm / haptic feedback devices / tactile feedback / force feedback / haptic technology / immersion / kinesthetic sense / wearable haptic devices /
4.3.5. Embedded Devices
Embedded Devices Embedded Devices | Microcontrollers | Embedded Device Characteristics | Smart Home Devices |
Embedded devices / Microcontroller / Firmware / Real-time operating system (RTOS) / Sensor / Internet of Things (IoT) / Embedded software / Single-board computer /

Subunit 4 - Software

4.4.1. BIOS & MBR
Introduction to BIOS & MBR Basic Input Output System (BIOS) | BIOS Chip | Master Boot Record (MBR) |
BIOS / MBR / Bootloader / UEFI / CMOS / Firmware / Partition / Primary Partition / Extended Partition / Logical Partition / Active Partition / Dual-Boot / GRUB / Partition Table / Disk Cloning / Disk Imaging / Sector / Head / Platter / Cylinder /
4.4.2. CLI, GUI & WIMP
Command Line Interfaces Command Line Interfaces | Text-Based | Commands | Scripting | Remote Access | Common Uses | Advantages of CLIs | Disadvantages of CLIs |
Graphical User Interfaces Graphical User Interfaces | Visual Elements | WYSIWYG (What You See Is What You Get) | Windows and Multitasking | Point-and-Click Interaction | Multimedia Support | Common Use Cases | Advantages of GUIs | Disadvantages of GUIs |
WIMP Interfaces WIMP Interfaces | Windows | Icons | Menus | Pointer |
CLI / GUI / WIMP / terminal / shell / command / prompt / output / mouse / keyboard / menu / drag and drop / window / icon / scroll bar / tooltip / shortcut / file explorer / taskbar / control panel / remote access / SSH / Remote desktop / WYSIWYG / User Interface / Interface / multimedia / digital media /
4.4.3. Operating Systems
Functions of Operating Systems Operating Systems | OS Kernel | Hardware Abstraction | Process and task management | Device Drivers | File system management | Memory Management | Device Management | Security | User Interface | Networking | Error Handling | Resource Allocation and Scheduling | System Configuration and Maintenance |
Operating System / Multi-tasking / Multi-user / Kernel / Interrupt / Command Line Interface / Graphical User Interface / File System / Device Driver / Virtual Memory / Process / Thread / Deadlock / File Allocation Table (FAT) / Disk Defragmentation / File Compression / Encryption / System Call / Boot Loader / System Tray /
4.4.4. System / Utility Software
System Utility Software Disk Cleanup and Maintenance Tools | Disk Defragmentation Software | System Optimization Tools | Antivirus and Anti-Malware Programs | Backup and Recovery Software | Data Encryption and Secure File Deletion | System Monitoring and Diagnostic Tools | Uninstaller Programs |
Operating System / Utility Software / Compression Software / Backup Software / Disk Defragmenter / Anti-virus Software / Firewall Software / Spyware Removal Software / Data Recovery Software / Encryption Software / Debugging Software / Compiler / Interpreter / Device Driver / Registry Cleaner / System Restore / Task Manager / Disk Cleanup / System Information / File Manager / System Utility Software / Antivirus Software / Driver Updater / Uninstaller / File Compression Software /
4.4.5. Application Software
Introduction to Application Software Application Software | Productivity Software | Graphics Software | Educational Software | Communication Software | Entertainment Software |
Application Software / Operating System / Word Processing Software / Spreadsheet Software / Database Software / Presentation Software / Graphics Software / Web Browser / Email Software / Antivirus Software / Firewall Software / Backup Software / File Compression Software / Media Players / Virtualization Software / Project Management Software / Accounting Software / CRM Software / Desktop Publishing Software / educational software / interactive learning / adaptive learning / gamification / learning management system / simulation software / communication software / email / instant messaging / video conferencing / voice chat / web conferencing / screen sharing / virtual meetings / teleconferencing / entertainment software / video games / music streaming / movie streaming / virtual reality / game development /
4.4.6. Modelling Software
Modelling Software 3D Modeling Software | CAD (Computer-Aided Design) Software | Geographic Information System Software | Simulation and Modeling Software | Animation Software | Mathematical Modeling Software |
Modelling software / 3D modelling / CAD software / Simulation software / Data modelling / Statistical modelling / Computer-aided engineering / Rendering software / animation software / keyframe / timeline / Mathematical Modeling Software /

Subunit 5 - Storage Devices

4.5.1. Magnetic Storage Devices
Introduction to Magnetic Storage Devices Hard Disk Drives (HDD) | Components of a HDD | Advantages of HDD Drives | Disadvantages of HDD Drives | Magnetic Tape Drives | Advantages of magnetic tape drives | Disadvantages of magnetic tape drives |
Magnetic storage / Hard disk drive / Read/write head / Track / Sector / Platter / Disk controller / Magnetic tape / Tape drive / Backup / Archiving / Data retention / Data recovery / Data redundancy / Data mirroring / Redundant Array of Independent Disks / Solid-state drive /
4.5.2. Optical Storage Devices
Introduction to Optical Storage Devices CD (Optical Storage Devices) | How Optical Storage Devices Wrod | Advantages of CDs | Disadvantages of CDs | Types of CDs | DVD (Optical Storage Devices) | Advantages of DVDs | Disadvantages of DVDs | Blu-ray (Optical Storage Devices) |
Optical Storage Devices / CD-ROM / DVD / Blu-Ray / Read-only / Write-once / Rewritable / Sector / Track / Pit / Land / Laser / Optical Disc Drive / Reflectivity / Data Density / Rotational Speed / Access Time / Buffer / Caddy / Tray /
4.5.3. Electrical Storage Devices (SSD,Flash Drive)
Introduction to Electrical Storage Devices (SSD,Flash Drive) Electrical Storage Devices (SSD, Flash Drive) | Programming (writing data) | Erasing | Read Operation | Multi-Level Cell (MLC) Storage | Solid-State Drives (SSD): | Advantages of SSD Drives | Disadvantages | Flash Drives (USB Drives) | SD cards |
Electrical Storage Devices / SSD / Flash Drive / Storage / Energy / Data / Integrated Circuits / Portable / Flash Memory / Digital /
4.5.4. Cloud Storage
Introduction to Cloud Storage Cloud Storage | Advantages of Cloud Storage | Disadvantages of Cloud Storage |
Cloud Storage / Virtualization / Data Migration / Data Center / Data Redundancy / Cloud Service Provider / Security Protocols / Subscription Model / Data Encryption / Data Replication / Private Cloud / Public Cloud / Hybrid Cloud / Network Latency / Cloud Backup / Disaster Recovery / Cloud Availability / Cloud Scalability / Data Center Virtualization / Cloud Deployment Model /
4.5.5. Data Backups
Reasons for data backup Accidental Deletion | Data Corruption | Ransomware and Malware | Hardware and Software Upgrades | Natural Disasters | Theft and Physical Damage | Archiving and Version Control | Regulatory Compliance |
Onsite vs Offsite Backups Backup Location | Backup Speed | Backup Security | Backup Cost | Backup Management | Backup Legislative compliance |
Online vs Offline Backups Online Backups | Pros & Cons of Online Backups | Offline Backups | Pros & Cons of Offline Backups |
Backup / Data loss / Disaster recovery / Incremental backup / Full backup / Differential backup / Off-site backup / On-site backup / Magnetic tape backup / Cloud backup / In-house backup / Third-party backup / Backup frequency / Backup retention / Backup verification / Virtual server backup / Physical server backup / Bare-metal restore / Backup compression / Backup encryption / Onsite backups / Offsite backups / Data redundancy / Backup validation / backup legislative compliance / compliance / audit trail / Online Backups / Offline Backups / Remote Server / Cloud-Based Storage /

Unit 5 - Networks & the internet

Subunit 1 - Networks

5.1.1. Introduction to networking
Introduction to networking Ancient Networks | Introduction to Computer networking | The first computer network | Advantages of Computer Networks | Advantages of Networking | Advantages of Networking | Drawbacks of Computer Networks | Drawbacks of Computer Networks |
Networking / Router / Switch / IP Address / Protocol / LAN / WAN / Firewall / DNS / Ethernet /
5.1.2. Types of networks – LAN,WAN,PAN
Local Area Network Introduction to LANs | Components of a LAN | Advantages of LANs | Wireless Local Area Network (WLAN) | Disadvantages of LANs |
Wide Area Network Introduction to WANs | Components of a WAN | Use cases for WANs | Advantages of WANs | Disadvantages of WANs |
PAN network Introduction to PANs | PAN Use cases | Advantages of PANs | Disadvantages of PANs |
LAN / WAN / PAN / Network / Topology / Router / Switch / Firewall / IP Address / Packet / Bandwidth / Latency / Scalability / Quality of Service (QoS) / Traffic shaping / Internet of Things / Fitness Tracking / Wearable Devices / Smartwatches / Healthcare Monitoring / Personalized Entertainment / Smart Homes / Location Tracking / Mobile Payments / Encryption / WLAN / Wireless access point / SSID / Frequency band / Signal strength /
5.1.3. Network Topologies
Introduction to Network Topologies Network Topologies | Bus Topology | Star Topology | Ring Topology | Mesh Topology | Hybrid topology |
Network Topologies / Bus Topology / Star Topology / Ring Topology / Mesh Topology / Tree Topology / Hybrid Topology / Client-Server Topology / Peer-to-Peer Topology /
5.1.5. Client server vs Peer to Peer
Client - Server Model Introduction to the Client - Server Model | Clients | Servers | Advantages of the Client-Server Model | Disadvantages of the Client - Server Model |
Peer to Peer Model Introduction to Peer to peer model | Features of P2P Networks | Advantages of the P2P Model | Disadvantages of the P2P Model |
Client server / Peer to Peer / Server / Client / Centralized / Decentralized / Scalability / Reliability / Security / Efficiency / P2P network / File sharing / Distributed network / Resource sharing / Fault tolerance /
5.1.8. Network Speeds
Network Speeds Network Speeds | Upload Speed | Download Speed | Latency | Bandwidth |
Network Speeds / Bandwidth / Latency / Ping / Download Speed / Upload Speed / Throughput / Jitter / Quality of Service (QoS) / Packet Loss /
5.1.9. Network Protocols
Standards & Protocols Networking Standards | Standard Example: OSI Model (ISO/IEC 7498) | Network Protocols | Key Aspects of Protocols | Common Protocols | Importance of Protocols | Secure Protocols |
FTP File Transfer Protocol | Use Cases | Advantages of FTP | Disadvantages of FTP |
TCP vs UDP TCP (Transmission Control Protocol) | TCP Use Cases | UDP (User Datagram Protocol) | UDP Use Cases |
TCP / UDP / HTTP / HTTPS / FTP / SMTP / POP3 / IMAP / SSH / NTP / DNS / DHCP / ARP / IPSEC / Network Protocol / Handshake / Standard / IPv4 / IPv6 / SSL/TLS /
5.1.10. TCP/IP Model Stacks & Layers
TCP/IP Model Layers Network stack layers | Stack diagram | Application Layer | Transport Layer | Network Layer | Data Link Layer |
Benefits of network stacks Benefits of network stacks | Modularity | Interoperability | Scalability | Efficiency | Reliability | Security | Interchangeability | Evolvability | Ease of Development |
Data, Segments, Stacks & Layers Data Preparation | Segments | Packets | Frames |
Network Stacks / Layers / Data Link Layer / Network Layer / Transport Layer / Application Layer / network stack / TCP/IP / routing / interoperability / Scalability / Reliability / Interchangeability / Evolvability / frames / packets / segments / payload /

Subunit 2 - Wired Networks

5.2.1. Wired Networks
Introduction to wired networks Introduction to wired networks | Advantages of wired networks | Disadvantages of wired networks | Use cases for wired networks |
Wired Networks / Ethernet / LAN / Router / Switch / Cable / Fiber Optics / Bandwidth / CAT5e /
5.2.3. Switches
Switch Switches | MAC table | MAC Addresses |
Switch / Hub / Network Switch / MAC address table / MAC address / Physical port / Switching /
5.2.4. Routers
Router Introduction to routers | Router functions | Routing table |
Router / Firewall / Routing / IP Addressing / Network Address Translation (NAT) / Quality of Service (QoS) / Virtual Private Network (VPN) / Load Balancing / Packet Filtering /
5.2.5. Servers
Server Introduction to servers | Types of server |
servers / hosting / data center / virtualization / dedicated server / redundancy /
5.2.6. Modems
Modem Introduction to Modems | Types of Modems |
Modem /
5.2.7. Wired Network Transmission Media
Wired Network Transmission Media Introduction to Wired Networks | Types of wired networks | Coaxial Cable | Ethernet | Fiber Optic | Applications of Wired Networks | Advantages of Wired Networks | Disadvantages of wired networks |
Ethernet Cable / Ethernet / bandwidth /
5.2.7. Network Interface Controller
Network Interface Controller Network Interface Controllers (NICs) | Key Functions of a NIC | Types of NICs | NIC Features |
Network Interface Card (NIC) / Network interface controller / Ethernet / Full Duplex /

Subunit 3 - Wireless Networks

5.3.1. Wireless Networks
Introduction to wireless networks Introduction to wireless networks | Types of wireless networks | Applications of wireless networks | Advantages of wireless networks | Disadvantages of wireless networks |
Wireless Networks / Wireless Communication / Wi-Fi / Bluetooth / Mobile Network / Cellular Network / LAN / WAN / Signal Strength / Roaming / Satellite network / Mesh network / Ad hoc network / NFC /
5.3.3. Mobile communication standards
3G Introduction to 3G | Advantages of 3G | Disadvantages of 3G | Use cases for 3G |
4G 4G (Fourth Generation) Wireless Networks | Use cases for 4G | Advantages of 4G | Disadvantages of 4G |
5G 5G (Fifth Generation) Wireless Networks | Uses case for 5G | Advantages of 5G | Disadvantages of 5G |
WIFI Introduction to WIFI | WIFI range | WIFI Encryption | Advantages of WIFI | Disadvantages of WIFI |
Bluetooth Introduction to Bluetooth | Bluetooth use cases | Advantages of Bluetooth | Disadvantages of Bluetooth |
wifi / router / hotspot / SSID / encryption / bandwidth / signal strength / access point / Authentication / Key / Vulnerability / Cracking / Internet of things / Sensors / Smart Home / Security /
5.3.2. Wireless Network Hardware
Wireless Router Wireless Routers | Traffic Routing | Wireless Access Point | DHCP Server | Network Address Translation | Firewall | Port Forwarding | Quality of Service (QoS) |
Wireless Access Point Introduction to WAPs | SSID (Service Set Identifier) | Use cases for WAPs |
NAT / Private IP / Public IP / LAN / Gateway / Router / IP Lease / dhcp / DHCP server / authentication / integrity / authentication protocol /

Subunit 4 - Internet & World Wide Web

5.4.1. Internet vs WWW
Introduction to Internet vs WWW Internet vs WWW | Infrastructure Differences | Usage Differences | Protocol Differences |
Internet Software Web Browsers | Email Clients | Instant Messaging (IM) Clients | File sharing clients | Cloud Storage Clients | VOIP Clients |
Internet / WWW / Network / Browser / HTML / URL / ISP / HTTP / Download / Upload / instant messaging client / text messaging / file sharing / group chat / emoticons / presence status / email clients / inbox / spam / attachment / folders / cloud storage client / file syncing / automatic backup / offline access /
5.4.2. IP v4, IPv6 & MAC Addresses
IPv4 Introduction to IPv4 | IPv4 Addressing | Hierarchical Structure | Public IP Addresses | Private IP Addresses |
IPv6 Internet Protocol Version 6 | IPv6 Address Space | IPv6 Addressing |
MAC Addresses Introduction to MAC Addresses | MAC Address structure | MAC Address Assignment | MAC address spoofing |
IPv4 / IPv6 / MAC Address / IP / Internet Protocol version 4 / Internet Protocol version 6 / Media Access Control Address / Network Interface / Data Link Layer / OSI Model / public IP / private IP / NAT / MAC Addresses / mac address spoofing /
5.4.3. HTTP, HTML, CSS & Javascript
HTTP Introduction to HTTP | Client Server Model | HTTP Methods | Stateless Protcol | Cookies | HTTPS |
HTML Introduction to HTML | HTML Elements | Example HTML Page |
CSS Introduction to CSS | Selectors and Declarations | Example CSS Sheet | Inline Stylesheet | Embedded Stylesheet | External Stylesheet |
Javascript Introduction to Javascript | Example Script |
HTTP / HTML / URL / GET / POST / HTTP Response / Status Code / Header / Hyperlink / Tag / HTTP Cookie / Session Cookie / Persistent Cookie / Tracking Cookie / Selector / Value / embedded inline external CSS / style attribute / external CSS / stylesheet / cascade /
5.4.4. URLS, DNS & Address resolution
URLs Introduction to URLs | URL Components | URL Schemes | Subdomains | Domain Name | Top Level Domains | URL Ports | URL Path | URL Parameters | URL Fragments |
Domain Name System Domain Name System | How DNS Works |
URL / DNS / Address Resolution / Domain / IP Address / Top-Level Domain (TLD) / Hostname / Resolver / URL Encoding / Root DNS Server / subdomain / Host / Hierarchy / Parent Domain / Domain Registrar / Top level domain / Domain Name / DNS Resolver / DNS Record / TTL (Time to Live) / TLD (Top-Level Domain) / Authoritative Name Server /

Subunit 5 - Network Security

5.5.25. Protecting networks
Protecting Networks Firewalls | IDS & IPS | Access Control | Encryption | Patch Management | Network Segmentation | Security Policies | Network Monitoring | Incident Response Plan | Regular Auditing and Testing | Backup and Disaster Recovery | Security Updates and Threat Intelligence |
Firewall / Antivirus / Intrusion Detection System / Encryption / Virtual Private Network / Two-factor authentication / Access control / Intrusion Prevention System / Vulnerability scanning / Security policy / Antivirus Software / Network Segmentation / network security audit / penetration testing / Acceptable Use Policy / User Agreement / Internet Usage Policy / incident response plan / mitigation /
5.5.2. Viruses
Viruses Viruses | Defending against viruses |
computer virus / Antivirus / Trojan Horse / Worm / Ransomware /
5.5.1. Malware
Malware Malware | Types of Malware |
Malware / Virus / Trojan / Ransomware / Spyware / Adware / Worm / Rootkit / Keylogger / Phishing /
5.5.1. Spyware
Spyware Introduction to Spyware | Defense Against Spyware |
spyware /
5.5.1. Phishing
Phishing Introduction to Phishing | Defense aginst Phishing |
Phishing / Spoofing / Two-factor authentication / Phishing website /
5.5.1. DDOS Attacks
DDOS Attacks Introduction to DDoS Attacks | Defense Against DDoS Attacks |
DDoS Attack / Zombie Computers / Amplification Attack / Packet Flooding /
5.5.1. Brute Force Attacks
Brute Force Attacks Introduction to Brute Force Attacks | Defence against brute force attacks |
brute force attacks / dictionary attack /
5.5.1. SQL Injection Attacks
SQL Injection Attacks SQL Injection | How SQL Injection Attacks Work | Preventing SQL Injection |
SQL injection / Input sanitation /
5.5.1. Insider Threats
Insider Threats Insider Threats | Types of insider threats | Mitigating Insider Threats |
Insider Threats / Privileged Access /
5.5.1. Social Engineering
Social Engineering Introduction to social engineering | Types of social engineering | Defence against social engineering attacks |
Social Engineering / Pretexting / Baiting / Tailgating / Impersonation / Spear Phishing /
5.5.1. Physical Network Attacks
Physical Network Attacks Physical System Attacks | Types of physical attacks | Defense against physical attacks |
Physical system attacks / Eavesdropping / Tampering / Impersonation / Physical Tapping /
5.5.1. Botnets
Botnets Introduction to Botnets | Botnet Distributed Denial of Service (DDoS) Attacks | Botnet Spam Distribution | Botnet Credential Theft | Botnet Click Fraud | Botnet Proxy Services | Botnet Data Theft | Botnet Cryptojacking |
Botnet / Zombie Computers / Command and Control Server / Infected Devices / Bot Herders /

Unit 6 - Online Security

Subunit 1 - Online Threats

6.1.2. Online Threat Prevention
Protecting Networks Firewalls | IDS & IPS | Access Control | Encryption | Patch Management | Network Segmentation | Security Policies | Network Monitoring | Incident Response Plan | Regular Auditing and Testing | Backup and Disaster Recovery | Security Updates and Threat Intelligence |
Firewall / Antivirus / Intrusion Detection System / Encryption / Virtual Private Network / Two-factor authentication / Access control / Intrusion Prevention System / Vulnerability scanning / Security policy / Antivirus Software / Network Segmentation / network security audit / penetration testing / Acceptable Use Policy / User Agreement / Internet Usage Policy / incident response plan / mitigation /

Unit 7 - Databases

Subunit 1 - Databases

7.1.1. Introduction to databases
Databases & Information Systems Data | Information | Databases | Information Systems |
Types of Database Non-Electronic Databases | Flat File Databases | Relational Databases | NoSQL Databases | Object-Oriented Databases | Graph Databases | Time-Series Databases | Spatial Databases | In-Memory Databases | Distributed Databases |
Database / Information Systems / Relational Database / SQL / Database Management System (DBMS) / Data / Information / Value / Accuracy / Relevance / Interpretation / Knowledge / Data Quality / Data Processing / Decision Making / Object-Oriented Database / Graph Database / Time-Series Database / Distributed Database / NoSQL Database / Flat file database / Record / Field / Delimiter / spatial database / in-memory database / replication / data partitioning /
7.1.2. Database Transactions
Database Transactions Database Transactions | Database Transaction Process | ACID Approach | Atomicity | Atomicity Example: Bank Transfer | Consistency | Consistency Example: Negative Bank Balance | Isolation | Transaction Isolation Example | Durability | Database Durability Example |
Database Transaction Terminology Transaction | Commit | Rollback | Savepoint | Concurrency Control | Isolation Levels | Deadlock | Transaction Scheduling | Timestamp Ordering |
ACID approach / Transaction / Atomicity / Consistency / Isolation / Durability / Concurrency / Redo Log / Undo Log / Locking / transaction log / audit trail / log file / recovery / logging / point-in-time recovery / undo operation / redo operation / database transactions / commit / rollback / isolation level / deadlock / concurrency control / Savepoint / Serializability / transaction scheduling / timestamp ordering / serialization / two-phase locking / Operation / Query / Record /
7.1.2. Database Management System
Introduction to Database Management Systems Introduction to Database Management Systems | Database Storage Engine | Data Dictionary | DBMS UI | Types of DBMS Reports | DBMS Backup Features | DBMS Security Features |
Database Management Systems / Relational Database / SQL / Normalization / Index / Backup / Query / Transaction / Data Warehousing / Database Administrator / Database storage engine / SQLite / database security / query optimization / indexing / data redundancy / data integrity /
7.1.8. Database Administrator
Database Administrator Database Administrator role | Database Design and Modeling | Installation and Maintenance | Performance Tuning | Security | Backup and Recovery | Updates and Migrations | Troubleshooting |
Database Administrator / Database Management System / Data Backup / Data Recovery / Database Security / Database Performance Tuning / SQL / Data Migration / Database Design / Data Integrity /
7.1.10. Methods of database interaction
Methods of database interaction SQL (Structured Query Language) | QBE (Query By Example) | Visual Queries | Natural Language Interfaces |
SQL / Relational Database / Query / Data Manipulation / Database Schema / QBE / Graphical User Interface / Non-technical Users / Visual query systems / Drag-and-drop interface / Natural Language Interfaces /

Subunit 2 - Structured Query Language

7.2.2. Database Manipulation Language
Database Manipulation Language SQL Queries SQL Data Manipulation Language (DML) Queries | SELECT Query | UPDATE | INSERT | DELETE | Data Aggregation and Summarization | Joining and Relational Views | Filtering and Sorting | Conditional Logic | Creating Virtual Tables (Views) |
Complex SQL Queries Derived Field | Derived Field Example | Parameter Query | Parameter Query Example | Boolean Operators | Boolean Operators Example |
Derived field / Parameters / Parameterized query / Injection attacks / SQL injection / Parameter markers / Placeholder / Database View Query / Database / View / Query / Virtual Table / Data Retrieval / aggregate / join / filter / sort / conditional / subquery / group by / having / distinct / limit /
7.2.3. Database Definition Language
Database Definition Language Queries Data Definition Language (DDL) | CREATE | ALTER | DROP | DELETE | .TABLE | PRAGMA table_info |
Database / Language / Database Definition Language / Schema / Column / Constraint / Primary Key / Foreign Key / SQL / DDL / Data Manipulation Language / CREATE TABLE / ALTER TABLE / DROP TABLE / TRUNCATE TABLE / ADD COLUMN / DROP COLUMN / RENAME TABLE /
7.2.1. SELECT Queries
SELECT Queries SQL Queries | SELECT Query | Filtering using WHERE | ORDER BY Clause | LIKE Operator |

Unit 8 - Ethics & Legalities

Subunit 1 - Ethical Issues & responsibilities

8.1.1. Environmental Impact of technology on society
Positive Environmental Impact of Technology Positive Impacts of technology on the environment | Renewable Energy Sources | Energy Efficiency | Waste Reduction | Environmental Monitoring | Precision Agriculture | Clean Transportation | Eco-Friendly Building Materials | Remote Work and Telecommuting | Water Conservation | Conservation and Restoration |
Negative Environmental Impact of Technology Negative Consequences for the Environment | Resource Depletion | Energy Consumption | E-Waste | Deforestation | Pollution | Loss of Biodiversity & Habitat | Climate Change | Sedentary Lifestyle | Mental Health |
Environmental Impact / Technology / Society / Pollution / E-waste / Carbon footprint / Deforestation / Resource depletion / Digital divide / Greenwashing / Renewable energy / Energy efficiency / Green buildings / Eco-friendly transportation / Smart grid / Waste reduction / Precision agriculture / Environmental monitoring / Telecommuting / Habitat Loss / Species Extinction / Ecosystem / Fragmentation /
8.1.2. Data & Online Privacy
Privacy Concerns Data Collection and Profiling | Surveillance | Eroding Privacy Norms | Right to be forgotten | Data privacy breaches | Data Protection Laws |
Data Protection Laws Data protection laws | Data Collection and Consent | Data Minimization | Data Security | Data Accuracy | Data Portability | Data Access and Transparency | Data Retention | Accountability and Governance | Penalties and Enforcement | Example Data Protection Laws |
Data / Online Privacy / Encryption / Cookies / Cybersecurity / Anonymity / Data Breach / Phishing / Digital Footprint / Privacy Policy / Data privacy / Security breach / Identity theft / Data breaches / Tracking / Consent / accuracy / retention / data protection laws / personal data / data subject / data controller / Data Minimization / Anonymization /
8.1.3. Inclusion in Computing
Disability Inclusion Digital Inclusion for those with disabilities | Accessible Websites and Apps | Captioning and Transcripts | Assistive Technologies | User Testing with People with Disabilities | Accessible Document Formats | Accessible Hardware and Devices | Policy and Regulation Compliance | Inclusive Design Practices |
The digital divide Introduction to the digital divide | Access to Technology | Internet Connectivity | Digital Literacy | Economic and Social Implications | Age Related Issues |
Gender Inclusion Promoting Female Inclusion in Technology | Equal Access to Education | Promoting STEM Education | Supportive Networks | Promoting Female Role Models | Diversity in Hiring | Equal Pay and Advancement Opportunities | Flexible Work Arrangements | Investment in Female-Led Startups | Addressing Workplace Harassment |
Inclusion in Computing / Diversity / Equity / Underrepresented / Bias / Accessibility / Empowerment / Intersectionality / Growth Mindset / Allyship / Digital inclusion / Assistive technology / Web accessibility / Screen reader / Captioning / Inclusive design / Accessible Document Format / Alt Text / Tagged PDF / gender bias / gender gap / glass ceiling / equal opportunities / stereotype / work-life balance / mentorship / Harassment / Sexual Harassment / Microaggression / Digital divide / Technology gap / Internet inequality / Technological disparity / Access divide / Information divide / Connectivity gap / Digital literacy / Information literacy / Computer literacy / Internet literacy / Media literacy / Cybersecurity /
8.1.4. Professionalism in the world of IT
IEEE Code of Ethics IEEE Software Engineering Code of Ethics | Rule 1 - Ensuring the safety of the public & the environment | Rule 2 – Educating individuals and society | Rule 3 – Avoiding conflicts of interest | Rule 4 – Avoiding unlawful conduct | Rule 5 – Being honest in claims and criticism | Rule 6 – Maintaining technical competence | Rule 7 – Avoiding discrimination | Rule 8 – Avoiding harassment | Rule 9 – Avoiding hurting others | Rule 10 – Supporting each other |
Professionalism / Ethics / Accountability / Communication / Integrity / Confidentiality / Professional Development / Adaptability / Teamwork / Problem-solving / Objectivity / Competence / Fairness / Responsibility / Respect / Sustainability / harassment / whistleblower / reporting / discrimination / retaliation / code of conduct / whistleblower protection / moonlighting / conflict of interest / Continuing education / Certifications / Industry conferences / Online courses / Self-study / Mentorship / Professional networking /
8.1.1. Computer Usage Laws
Computer Usage Laws Cybercrime Laws | Data Protection and Privacy Laws | Intellectual Property Laws | Cybersecurity Laws | Online Defamation and Cyberbullying | Hate Speech and Content Regulation | Domain Name Disputes |
Legal Considerations / Contract Law / Intellectual Property / Privacy Laws / Employment Law / Compliance / Tort Law / Cybersecurity / Consumer Protection / Corporate Governance / Software Copyright / Patents / Infringement / Trade Secret / Open Source / Invention / Fair Use / Freeware / Shareware / Proprietary / Commercial / Public domain / Trialware / End-user license agreement (EULA) / Site license / Software license / Open source license / Freeware license / Shareware license / Commercial license / Single user license / Multi-user license / Multi User License / Cybercrime Laws / Computer Fraud / Digital Forensics / Online Harassment / Ransomware / Identity Theft / Intellectual Property Laws / Copyright / Trademark / Patent / Creative Commons / Data Protection / Breach Notification / Consent / Cybersecurity Laws / Online Defamation / Cyberbullying / Social Media / Slander / Harassment / Trolling / Online Reputation Management / Anonymity / Impersonation / Domain Name Disputes / Cybersquatting / Uniform Domain-Name Dispute-Resolution Policy (UDRP) / DNS Hijacking /
8.1.1. Copyright
Copyright Introduction to Copyright | Software Copyright | Derivative Works | Software Patents | Software Documentation | Enforcement and Piracy | Software Licensing |
Copyright / Intellectual Property / Fair Use / Plagiarism / Public Domain / Licensing / Exclusive Rights / Infringement /
8.1.1. Software License Types
Software License Types Proprietary (Closed-Source) License | Open Source License | Permissive License | Commercial License | Freeware | Shareware | Public Domain | A single-user license | Multi-User License | Site License | Educational and Academic Licenses |
Licensing / Proprietary license / Open Source / Proprietary / Freeware / Shareware / Public Domain / Copyleft / GNU General Public License (GPL) / Commercial License /