United Grade 11 Computer Science (CSTA Level 3B, grades 11-12)
Chapters: 5
1. Computing Systems
Roles of operating systems · Logic gates, input and output
- Computing Systems: From Apps Down to Logic Gates – A computing system takes input, processes it, gives output and stores data. Hardware is the physical parts; software is the instructions. Systems are built in layers of abstraction: apps on top, the operating system in the middle, hardware at the bottom, and logic gates inside the hardware. Each layer hides its details from the one above. The operating system manages memory, shares CPU time, organises files, controls devices through drivers and keeps the system secure. Logic gates (AND, OR, NOT and others) turn 1s and 0s into decisions. Good devices are designed for usability, and good users troubleshoot systematically: describe, check simple things, change one thing at a time, test, and record.
2. Networks and the Internet
Bandwidth, load, delay and topology · Protecting devices and information
- Network Types, Topologies and Protocols: Size, Shape and Rules – Networks are grouped by size: PAN (a few metres around one person), LAN (a room, building or campus), MAN (a city) and WAN (a country or the world). A topology is the layout of how nodes are wired: bus (all on one backbone cable), star (all to a central hub or switch) and tree (stars joined in levels). A protocol is a set of rules: TCP/IP breaks and routes data on the Internet, HTTP and HTTPS carry web pages, FTP moves files, SMTP sends email, POP3 downloads email, PPP links two devices directly, TELNET logs into a remote computer, and VoIP carries voice calls over the Internet.
- Cybersecurity: Threats and How We Stop Them – Cybersecurity protects computers, networks and data. It aims for confidentiality, integrity and availability (the CIA triad). Common threats are malware, phishing and social engineering, brute-force password attacks and denial of service. Defences include strong authentication, encryption, firewalls, anti-malware software, updates, access control and backups.
3. Data and Analysis
Data analysis tools and patterns · Data collection techniques · Evaluating models and simulations
- Data Analysis – Data analysis means turning raw data into answers. It follows a cycle: ask a question, collect data, clean it (remove errors, repeats and blanks), organise and transform it, analyse it with summaries such as mean, median, range and patterns, show it with a good chart, and draw a careful conclusion. Watch for outliers, small samples and bias, and remember that a correlation between two things does not prove that one causes the other. Data must also be stored safely and used with permission.
4. Algorithms and Programming
How artificial intelligence works · Implementing a game-playing AI algorithm · Classic algorithms · Algorithm efficiency and correctness · Data structures compared · Recursion · Student-created components and APIs · Generalizable patterns in large problems · Code reuse with libraries · Software life cycle · Security issues in programs · Multiple platforms · Version control and IDEs · Test cases · Modifying existing programs · Code review · Comparing programming languages
- Artificial Intelligence: How Machines Learn to Think – Artificial intelligence (AI) is the skill of a computer system to do tasks that normally need human thinking: seeing, understanding speech, deciding and learning. An AI system is an agent that senses, thinks and acts. Old AI followed rules written by people. Modern AI mostly uses machine learning: it finds its own rule from many labelled examples (data). Neural networks are layers of simple units whose link strengths (weights) change during training. AI is used in maps, translation, health, farming and games. It can be wrong or unfair when its data is one-sided (bias), so people must check it, protect privacy and stay responsible.
- Introduction to Problem Solving – Problem solving on a computer has stages: analyse the problem (inputs, outputs, rules), develop an algorithm (a finite, clear, ordered set of steps), code it in a programming language, test it with different inputs, and debug (find and remove errors). An algorithm can be shown as a flowchart (oval = start/stop, parallelogram = input/output, rectangle = process, diamond = decision, arrows = flow) or as pseudocode (structured plain English). Decomposition breaks a big problem into smaller sub-problems that are solved separately and then joined.
- Algorithm Complexity: How Fast Does an Algorithm Grow? – Many algorithms can solve the same problem, but some need far more steps. We measure an algorithm by counting its basic steps as the input size n grows, not by stopwatch seconds. Big O notation names the growth: O(1) constant, O(log n) logarithmic, O(n) linear, O(n log n), and O(n²) quadratic. Linear search is O(n), binary search is O(log n); bubble sort is O(n²), merge sort is O(n log n). Memory used is space complexity.
- Arrays and Lists: Storing Many Values in One Name – An array is a row of numbered boxes that share one name. Each box holds one value and has an index that starts at 0. We read or change a box with its index, visit every box with a loop (traversal), and use that loop for standard algorithms: sum, average, largest, count and linear search. A 2D array is a grid of rows and columns, read with two indexes and two nested loops. A fixed array has a set length; a list (Python list, Java ArrayList) can grow and shrink.
- Recursion: Functions That Call Themselves – Recursion is when a function solves a problem by calling itself on a smaller version of the same problem. Every recursive function needs a base case, where it stops and returns an answer directly, and a recursive case that moves closer to the base case. Each call gets its own stack frame on the call stack; frames are removed as calls return.
- Object-Oriented Programming (OOP) – Object-oriented programming builds a program out of objects. A class is a blueprint that lists the data (attributes) and actions (methods) its objects will have. Each object is made from a class and keeps its own data. The four big ideas are encapsulation (hide data behind methods), inheritance (a new class reuses an old one), polymorphism (the same method call behaves in the right way for each object) and abstraction (show only what is needed).
- Programming Basics: Sequence, Selection, Loops and Functions – A program is a set of exact instructions a computer follows. Every program is built from three structures: sequence (steps in order), selection (if/else choices) and iteration (loops). Variables store values. Functions group code into reusable, named blocks, which makes programs modular and easier to test, debug and maintain.
- Software Development: From Idea to Working App – Good software is built in stages: analyse the problem and write requirements, design the solution, code it in small parts, test it with normal, boundary and erroneous data, deploy it to users and maintain it. Waterfall does each stage once in order; agile repeats short cycles. Robust programs validate input, and teams use version control, clear roles and feedback from users.
- Cybersecurity: Threats and How We Stop Them – Cybersecurity protects computers, networks and data. It aims for confidentiality, integrity and availability (the CIA triad). Common threats are malware, phishing and social engineering, brute-force password attacks and denial of service. Defences include strong authentication, encryption, firewalls, anti-malware software, updates, access control and backups.
5. Impacts of Computing
Maximizing benefits of artifacts · Equity and access in computing · Predicting impacts of innovations · Laws and regulations for software
Coming soon