Computer Science

Computer Science Curriculum Intent at Noadswood

Computer Science at Noadswood is taught across Years 10 and 11 if it has been chosen as an optional subject. The course follows the National curriculum guidelines, where students have the opportunity to study aspects of information technology and computer science at sufficient depth to allow them to progress to higher levels of study or to a professional career.

Students are taught to: develop their capability, creativity and knowledge in computer science, digital media and information technology; develop and apply their analytic, problem-solving, design, and computational thinking skills; and understand how changes in technology affect safety, including new ways to protect their online privacy and identity, and how to report a range of concerns.

Computer Science is an extremely interesting subject, applying mathematical concepts to logic and problem solving in order to computationally think through the course. It is an extremely relevant subject, in an ever-changing world, and students are taught the fundamentals of computer science alongside real-world programming using Python. The subject is one which underpins many other areas in science and engineering, and offers a fantastic opportunity for students to push themselves producing programs to solve given problems.

Computer Science gives students the opportunity to develop valuable thinking and programming skills that are attractive in the modern workplace. This is done through an understanding of key computing concepts and the fundamentals of programming. This focuses on students creating a range of different programs to suit a requirement and encourages them to think creatively, innovatively, analytically, logically and critically when faced with unknown problems.


Computer Science – Teaching Rationale

The development of computing and computer science is one of the great intellectual and technological triumphs of human development, transforming every walk of life. From the fundamental level of billions of transistors, the flow of electrical current and patterns of information, computing allows us to perform a search, make a calculation, edit a photo or autonomously land a rocket. This processing of 0s and 1s allows for extraordinary things, and computer science allows us to dive into this fascinating subject.

Python programming is a fantastic way we learn the principles of computational thinking: logic, algorithms and problem solving when designing, testing and evaluating programs designed to complete set tasks. The knowledge in computer science taught as Noadswood has three strands: the principles of computational thinking, the specifics of Python programming (learnt alongside pseudo-code to allow progression beyond Python) and the best practice techniques learnt to make programming function efficiently.

The Noadswood computer science course is designed to develop students’ programming skills and techniques, through practice in real-world tasks (such as encryption / game production / password creation) alongside the key content and knowledge required to know how computer systems work (including their components, data representation, networks, and the ethical and cultural issues surrounding the topic).

The curriculum has been designed in such a way that key content is learnt in conjunction with Python coding practice, developing fundamental knowledge into independent coding principles for students to achieve. Each of the tasks completed has an essential level of knowledge and skills to be demonstrated, with next step tasks for those who have mastered the requirements of the task to stretch and develop further independence and mastery. The curriculum is a fluid one, where students have set tasks to complete independently, and those who are struggling to grapple with certain key functions can practice with regularity, whilst others are able to dive deeper into the fundamentals of the language.

At a national level, there is a gender imbalance with those studying computer science – we work hard at Noadswood to remove this imbalance and actively encourage all students who have a passion for logic, mathematics and problem solving to take the option – as it is becoming more and more beneficial for the modern world in some many fields of study.

The aim of the Noadswood computer science curriculum is to allow students to learn programming knowledge and become skilful programmers;  is rich in computer science knowledge; is clear with the knowledge that is needed for an understanding of the subject as well as progression within independent coding; and develops fundamental problem solving skills which underpin not just the subject by so many modern career paths. It is also a great opportunity to explore the history of the subject, and the key individuals who have progressed, and continue to progress, a science which the entire world relies upon.


Content

The course, which follows the OCR 9-1 GCSE Specification, is split into two main sections:

  1. Computer Systems
  2. Computational Thinking, Algorithms and Programming

Computer Systems

Students are introduced to the components of a computer system, networks, data representation and the ethical, cultural and environmental issues of computing. The content is delivered by our Noadswood staff, in a traditional way whilst having hands-on lessons of key parts (including the CPU, network hardware and topologies and research for the environmental costs to the modern computing world and what can be done to address these).

Computational Thinking, Algorithms and Programming

Students are taught the key skills associated with algorithms (pseudocode, flowcharts, computational thinking and searching / sorting algorithms), IDEs and design and testing (looking at languages, translators and how to create robust programs), and programming specifics (including the OCR Exam Reference Language, data types, operators, constants and variables, strings, program flow, Boolean logic, random numbers, arrays, file handling, data and sub programs).

The computational thinking module is taught alongside hands-on Python coding, where students are introduced to a concept and then spend a few lessons writing out real-world code based programs to solve given tasks. This includes mini-code projects as well as larger, multi-week programming challenges such as encryption and game development in order for students to have a genuine understanding of computer programming.


Course Content

Year 10

Autumn I

Introduction to the course

  • Python IDLE
  • FROG website, weekly homework and expectations
  • OCR Exam Reference Language introduction

 

Computer Systems Components Topic (Unit 1 Section 1)

  • Computer Systems
  • CPU
  • Memory, Storage and Performance
  • Secondary Storage
  • Operating Systems and Utilities
  • Summary

 

Computational Thinking, Algorithms and Programming Programming Topic (Unit 2 Section 2)

  • Data Types
  • Operators
  • Constants and Variables
  • Strings
  • IF Statements
  • SWITCH Statements

 

*Homework assessments + programming assessment through this ½ term.

 

Autumn II

Computational Thinking, Algorithms and ProgrammingProgramming Topic (Unit 2 Section 2)

  • Loops
  • Boolean Logic
  • Random Numbers
  • Arrays
  • File Handling
  • Data
  • Sub Programs

 

*Homework assessments + programming assessment through this ½ term + GCHQ puzzles

 

Spring I

Programming Assessment Encryption Task (Unit 3 Assessment 1)

*Encryption assessment (independent coding)

 

Spring II

Computer Systems Data Representation Topic (Unit 1 Section 2)

  • Units and Binary
  • Binary Additions
  • Binary Errors and Shifts
  • Hexadecimals
  • Characters
  • Storing Images
  • Storing Sounds
  • Compressions
  • Summary

 

Computer Systems Networks Topic (Unit 1 Section 3)

  • Networks
  • Network Hardware
  • Network Topologies
  • Network Protocols
  • Internet
  • Network Security
  • System Security
  • Summary

 

*Homework assessments through this ½ term

 

Summer I

Computer Systems Ethical, Cultural and Environmental Issues Topic (Unit 1 Section 4)

  • Ethical and Cultural Issues
  • Environmental Issues
  • Computer Legislation
  • Open Source and Proprietary Software
  • Summary

 

Computational Thinking, Algorithms and ProgrammingAlgorithms Topic (Unit 2 Section 1)

  • Computational Thinking
  • Pseudocode and Flowcharts
  • Algorithm Searching
  • Algorithm Sorting (Bubble)
  • Algorithm Sorting (Merge)
  • Algorithm Sorting (Insertion)
  • Summary

 

*Homework assessments + programming assessment through this ½ term

 

Summer II

Mock Exam Preparation – Paper I and Paper II content

Python Challenges and Black Flag

*Mock examination formal assessment

 

Year 11

Autumn I

Computational Thinking, Algorithms and ProgrammingDesign / Testing Topic (Unit 2 Section 3)

  • Languages
  • Translators
  • IDEs
  • Robust Programs – Defensive Design, Validation and Sanitisation
  • Robust Programs – Maintainability and Errors
  • Robust Programs – Testing
  • Summary

 

Programming Assessment Game Application Task (Unit 3 Assessment 2)

 

* Homework assessments + Game Application assessment (independent coding)

 

Autumn II

Mock Exam Preparation – Paper I and Paper II content

 

Spring I

Summary of all content

Mock Exam Preparation – Paper I and Paper II content

Programming Assessment Password Generator Task (Unit 3 Assessment 3) *if time allows

 

Spring II

GCSE Revision of key content

 

All of the course content, including the PowerPoint lessons for each topic, Python tasks and assessments can be accessed via the student / parent FROG login (via Departmental Sites > Computer Science).


Assessment

Students will sit two terminal papers, both 1 hour and 30 minutes long written papers:

  • Paper 1 - Computer Systems
  • Paper 2 - Computational Thinking, Algorithms and Programming

*Exams are non-calculator papers

Throughout the course, students will also have experience of mock papers (June/July in Year 10 and December and March in Year 11). Throughout the course, weekly computer science quiz homework is set as well as termly assessment points (both in taught content and programming skills).

Students receive feedback as they progress their programming journey, and are expected to progress their own learning at home with logic puzzles, challenges and Python specific tasks (including Rubik’s cube algorithms, GCHQ puzzles, and coding club challenges). A range of summative and formative tests are used, with a focus on low stakes but high impact questioning to steer students into forming their own solutions to given problems.

**Students are encouraged to visit the bespoke FROG website for all of the resources which can be downloaded, including revision cards, past papers and useful websites for in-class and home coding practice.


Extra-Curricular

  • Robotics club
  • Rubik’s cube club
  • Year 10 and Year 11 after-school consolidation lessons and drop-in sessions
  • 1-2-1 tutoring for those who need some support after school
  • Direction to our FROG site for puzzles and logic problems