Computer Science
Subject Leader: Mr K Bhutia
Subject Leader Email Address: kesang.bhutia@swale.at
Computers themselves, and software yet to be developed, will revolutionize the way we learn.
STEVE JOBS
Subject Overview
In computing, students will learn how computer systems work, from the physical hardware to the user-facing software. They will gain practical skills in creating and managing these systems, and they'll learn how to apply these skills to solve real-world problems creatively.
Computing provides students with a broad range of skills that are valuable across various subjects and careers. It also prepares them for new and emerging career paths. The course curriculum was developed in collaboration with leading technology companies, such as Google and Microsoft, to ensure students acquire the digital skills that are most in demand today.
This subject is a natural complement to mathematics, as it reinforces logical thinking and problem-solving. Students can use the skills they develop in computing to analyse and solve complex mathematical problems. Ultimately, a computing education will benefit students in any subject that requires a high degree of critical thinking.
Year 7
Term 1
Topic: How to use technology safely (e-safety), respectfully and responsibly (best use), modelling how others can use it.
Enquiry Question(s): How do we use technology safely?
Term 2
Topic: Basic hardware categorises input and output devices, understands internal and external hardware, and identifies how and when devices are used.
Enquiry Question(s): What is a PC made up of?
Term 3
Topic: Looking at abstraction, decomposition and algorithmic thinking to create flowcharts to solve problems.
Enquiry Question(s): What are algorithms?
Term 4
Topic: Programming in Microbit - using and understanding variables, data types, and basic functions; comparing the use of programming languages.
Enquiry Question(s): What is programming?
Term 5
Topic: Spreadsheets - undertake creative projects that involve selecting, using, and combining multiple applications, preferably across a range of devices, to achieve challenging goals, including collecting and analysing data and meeting the needs of known users
Enquiry Question(s): Why do we need spreadsheets?
Term 6
Topic: Creating a set of digital assets (computer animation, poster, leaflet and presentation) for a specific purpose based on the target audience and client requirements.
Enquiry Question(s): Why is the target audience so important?
Year 8
Term 1
Topic: Types of security threats and ways to prevent them. Gathering data and researching information from online and offline sources to look at a set of requirements (Online-Safety themed). Identifying and understanding how networks operate, including specific hardware (router, switch, firewall, server), differences and uses of wired vs wireless connections
Enquiry Question(s): How do you keep your data safe?
Term 2
Topic: Understanding the differences between data and instructions, what a CPU does, using binary to create 4-bit and 8-bit numbers, and using logic gates.
Enquiry Question(s): How does a computer work?
Term 3
Topic: Creating a digital asset (computer animation using animation creation software) for a set purpose based on the target audience and client requirements.
Enquiry Question(s): Why is the target audience so important?
Term 4
Topic: Creating Python code programs for specific requirements using input, print, conditionals and loops.
Enquiry Question(s): How can we program for a purpose?
Term 5
Topic: Creating a digital asset (computer game using game development software) for a set purpose based on the target audience and client requirements.
Enquiry Question(s): Why is the target audience so important?
Term 6
Topic: Creating simple web pages using Google Sites.
Enquiry Question(s): How can we use Google Sites?
Year 9
Term 1
Topic: Looking at key hardware within computers and looking at a range of network hardware used in different industries and careers, e.g. routers, switches and servers
Enquiry Question(s): Why do we need specific hardware?
Term 2
Topic: Spreadsheets - Undertake creative projects that involve selecting, using, and combining multiple applications, preferably across a range of devices, to achieve challenging goals, including collecting and analysing data and meeting the needs of known users
Enquiry Question(s): Why do we need spreadsheets?
Term 3
Topic: Creating Python programming for specific requirements, conditionals, loops and 1D Arrays to create a simple software solution.
Enquiry Question(s): Why do we need to identify requirements?
Term 4 and 5
Topic: Creating a digital asset (computer game using game development software) for a set purpose based on the target audience and client requirements.
Enquiry Question(s): Why is the target audience so important?
Term 6
Topic: Recap project of prior Year 9 Learning. Create a user interface using Microsoft PowerPoint for a specific audience and purpose.
Enquiry Question(s): Why do we use computers?
Year 10
Terms 1 and 2:
Include a general overview of the skills and knowledge taught throughout the term.
Systems architecture: Architecture of the CPU, CPU performance, Embedded systems, Memory and storage, Primary storage (Memory), and Secondary storage units. Programming fundamentals: Programming fundamentals, data types, and additional programming techniques.
Enquiry Questions:
Why are there so many different types of computing devices?
How can we program a robot to behave like a human?
Terms 3 and 4:
Units and binary numbers; Binary arithmetic and hexadecimal; Characters, images, sound, and compression; Computer networks, connections, and protocols; Networks and topologies; Wired and wireless networks, protocols, and layers. Programming - Sequence and selection; Iteration; Arrays. Start Python programming software project in term 3 (one weekly lesson).
Enquiry Questions:
What language does the computer understand?
How does the Internet connect all the devices across the world?
Terms 5 and 6:
Network security—identifying and preventing vulnerabilities, system software, operating systems, and utility software. Ethical, legal, cultural, and environmental impacts of digital technology. Advanced programming—functions, arrays, file handling, SQL programming. Producing robust programs—defensive design, testing. Continue working on the Python programming project.
Enquiry Questions:
How can you keep your data safe?
How do I read program code and predict what it does?
Year 11
Term 1 and 2:
1.2.3 Units. 1.2.4 Data storage, 1.2.5 Compression: The need for compression. Types of compression:
Lossy and Lossless. 1.6.1 Ethical, legal, cultural and environmental impact Impacts of digital technology on wider society, including Ethical issues, Legal issues, Cultural issues, Environmental issues, Privacy issues, Legislation relevant to Computer Science: The Data Protection Act 2018, Computer Misuse Act 1990, Copyright Designs and Patents Act 1988, Software licences (i.e. open source and proprietary).
Enquiry Questions:
Why do computer codes need to be converted into binary?
Why does YouTube give "copyright strikes"?
Term 3 and 4:
2.1 Algorithms - 2.1.1 Computational thinking, 2.1.2 Designing, creating and refining algorithms, 2.1.3 Searching and sorting algorithms. 2.3 Producing robust programs - 2.3.1 Defensive design, 2.3.2 Testing. 2.4 Boolean logic - 2.4.1 Boolean logic, 2.5 Programming languages and Integrated Development Environments, 2.5.1 Languages, 2.5.2 The Integrated Development Environment (IDE).
Enquiry Questions:
What's the first step to solving a puzzle?
How do I sort a list of data efficiently?
How can I code the same problem, e.g. "magic 8 ball", two ways?
Term 5:
Revision for FINAL EXAM
J277/01: Unit 1- Computer systems
J277/02: Unit 2 Comp. Thinking, Algorithms & Programming
Past papers
Sixth Form (Year 12)
Course outline:
The Pearson Level 3 Alternative Academic Qualification BTEC National in Computing (Extended Certificate) provides students with opportunities to develop the core knowledge, skills, and understanding that underpin computer programming, as well as computational thinking and programming skills that enable them to solve problems. Students will explore the critical components that safeguard information systems and data, acquiring knowledge and skills to comprehend and apply security and encryption principles and practices to computer networks in various situations. Students will also have the opportunity to examine the underlying principles of human-computer interaction (HCI) and develop an HCI solution to meet the requirements of a given brief. Students will draw synoptically on their programming learning and computational thinking skills to manage the development of a software solution to a problem.
Term 1
A: Introduction to programming, logic and numbers
A1 Number systems used in computers
Students will know, understand and apply the mathematical operations performed on denary and binary number systems.
Conversion of numbers between number systems, use of binary to represent negative and floating-point numbers, performing addition, subtraction, division and multiplication, binary shifts and overflow errors.
A2 Fundamentals of data and logic
Mathematical operators and their applications, relational operators and their applications, boolean operators and their applications, data types used in programming, declaration, initialisation, and use of constants and variables.
Term 2
A3 Program structure
The use of appropriate sequencing in program structure, the structure and application of selection (branching), including: IF statements (IF, ELSE, ELSEIF/ELIF) and switch/case (match). The structure and application of iteration, including count-controlled loops (FOR loops) and condition-controlled loops (WHILE loops).
Term 3
User-defined functions:
Defining and calling functions: defining parameters, passing arguments and returning values.
Local and global variables: using local and global variables and the benefits of each
Recursion: the concept and uses of recursion, and the benefits and drawbacks of using recursion.
B Extending program functionality
B1 Data structures
Single- and two-dimensional data structures, features of different data structures.Stacks and queues: how data is stored and accessed (last in first out (LIFO), first in first out
(FIFO), The use of stacks and queues to solve problems. Built-in functions: Handling basic input and output. Numerical functions: generating and using random numbers, defining and using a range, rounding and truncation. String handling functions: concatenating and splitting strings and lists, formatting inputs and outputs, etc. Working with external text files: reading data from and writing data to .txt files, the benefits and drawbacks of using .txt files to store program data.
Term 4
C: Developing programs to solve problems and specific requirements
C1 Problem solving: The use of computational thinking to explore problems and apply solutions
(decomposition, pattern recognition, abstraction, algorithmic design). Why developers use different methods for expressing algorithms/solutions: pseudocode, flowcharts, program code
Produce algorithms that demonstrate understanding of programming logic and
constructs (sequence, selection and iteration) using code/flowcharts.
C2 Developing high-quality computer programs:
Techniques to ensure readable and maintainable code: use of style and layout guides (tabs, spacing, indents, line length). Use of case (snake_case, camelCase, UPPER CASE, PascalCase), code annotations/comments, and modularisation. Validation techniques to improve the accuracy of data and the reliability of programs
Program actions following a validation check include providing feedback to the user, confirming validity, and proceeding to the following instruction/process. Testing programs to ensure they are functional and produce the correct outcomes, using the test results to identify and resolve issues.
Term 5
D: Issues relating to developing computer programs:
Use of code written by others (third-party code): Open-source code and Application Protocol Interfaces (APIs). Closed-source/proprietary APIs, compatibility issues, costs, licensing concerns, and legal and contractual issues.
Use of AI-generated code: security concerns (e.g. bugs in the code, sharing existing code/data with the AI model), compatibility with/integration into a larger code base, checking and testing generated code
The concepts of diversity and inclusion when developing computer software: Web Content Accessibility Guidelines (WCAG), potential bias in data sets and how to minimise them. Common problems associated with developing computer programs: Compatibility issues and how they can be addressed: web/cloud deployment, code translation to develop different versions of the same software
Addressing the digital divide in relation to access to and use of software: ensuring ease of use, optimisation of programs for use on a range of devices. Mitigating security issues (threats to data), user access, secure coding practices, outdated tools and libraries. Impacts of development time of new programs: unrealistic timescales from clients, feature creep, rapid response to changes in user expectations and industry trends.
How is the course assessed?
External exam in May/June. Resit in Jan/May
Sixth Form- Year 13
Course outline:
Students study a wide range of computing skills, from understanding basic computer hardware to identifying and troubleshooting complex hardware problems. They learn to write computer programs to create websites, games, and bespoke software. Students will cover a range of practical content, where they will develop employability skills like teamwork, communication, project work, research, and assessment.
They will become reflective practitioners who work to deadlines. This qualification covers a range of topics, such as principles of computer science (software development), computer game development, fundamentals of computer systems (computer hardware), and IT security systems.
Terms 1 and 2:
Unit 2 - Fundamentals of Computer Systems - A Hardware and Software
A1 Computer hardware within a computer system, A2 Computer software within a computer system, A3 Data processing. B Computer Architecture - B1 Approaches to Computer Architecture, B2 The Concepts of Microarchitecture, B3 Registers and Register Handling. C How data is represented by computer systems - C1 Number systems, C2 Text representation, C3 Image representation. D How data is organised on computer systems - D1 Data structures, D2 Indices and matrices.
Enquiry Questions:
Why are there so many different types of computing devices?
Term 3
E1 Transmitting data systems - E2 Error detection, E3 Error correction. F The use of logic and data flow within computer systems - F1 Boolean logic, F2 Flowcharts and system diagrams.
Enquiry Questions:
How is data organised on computer systems?
Term 4 and 5
Recap all the topics learnt in the previous terms and prepare for the final exam.
Coursework submission and sample submission.
How is the course assessed?:
External exam in May/June. Resit in Jan/May