Overview:

Students in Year 9 have 3 Computer Science lessons each week.

Year 9 Computer Science students have one piece of homework set every week.
This homework is usually set on Epraise.

Curriculum:

In Autumn we study:
Computing Systems
Algorithms & Programming
Computer Systems And System Software
The CPU
Computer Memory
Computer Specifications
Logic
Assembly Language Programming
  • Compare Embedded And General Purpose Computer Systems
  • Describe The Role Of System Software As Part Of A Computer System
  • Explore The Role Of The Operating System And Utility Software
  • Describe The Basic Components Of The CPU
  • Describe The Roles And Purpose Of Each Component Of The CPU In Computation
  • Explain How The Fetch-decode-execute Cycle Works By Describing What Happens At Each Stage
  • Describe The Role Of Each Part Of The CPU As Part Of The Fetch-decode-execute Cycle
  • Explore The Factors That Impact A CPU’s Performance
  • Describe The Characteristics Of RAM And ROM
  • Explain The Role Of Main Memory As Part Of A Computer System
  • Define Cache Memory
  • Describe The Role Of Cache In A Computer System
  • Explain Why A Computer System Needs Secondary Storage
  • State The Different Types Of Secondary Storage And Describe Their Functional Characteristics
  • State How Solid-state Memory, Optical And Magnetic Memory Works And Describe Their Characteristics
  • Apply Knowledge Of Storage Devices To Compare And Recommend An Appropriate Device
  • Describe The Limitations Of Secondary Storage
  • Explain The Definition Of ‘Cloud Storage’ And Describe The Characteristics Of Cloud Storage
  • Select Components To Create A Computer System
  • Evaluate A Computer’s Suitability For A Given Task
  • Discover The Logic Gates AND, NOT, And OR, Including Their Symbols And Truth Tables
  • Learn How Logic Gates Are Used In Carrying Out Computation
  • Design A Logical Circuit, Combining Logic Gates To Solve A Problem
  • Construct Truth Tables For A Three-input Logic Circuit
  • Write A Boolean Expression To Describe A Logical Circuit
  • Describe How Combinations Of Logic Gates Can Perform Mathematical Operations
  • Determine That Assembly Language Has A 1:1 Relationship With Machine Code
  • Explain The Basic Commands In The Lmc’s Assembly Code: INP, OUT, STA, LDA, ADD, SUP, And BRP
  • Design And Write Your Own Program In Assembly Language
Computational Thinking
Algorithms
Search Algorithms
Sorting Algorithms
Translators, Flowcharts And Sequence
Variables And Inputs
  • Define The Terms Decomposition, Abstraction, And Algorithmic Thinking
  • Recognise Scenarios Where Each Of These Computational Thinking Techniques Is Applied
  • Apply Decomposition, Abstraction, And Algorithmic Thinking To Help Solve A Problem
  • Describe The Difference Between Algorithms And Computer Programs
  • Identify Algorithms That Are Defined As Written Descriptions, Flow Charts, And Code
  • Analyse And Create Flow Charts Using The Flow Chart Symbols
  • Use A Trace Table To Walk Through Code That Contains A While Loop, A For Loop, And A List Of Items
  • Use A Trace Table To Detect And Correct Errors In A Program
  • Identify Why Computers Often Need To Search Data
  • Describe How A Linear Search and A Binary Search Can Be Used For Finding The Position Of An Item In A List Of Items
  • Perform Linear Searches and Binary Searches To Find The Position Of An Item In A List
  • Identify Scenarios When A Binary Search Can And Cannot Be Carried Out
  • Compare The Features Of Linear And Binary Search And Decide Which Is Most Suitable In A Given Context
  • Interpret The Code For Linear Search And Binary Search
  • Trace Code For Both Searching Algorithms With Input Data
  • Identify Why Computers Often Need To Sort Data
  • Traverse A List Of Items, Swapping The Items That Are Out Of Order
  • Perform A Bubble Sort To Order A List Containing Sample Data
  • Insert An Item Into An Ordered List Of Items
  • Describe How Insertion Sort Is Used For Ordering A List Of Items
  • Perform An Insertion Sort To Order A List Containing Sample Data
  • Interpret The Code For Bubble Sort And Insertion Sort
  • Trace Code For Both Sorting Algorithms With Input Data
  • Identify Factors That Could Influence The Efficiency Of A Bubble Sort Implementation
  • Merge Two Ordered Lists Of Items Into A New Ordered List
  • Describe How Merge Sort Is Used For Ordering A List Of Items
  • Perform A Merge Sort To Order A List Containing Sample Data
  • Compare How Humans And Computers Interpret Instructions
  • Explain The Differences Between High- And Low-level Programming Languages
  • Describe Why Translators Are Necessary
  • List The Differences, Benefits, And Drawbacks Of Using A Compiler, Or An Interpreter
  • Describe The Tools An Ide Provides (Editors, Error Diagnostics, Runtime Environment, Translators)
  • Use Subroutines In Programs
  • Define A Sequence As Instructions Performed In Order, With Each Executed In Turn
  • Predict The Outcome Of A Sequence And Modify It
  • Interpret Error Messages And Define Error Types And Identify Them In Programs (Logic, Syntax)
  • Identify Flowchart Symbols And Describe How To Use Them (Start, End, Input, Output, Subroutine)
  • Translate A Flowchart Into A Program Sequence
  • Design A Flowchart For A Program
  • Use Meaningful Identifiers
  • Determine The Need For Variables
  • Distinguish Between Declaration, Initialisation, And Assignment Of Variables
  • Demonstrate Appropriate Use Of Naming Conventions
  • Output Data (E.g. print (my_var))
  • Obtain Input From The Keyboard In A Program
  • Differentiate Between The Data Types: Integer, Real, Boolean, Character, String
  • Cast Variables By Calling A Function That Will Return A New Value Of The Desired Data Type
  • Define Runtime Errors In Programs
  • Define Validation Checks
In Spring we study:
Databases And SQL
Programming
Database Essentials
Database Types
SQL Searches
Insert, Update, Delete
Swim Challenge
  • Describe A Database
  • Define Database Key Terms (Table, Record, Field, Primary Key, Foreign Key)
  • Describe A Flat File Database
  • Describe A Relational Database
  • Describe The Function Of SQL
  • Use SQL To Retrieve Data From A Table In A Relational Database
  • Use SQL To Retrieve Data From More Than One Table In A Relational Database
  • Describe The Function Of Different Data Types
  • Use SQL To Insert, Update, And Delete Data In A Relational Database
  • Interrogate And Update An Existing Database
While Loops
Trace Tables
For Loops
Data Validation
Pseudocode
  • Define Iteration As A Group Of Instructions That Are Repeatedly Executed
  • Modify A Program To Incorporate A While Loop
  • Use A Trace Table To Walkthrough Code That Uses A While Loop
  • Use A Trace Table To Detect And Correct Errors In Programs
  • Define A For Loop
  • Walk Through Code That Uses A For Loop
  • Modify A Program That Uses A For Loop
  • Compare A While Loop And A For Loop
  • Determine The Need For Validation Checks
  • Use Iteration To Perform Validation Checks
  • Describe The Purpose Of Pseudocode
  • Translate Pseudocode Into A Program
  • Design And Build A Program Using Pseudocode
In Summer we study:
HTML and CSS
Programming
Introduction To HTML
Images And Links
Introduction To CSS
Divs And Classes
Layouts And The CSS Box Model
Project
  • Describe The Purpose Of HTML And Tags When Designing A Website
  • Create A Simple Webpage Using Basic Tags
  • Identify The Common Features Of Existing Websites And The Basics Of What Makes Good Web Design
  • Describe What Is Meant By The Term ‘accessibility’
  • Extend An HTML Page To Include:
    • Images `<`img`>`
    • Hyperlinks `<`a href`>`
  • Design And Create Pages For A Mini Website
  • Create Hyperlinks Between Pages Stored Locally Within A Folder
  • Insert Images Stored Locally Within A Folder
  • Describe The Purpose Of CSS And Why It Is Needed In Addition To HTML
  • Experiment With CSS By Changing The Style Of The Tags Learnt So Far In This Unit
  • Describe The Purpose Of DIV Tags
  • Apply Knowledge Of CSS To DIVS Within Webpages Using Classes
  • Explain How To Plan A Website By Developing A House Style And Sketched Wireframe
  • Describe The Box Model In CSS
  • Apply Skills To Position Items Within A Page
  • Construct A Three-page Website To Showcase The Skills Learnt Throughout This Unit Of Study
  • Self/peer Evaluate The Produced Webpage Using A Rubric
  • Extend/finish The Assessed Website
  • Showcase The Assessed Website
  • Demonstrate How Much Has Been Learnt By Taking An End Of Unit Test
GUIs
String Handling
Arrays And Lists
List Methods
Sense Hat
2D Arrays And Lists
  • Define The Term GUI
  • Import Third-party Libraries
  • Use Guizero To Create An Event-driven Program That Uses A GUI
  • Describe The Function Of String Operators
  • Use String-handling Techniques
  • Use For Loops With String Operations
  • Use A Substring In A Program
  • Use The In Operator To Check For A Substring
  • Use chr() And ord() To Perform ASCII Conversions
  • Create A Program That Uses String-handling Techniques
  • Define A Data Structure
  • Define A List And An Array
  • Describe The Differences Between Lists And Arrays
  • Use A List In A Program
  • Append To A List
  • Traverse A List Of Elements
  • Use List Methods
  • Create A Function That Returns A List
  • Import Custom-built Functions
  • Use Lists To Display Output On A Physical Computing Device
  • Use Randomisation To Append Items To A List
  • Define A 2D Array And A List
  • Use A 2D List In A Program
  • Use A 2D List As Part Of A Programming Challenge

Assessments:

Students in Year 9 are assessed through end of unit assessments and an end of year assessment.

Resources:

Students have a variety of resources available to them:

  • Teacher Slides
  • Activity Sheets/Tasks
  • Support Documents
  • Key Terminology Sheets
All of these resources can be found on Microsoft Teams.