# AH Session 2 : Exam Paper issues

## Recording of full tutorial for session 2

<details>

<summary>Overview of content</summary>

{% hint style="warning" %}
Generated from the recording using NotebookLM
{% endhint %}

This Advanced Higher Computing Science session, the second live event, aimed to equip **teachers with vital information** for the course. It detailed the course structure, including three theory units (Software, Web, Database Design & Development) with an optional exam choice but **mandatory integration knowledge** between web and database elements, alongside an 80-mark project requiring about 40 hours of work. Key exam components reliably include **Object-Oriented Programming (OOP), linked lists, 2D arrays, UML diagrams, and advanced higher algorithms** like binary search and insertion sort (the latter often proving challenging), with significant emphasis on **testing, evaluation, and maintenance**. Advice from course reports highlighted the importance of indicating data types, understanding all types of maintenance and testing, familiarity with OOP terminology and class diagrams, and for database/web candidates, proficiency in **HTML forms, SQL queries (including sub-queries and aggregate functions on a single table), and session variables/PHP coding**. A substantial **"swag bag" of resources**, including past papers, collated "big questions," and algorithm practice, was provided, with a key teaching strategy involving pupils **analysing "big questions" for data structures and algorithms** to reduce stress and build confidence. Future sessions are planned to cover UML tools and PHP implementation challenges, especially workarounds for server restrictions.

</details>

{% embed url="<https://youtu.be/vEp5IxG8-2k>" %}

<details>

<summary>Key contents</summary>

{% hint style="warning" %}
generated by NotebookLM
{% endhint %}

Key areas covered in the session include:<br>

* Course Structure: The course comprises both theory and practical elements. The theory is divided into three units: Software Design Development, Web Design Development, and Database Design and Development. Unlike National 5 and Higher, Computer Systems is not a separate unit. While pupils must cover all units, in the exam, they choose either the database or web design section. However, integration (the connection between these areas) is mandatory knowledge for both.
* Project: The project is worth 80 marks and candidates are expected to spend approximately 40 hours on it.
* Skills Assessed: Skills are drawn from the software development cycle: analysis, design, implementation, testing, and evaluation. These skills are sampled across all course content and question scenarios, requiring students to relate answers to the context.
* Question Paper Overview: The session provided a summary of what to expect in the question paper, highlighting topics that reliably appear each year, such as Object-Oriented Programming (OOP), linked lists (single or double), 2D arrays, UML use case diagrams, and class diagrams. Advanced Higher algorithms (binary search, bubble sort, insertion sort), testing, evaluation, and maintenance are also consistently examined.
* The "Big Coding Question": This is the last and often most challenging question in the software development section, typically involving data structures (2D arrays, records, arrays of records) and the manipulation of these structures. It also includes standard advanced higher algorithms like insertion sort and binary search. Candidates are encouraged to attempt all parts of this question to gain as many marks as possible, focusing on logic and thought process over perfection, and to leave it until last in the exam. A specific challenge has been the insertion sort algorithm in recent years.
* Integration: This is a central part of the course. If a candidate is doing the database section, they should expect integration with web elements (e.g., implementing HTML forms, designing wireframes). If doing the web section, they should expect integration with database elements (e.g., designing and implementing SQL queries for insert, update, delete, select, and aggregate functions, all on a single table).
* Advice from Course Reports (2024):
  * Candidates should indicate intended data types, especially when coding in Python, using comment lines.
  * Familiarity with all three types of maintenance (adaptive, corrective, perfective) and associated costs is crucial.
  * Candidates must be familiar with all types of testing (component, end-user, final, integrative, usability-based, personas).
  * For OOP questions, candidates need to know all terminology, study class diagrams, and pay attention to provided methods and code sections.
  * For database questions, understanding the benefits of surrogate keys over compound keys is important.
  * HTML forms design and implementation is essential, even for database candidates, due to integration requirements.
  * Sub-queries require practice for database candidates.
  * Web candidates need more practice describing the use of session variables and familiarity with PHP coding and MySQL functions at the Advanced Higher level.
* The "Big Coding Question": This is the last and often most challenging question in the software development section, typically involving data structures (2D arrays, records, arrays of records) and the manipulation of these structures. It also includes standard advanced higher algorithms like insertion sort and binary search. Candidates are encouraged to attempt all parts of this question to gain as many marks as possible, focusing on logic and thought process over perfection, and to leave it until last in the exam. A specific challenge has been the insertion sort algorithm in recent years.
* Integration: This is a central part of the course. If a candidate is doing the database section, they should expect integration with web elements (e.g., implementing HTML forms, designing wireframes). If doing the web section, they should expect integration with database elements (e.g., designing and implementing SQL queries for insert, update, delete, select, and aggregate functions, all on a single table).

</details>

***

### Clips from recording of Session 2

<table data-view="cards"><thead><tr><th></th><th data-hidden data-card-cover data-type="image">Cover image</th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><strong>1 Overview of QP structure</strong></td><td><a href="/files/YnQ0P1si9HaAr9LDZM7l">/files/YnQ0P1si9HaAr9LDZM7l</a></td><td><a href="/pages/3ueOMUlEGO9CzmCD1muk">/pages/3ueOMUlEGO9CzmCD1muk</a></td></tr><tr><td><p><strong>2 Course Report</strong> </p><ul><li>Key messages</li></ul></td><td><a href="/files/mm9tRhqRLADbpoUyqWjX">/files/mm9tRhqRLADbpoUyqWjX</a></td><td><a href="/pages/p5WwMj7QXK6el45Q6AYs">/pages/p5WwMj7QXK6el45Q6AYs</a></td></tr><tr><td><p><strong>3 Big Code Question</strong> </p><ul><li>Overview</li></ul></td><td><a href="/files/LCmcStp6Pm8ztM3afiFx">/files/LCmcStp6Pm8ztM3afiFx</a></td><td><a href="/pages/GhuT6uPu92R7azffe2t8">/pages/GhuT6uPu92R7azffe2t8</a></td></tr><tr><td><p><strong>4 Big Code Question</strong> </p><ul><li>Deep Dive</li></ul></td><td><a href="/files/HmJDnHRSX3T8R88uZWu3">/files/HmJDnHRSX3T8R88uZWu3</a></td><td><a href="/pages/XTIYkjTDGRhCjB3qNsYE">/pages/XTIYkjTDGRhCjB3qNsYE</a></td></tr><tr><td><p><strong>5 Big Code Question</strong> </p><ul><li>Approach suggestions</li></ul></td><td><a href="/files/oZdkYlrTid3nWmsLa5i5">/files/oZdkYlrTid3nWmsLa5i5</a></td><td><a href="/pages/v8V8wRYwHlfq8ptpuYPH">/pages/v8V8wRYwHlfq8ptpuYPH</a></td></tr><tr><td><p><strong>6 Big Code Question</strong> </p><ul><li>Formative Assessment ideas</li></ul></td><td><a href="/files/sKsu93htxdWoorl0USx6">/files/sKsu93htxdWoorl0USx6</a></td><td><a href="/pages/XMIjknaUULrpn2eWx6EO">/pages/XMIjknaUULrpn2eWx6EO</a></td></tr><tr><td><p><strong>7 Integration Question</strong> </p><ul><li>Deep Dive</li></ul></td><td><a href="/files/QwBnF6FlFbO2wnKUSd0l">/files/QwBnF6FlFbO2wnKUSd0l</a></td><td><a href="/pages/WneOUf5wdj8Uj0AqSGp6">/pages/WneOUf5wdj8Uj0AqSGp6</a></td></tr></tbody></table>

***

### Additional content derived from original recording by generative AI tools

<table data-view="cards"><thead><tr><th></th><th data-hidden data-card-cover data-type="image">Cover image</th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td>Overview of full tutorial</td><td><a href="https://images.unsplash.com/photo-1679083216051-aa510a1a2c0e?crop=entropy&#x26;cs=srgb&#x26;fm=jpg&#x26;ixid=M3wxOTcwMjR8MHwxfHNlYXJjaHw1fHxnZW5haXxlbnwwfHx8fDE3NTY3MzkwMDh8MA&#x26;ixlib=rb-4.1.0&#x26;q=85">https://images.unsplash.com/photo-1679083216051-aa510a1a2c0e?crop=entropy&#x26;cs=srgb&#x26;fm=jpg&#x26;ixid=M3wxOTcwMjR8MHwxfHNlYXJjaHw1fHxnZW5haXxlbnwwfHx8fDE3NTY3MzkwMDh8MA&#x26;ixlib=rb-4.1.0&#x26;q=85</a></td><td><a href="/pages/twgsneM0clLe9I1veuAw">/pages/twgsneM0clLe9I1veuAw</a></td></tr></tbody></table>

***

### SWAG from Session 2

<table data-view="cards"><thead><tr><th></th><th data-hidden data-card-cover data-type="image">Cover image</th></tr></thead><tbody><tr><td>Check back soon!</td><td><a href="https://images.unsplash.com/photo-1533738363-b7f9aef128ce?crop=entropy&#x26;cs=srgb&#x26;fm=jpg&#x26;ixid=M3wxOTcwMjR8MHwxfHNlYXJjaHwyfHxTV0FHfGVufDB8fHx8MTc1NjgxNzQxMnww&#x26;ixlib=rb-4.1.0&#x26;q=85">https://images.unsplash.com/photo-1533738363-b7f9aef128ce?crop=entropy&#x26;cs=srgb&#x26;fm=jpg&#x26;ixid=M3wxOTcwMjR8MHwxfHNlYXJjaHwyfHxTV0FHfGVufDB8fHx8MTc1NjgxNzQxMnww&#x26;ixlib=rb-4.1.0&#x26;q=85</a></td></tr></tbody></table>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://upskilling.stacs.scot/advanced-higher-support/tutorial-recordings-and-clips/ah-session-2-exam-paper-issues.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
