Scotland Β· SQASyllabus
Computer Science syllabus, dot point by dot point
Every dot point in the Scotland Computer Sciencesyllabus, with a focused answer for each one. Click any dot point for a worked explainer, past exam questions, and links to related dot points. Written by Claude Opus 4.8, Anthropic's latest AI.
Database Design and Development
Module overview β- How do you turn a description of a real-world situation into a sound relational database design?Analyse data requirements and design a relational database using entities, attributes and relationships, entity-relationship diagrams, a data dictionary, and primary, foreign and composite keys.12 min answer β
- How do you prove a database returns the right data and keeps its data consistent?Test SQL queries against expected results, maintain referential integrity, and evaluate a database solution for fitness for purpose and data integrity.12 min answer β
- How does normalisation remove the redundancy and update anomalies from a flat table?Normalise data from unnormalised form to first, second and third normal form, using functional dependency and primary, foreign and composite keys to remove redundancy and anomalies.13 min answer β
- How do you create, query and update a relational database in SQL?Implement and query a relational database in SQL, using data definition (CREATE, ALTER) and data manipulation (SELECT, INSERT, UPDATE, DELETE) with joins, aggregate functions, GROUP BY and HAVING, subqueries, wildcards and computed columns.14 min answer β
Software Design and Development
Module overview β- Which data structure should you choose when an array is not the right shape for the data?Describe and implement the data structures used in Advanced Higher: one- and two-dimensional arrays, records, sequential files, linked lists, stacks and queues, including their operations.13 min answer β
- How do classes, inheritance and polymorphism let one set of code model many related kinds of object?Describe and implement object-oriented programming using classes, objects, instantiation, attributes and methods, encapsulation, inheritance, and polymorphism through method overriding.13 min answer β
- How does a structured development process turn a vague problem into reliable, maintainable software?Describe and compare iterative (agile) and structured (waterfall) development methodologies, and apply the analysis, design, implementation, testing, documentation, evaluation and maintenance stages of the software development process.12 min answer β
- How do searching and sorting algorithms work, and how do we judge which is more efficient?Describe and implement the standard searching and sorting algorithms (linear and binary search, bubble, insertion and quicksort), explain recursion, and compare algorithm efficiency.14 min answer β
- How do you prove a program works, and how do you judge whether it is any good?Plan and carry out testing using normal, extreme and exceptional data and dry runs with trace tables, and evaluate software for fitness for purpose, robustness, efficiency and maintainability.12 min answer β
The Project
Module overview βWeb Design and Development
Module overview β- How do HTML and CSS divide the work of building a web page between content and presentation?Implement a web page using HTML5 structural and semantic elements and style it with CSS, using internal and external stylesheets, selectors, classes and IDs, the box model and responsive design.13 min answer β
- How does client-side JavaScript make a web page interactive and validate user input?Implement client-side interactivity with JavaScript, using variables, functions, events, DOM manipulation and form validation.12 min answer β
- How does server-side PHP process a form and read or write a database to make a site dynamic?Implement server-side functionality with PHP, handling form data with GET and POST, using sessions, and connecting to a database to run SQL queries from a web page.13 min answer β
- How do you plan a website so that it meets the user's needs before any code is written?Analyse the requirements of a website and design it using a site structure diagram, wireframes, low-fidelity prototypes and user-centred design principles.12 min answer β
- How do you judge whether a website works, is usable, and is accessible to everyone?Test a website for functional correctness, and evaluate it for usability, accessibility and fitness for purpose.12 min answer β