#### Presentation: How the Internet works? (x21 slides)

How the Internet works presentation: x21 slides The following resource is mainly for advanced and A Level Computer Science pupils and explains some of the main characteristics about the Internet and how it works. It includes: - how Internet protocols (IP) are linked to domains - the way URLs are structured (eg top level, second level etc) in a hierarchy - role of ICANN - how domains are located using DNS - use of IPV4 / IPV6 - requesting a web page and the role of routers - use of packet switching and the makeup of individual packets - role of gateways in networks

#### Presentation: logic gates AND, OR, NOT, NAND, NOR, XOR (24 slides)

The logic gates AND, OR, NOT, NAND, NOR, XOR A Level Computer Science (24 slides) The AND, OR, NOT, NAND, NOR, XOR logic gate presentation covers the following: - Understanding that logic gates can be represented by switches as ON / OFF states - Understanding the different states that can be represented by logic gates - Understanding that logic gates can be represented by truth tables and Boolean expressions

#### Presentation: binary addition (8 slides)

Binary Addition Presentation (8 slides) GCSE &amp; A Level Computer Science The Binary Addition presentation covers the following: - Comparing binary addition with denary addition - Understanding The rules of binary addition - Two practice questions

#### Lesson: algorithms, decomposition and anstraction

The lesson is suitable for KS3 / GCSE Computer Science. Starter, asking pupils to comment on an article about the impact of algorithms Presentation on what an algorithm is, giving examples of algorithms, different kinds of computer algorithms and how these sets of instructions can be developed into a program. Sample python programs supporting the presentation on algorithms Presentation on decomposition saying what it is, giving examples and looking at how decomposition can apply to programs effecting the way a person programs (eg functional programming) Task to decompose an authentication probem. Presentation on abstraction, looking at what it is, giving examples and considering what data can be removed as part of the abstraction process. The pupils are given a task to remove any unecessary detail from an algorithm. The pupils complete five abstraction questions . Plenary, the pupils split into pairs and are given a problem. One person explains in a series of steps how to solve the problem (decomposition), whilst the other person tries to intervene to remove any unecessary detail from the explanation (abstraction) Homework task on how to make toast breaking this problem down using decomposition / abstraction.

#### Lesson: Binary search, (lesson plan & x 12 resources)

Lesson: Binary search, (lesson plan &amp; x 12 resources) (GCSE Computer Science) • To understand and explain how a binary search works An easy to follow and timed lesson plan (x1 hour) that includes x12 resources. Starter activity where pupils run a python program and share ideas how they would search through it to find an item A binary search presentation that introduces and explains the search algorithm A link to a binary search simulation demonstrates a working binary search model A further presentation demonstrates how to code a binary search in python There is a sample binary search written in python A worksheet (x8 marks) of questions and answers on the binary search. A stretch and challenge exercise to identify errors and omissions in binary search code A plenary exercise (x8 questions) using a presentation to test what the pupils understand by a binary search (answers provided) A homework to rearrange lines of code to form a binary search

#### Lessons: linear & binary search

Lessons (x1 hour) on linear and binary searches and logic gate presentation GCSE Computer Science. Starter activities Presentation on linear and binary searches View simulations of both searches Worksheet questions Stretch &amp; challenge activities Plenary Homeworks (Logic gate presentation included)

#### Lesson: Merge sort, (lesson plan & x 6 resources)

Lesson: Merge sort, (lesson plan &amp; x 6 resources) (GCSE Computer Science) • To understand and explain how a merge sort works An easy to follow and timed lesson plan (x1 hour) that includes x6 resources. Starter activity where pupils compare the performance of the bubble and merge sort. A merge sort presentation that introduces and explains the sorting algorithm (divide &amp; conquer) A link to a merge sort simulation demonstrates a working model An worksheet exercise to dry run the merge sort algorithm (answers provided) There is a sample merge sort written in python that the pupils edit and make changes. A stretch and challenge exercise to program the first half of the merge sort. A plenary exercise containing an x8 question assessment on the merge sort A homework to represent the performance of the bubble and the merge sort on a chart

#### Lessons: linear & binary search, bubble & merge sort

Includes the following x1 hour lessons: linear search binary search bubble sort merge sort Format of the lessons: Starter activities Presentations Simulations Worksheets Stretch &amp; challenge activities Plenary assessment Homeworks

#### Lesson: Linear search, (lesson plan & x 10 resources)

Lesson: Linear search, (lesson plan &amp; x 10 resources) (GCSE Computer Science) • To understand and explain how a linear search works An easy to follow and timed lesson plan (x1 hour) that includes x10 resources. Starter activity where pupils line up and hold numbers up to simulate a linear search. A linear search presentation that introduces and explains the search algorithm with supporting examples given in python Three linear search programs written in python, demonstrating a linear search (basic), a linear search (when data item not found) and a linear search (when more than one item you are looking for is found) Pupils view a simulation of a linear search (Internet link provided) A worksheet of six questions and answers on the linear search. A stretch and challenge exercise to program a linear search that counts the number of search terms if there is more than one search term. A plenary exercise to read through an account of visiting a games store and searching for a particular game. The parts of the account that are in error have to be highlighted in red. A research homework exercise and answers about the linear search (x3 questions)

#### Lesson: Bubble sort, (lesson plan & x 6 resources)

Lesson: Bubble sort, (lesson plan &amp; x 6 resources) (GCSE Computer Science) • To understand and explain how a bubble sort works An easy to follow and timed lesson plan (x1 hour) that includes x6 resources. Starter activity where pupils watch a video comparing the performance of different sorting algorithm A bubble sort presentation that introduces and explains the sorting algorithm (includes a flowchart) A link to a bubble sort simulation demonstrates a working binary sort model A further presentation demonstrates how to code a bubble sort in python There is a sample bubble sort written in python A stretch and challenge exercise to identify what happens when the number of data items in the list grows A plenary exercise whereby the class are separated into two teams (A &amp; B) and each team are asked a series of questions about a bubble sort A homework to research three difference between a bubble sort and a merge sort (answers provided)

#### Presentation: how to test a system (x11 slides)

The presentation introduces the idea behind testing and covers the ideas behind the idea of creating a test plan, difference between a fault and an error and shows a blue screen error. It describes the importance of reliability, using different test data (typical, erroneous, exaggerated data) and how to formulate a test plan.

#### Presentation: Entity Relationship Diagrams (ERD) (x11 slides)

The presentation introduces the idea of data redundancy (repeating data) inside tables. It shows using clear diagrams how to avoid this by splitting a table into two separate tables and introducing a one to many relationship between these two tables. It goes onto show how to represent ‘many to many’ relationships using two ‘one to many’ relationships, before defining the two important keys; primary and foreign key. There is a word document worksheet where the pupils have to describe the relationships between entities.

#### Presentation: Database terminology (x11 slides) & worksheet

The presentation introduces the terms database, relationship, table, records, fields and data items to explain the structure of a database. It gives visual examples of these terms and relates them to a database hierarchy. It explains the different degrees of relationships and asks a question to label a table database structure. The resource also includes a follow on worksheet where the pupils drag and drop database definitions alongside each one of the database terms.

#### Presentation: data flow diagram (x13 slides)

A presentation that introduces the different data flow diagram symbols, one by one and explains how a data flow diagram can be constructed from a table. An example of a data flow diagram is given followed a challenge exercise.

#### Presentation: validation rules (x16 slides)

The presentation introduces x7 validation rules; range check, type check, presence check, length check, lookup check, picture check and check digit check. Each one of the descriptions is supported with an example written in python and these have been uploaded as separate text files as part of the resource.

#### x3 Presentations: fetch, decode and execute cycle (x21 slides)

There are three presentations one for each of the fetch, decode and execute cycles. The presentations outline what each stage does and defines each stage of each one of the processes. The three presentations are designed to be taught in the cycle order, so the pupils should have a full appreciation of what is happening once the fetch, decode and execute cycle has been completed.

#### Presentation: object orientated programming (OOP) (x22 slides)

The presentation introduces the idea of properties and methods belonging to a class, being able to instantiate a class and produce an object and how many objects can be created from the class. The presentation describes the OOP characteristics behind inheritance, encapsulation and polymorphism. It gives six supporting examples using python code to demonstrate the above concepts. At the end of the presentation there is a challenge to create a program to illustrate the new ideas. This is supported by a class diagram that displays the relationship between the classes.

#### Worksheet: Reverse Polish Notation (RPN) questions and answers

The word document presents five questions asking for a translation from ‘infix’ to ‘postfix’ and five questions from ‘postfix’ to ‘infix’ notation. There is a question asking to convert a postfix expression into a binary tree and then requiring a traversal of the binary tree using preorder, post order and inorder traversal. There is a question asking about the purpose of RPN and another question asking why humans use infix notation and computers sometimes use postfix notation (x6 questions sub divided into sections)

#### Presentation: reverse polish notation (x10 slides)

The presentation introduces Reverse Polish Notation (postfix notation) and compares it to infix / prefix notation. There are examples of these different notations and then a closer look at how to convert expressions between postfix to infix and vice versa. A more detailed example demonstrates how a stack is used to temporarily manipulate values to evaluate the expression. Finally uses of RPN are given at the end of the presentation.

#### Presentation: stack data structure (x10 slides)

The presentation describes what a stack data structure is, introduces the principle operations of PUSH / POP along with the stack pointer using simple, easy to understand diagrams. The presentation includes pseudo code for the PUSH / POP operations and describes three uses of the stack data structure.

#### Presentation: recursion programming technique (x10 slides)

A presentation that describes what recursion is, uses two pseudo code examples (eg sum numbers and factorial) to illustrate the programming technique, including the importance of using a base condition and the result if no condition is used. There are a series of programming challenges at the end of the presentation.

#### Presentation: data types (x7 slides)

The presentation introduces five different data types; boolean, integer, real, date/time, string. Each slide describes the data type and gives examples of what they can represent.

#### Presentation: TCP / IP Protocol Stack (x13 slides)

TCP/IP Protocol Stack presentation: x13 slides The resource is for pupils studying GCSE and A level Computer Science and explains the four layers of the TCP / IP protocol stack; the application, the transpor, the network and the data link layers. The presentation includes: - an overview and explanation of the different layers - the protocols and some of the tasks involved in each layer - using an example of sending some data through the different layers - a summary at the end of the transmission of this data and how it has changed on it's journey

#### Presentation: How the Internet works? (x21 slides)

How the Internet works presentation: x21 slides The following resource is mainly for advanced and A Level Computer Science pupils and explains some of the main characteristics about the Internet and how it works. It includes: - how Internet protocols (IP) are linked to domains - the way URLs are structured (eg top level, second level etc) in a hierarchy - role of ICANN - how domains are located using DNS - use of IPV4 / IPV6 - requesting a web page and the role of routers - use of packet switching and the makeup of individual packets - role of gateways in networks