National 5
Course Overview
Use the sidebar (or the menu button on phones) to select different topics if you want to revise!
The National 5 Computing Science course in Scotland is designed to develop learners' understanding of computational processes and thinking. It explores several central themes through practical and investigative tasks across various specialized areas. The course emphasizes the role of computing professionals as problem-solvers and designers, highlighting the extensive influence of information technology on both the environment and society.
The course aims to enable learners to:
- Utilise computational-thinking skills in diverse modern contexts.
- Apply knowledge of fundamental computing science concepts and processes.
- Engage in the analysis, design, implementation, testing, and evaluation of various digital solutions.
- Effectively communicate computing concepts and clearly explain computational behaviors using appropriate terminology.
- Develop an understanding of how computing science contributes to and influences environmental and societal changes.
Assessment
The course is assessed through two main components: a question paper and an assignment. The question paper is worth 80 marks, and the assignment is worth 40 marks, for a total of 120 marks. Each of these is divided into three distinct sections, covering Software Design and Development, Web Design and Development and Database Design and Development. Completion of the Software Development section is mandatory in both papers, but candidates can choose which of the other two sections they wish to complete.
Here is a breakdown of the marks for the average question paper and assignment.
| Type of Assessment | SDD and CS | WDD | DDD | Total Marks | Duration |
|---|---|---|---|---|---|
| Question Paper | 55 | 25 | 25 | 80 | 1 hour and 30 minutes |
| Assignment | 25 | 15 | 15 | 40 | 6 hours (approx. 7 periods) |
Note that the Computer Systems topic is folded into the Software Design and Development topic in both cases. This topic is usually worth roughly 10% of the available marks.
The assignment will be completed in class time, and the candidate will be give 6 periods in which to complete it.
Countdown to Exam
Course Breakdown and Specifications
Below you can find more information on the different topics in Computing Science, click on the buttons to find out more information on each topic. The specifications for each topic from the SQA website have been included with each breakdown.
Candidates develop an understanding of how data and instructions are stored in binary form and basic computer architecture. They gain an awareness of the environmental impact of the energy use of computing systems and security precautions that can be taken to protect computer systems.
| Data Representation |
Describe and exemplify the use of binary to represent positive integers. Describe floating point representation of positive real numbers using the terms mantissa and exponent. Convert from binary to denary and vice-versa. Describe extended ASCII code (8-bit) used to represent characters. Describe the vector graphics method of graphic representation for common objects:
with attributes:
Describe the bit-mapped method of graphics representation. |
|---|---|
| Computer Structure |
Describe the purpose of the basic computer architecture components and how they are linked together:
Explain the need for interpreters and compilers to translate high-level program code to binary (machine code instructions). |
| Environmental Impact |
Describe the energy use of computer systems, the implications on the environment and how these could be reduced through:
|
| Security Precautions |
Describe the role of firewalls. Describe the use made of encryption in electronic communications. |
Candidates develop knowledge, understanding and practical problem-solving skills in software design and development, through a range of practical and investigative tasks using appropriate software development environments. This develops their programming and computational-thinking skills by implementing practical solutions and explaining how these programs work. Tasks involve some complex features (in both familiar and new contexts), that require some interpretation by candidates. They are expected to analyse problems, and design, implement, test and evaluate their solutions.
| Design Methodologies |
Describe and implement the phases of an iterative development process: analysis, design, implementation, testing, documentation, and evaluation, within general programming problem-solving. |
|---|---|
| Analysis |
Identify the purpose and functional requirements of a problem that relates to the design and implementation at this level, in terms of:
|
| Design |
Identify the data types and structures required for a problem that relates to the implementation at this level, as listed below. Describe, identify, and be able to read and understand:
Exemplify and implement one of the above design techniques to design efficient solutions to a problem. Describe, exemplify, and implement user-interface design, in terms of input and output, using a wireframe. |
| Implementation (data types and structures) |
Describe, exemplify, and implement appropriately the following data types and structures:
|
| Implementation (computational constructs) |
Describe, exemplify, and implement the appropriate constructs in a high-level (textual) language:
Read and explain code that makes use of the above constructs. |
| Implementation (algorithm specifications) |
Describe, exemplify, and implement standard algorithms:
|
| Testing |
Describe, identify, exemplify, and implement normal, extreme, and exceptional test data for a specific problem, using a test table. Describe and identify syntax, execution, and logic errors. |
| Evaluation |
Describe, identify, and exemplify the evaluation of a solution in terms of:
|
Candidates develop knowledge, understanding and practical problem-solving skills in web design and development, through a range of practical and investigative tasks. This allows candidates to apply computational-thinking skills to analyse, design, implement, test and evaluate practical solutions to web-based problems, using a range of development tools such as HTML, CSS and Javascript. Tasks involve some complex features (in both familiar and new contexts), that require some interpretation by candidates.
| Analysis |
Identify the end-user and functional requirements of a website problem that relates to the design and implementation at this level. |
|---|---|
| Design |
Describe and exemplify the website structure with a home page, a maximum of four linked multimedia pages, and any necessary external links. Describe, exemplify and implement, taking into account end-user requirements, effective user-interface design (visual layout and readability) using wire-framing:
Describe and identify the implications for individuals and businesses of the Copyright, Designs and Patents Act 1988 relating to:
Compare a range of standard file formats:
Describe the factors affecting file size and quality, relating to resolution, colour depth, and sampling rate. Describe the need for compression. Describe, exemplify and implement prototyping (low-fidelity) from wireframe design at this level. |
| Implementation (CSS) |
Describe, exemplify and implement internal and external Cascading Style Sheets (CSS):
Read and explain code that makes use of the above CSS. |
| Implementation (HTML) |
Describe, exemplify and implement HTML code:
Describe and implement hyperlinks (internal and external), relative and absolute addressing. |
| Implementation (JavaScript) |
Describe and identify JavaScript coding related to mouse events:
|
| Testing |
Describe and exemplify testing:
|
| Evaluation |
Evaluate solution in terms of:
|
Candidates develop knowledge, understanding and practical problem-solving skills in database design and development, through a range of practical and investigative tasks. This allows candidates to apply computational-thinking skills to analyse, design, implement, test, and evaluate practical solutions, using a range of development tools such as SQL. Tasks involve some complex features (in both familiar and new contexts), that require some interpretation by candidates.
| Analysis |
Identify the end-user and functional requirements of a database problem that relates to the implementation at this level. |
|---|---|
| Design |
Describe and identify the implications for individuals and businesses of the UK General Data Protection Regulation (UK GDPR) that data must be:
Describe and exemplify entity-relationship diagrams with two entities indicating:
Describe and exemplify a data dictionary:
|
| Implementation |
Implement relational databases with two linked tables, to match the design with referential integrity. Describe, exemplify and implement SQL operations for pre-populated relational databases, with a maximum of two linked tables:
Read and explain code that makes use of the above SQL. |
| Testing |
Describe and exemplify testing:
|
| Evaluation |
Evaluate solution in terms of:
|
Revision
If you're getting ready for your National 5 Computing Science exam, the best way to revise is by breaking it down into simple steps. First, make sure you understand what’s actually in the course. Check the SQA course guide to make sure you know what topics to focus on.
It helps to use different ways to study so things stick in your mind. Flashcards are great for memorising key terms, like different types of loops in programming or important SQL commands. Mind maps can help you connect ideas, like how different parts of a database link together. Quizzing yourself is also a good way to check if you actually remember things rather than just reading over notes.
One of the best ways to prepare for the exam is by practising past papers. You can download them from this website, or the SQA website, and try answering questions under timed conditions. This gets you used to the types of questions that come up and helps you figure out what you still need to work on. Make sure to check the marking schemes so you understand what examiners are looking for—especially in coding questions where small mistakes can cost marks.
Since Computing Science is a practical subject, practising coding is super important. Try writing Python programs that use loops, arrays, and functions so you feel confident with programming questions. For databases, practise writing SQL queries using an online SQL editor or a database program. If web development is a tricky area for you, spend time building simple web pages with HTML, CSS, and JavaScript so you get more comfortable with it.
This website is intended as a revision resource for students stying Computing Science, but there are other online resources that you can use if you are struggling with a topic, such as:
YouTube also has a lot of videos that break down difficult concepts step by step. Watching someone go through a coding problem can make it easier to understand than just reading about it! I have included a Past Paper walkthrough in the form of videos on the Past Paper section of this website.