Diving Championship Coursework Task

  • Alan McGregor

    I’m currently working through the Diving Championship coursework task, and have completed (I think) the database part in Access 2010. I’ve attached my completed file if anyone wants to compare notes. I used the ‘choose’ function to do the score field – seemed the easiest way to do it but I’m sure there are other ways.

    My question is this – in the programming section does the test data for the five judges have to end in the same 1-5 positions as the database (ie Erikdottir R in 1st place, Nielson C in 5th place), or is this not important?

    Also – I presume that a hyperlink to the Wikipedia page of the national anthems will suffice, as they all have a sound clip on them. This is going to be fun when they all start blaring out :-/

    Finally – has the notation of 1:M in an E-R diagram changed since I last did Higher Info Systems? The PDF file E-R diagram has poorly drawn arrows pointing at the ‘many’ whereas I always used a sort of 3-pronged fork (as per any Higher Info Sys marking scheme on the SQA site). Not too important I guess, but looks a bit sloppy.

    Alan McGregor

    Did I manage to upload the file correctly? Can’t see it.


    Now perhaps I’m a complete numpty and my interpretation of the task is wrong, but I thought the task requires a program to be created that reads in (imports) the name and countries of the the five finalists that was produced by the database (stage 2a). It would then proceed by asking the user to enter the 5 judges scores for each of these finalists (which would need to be validated), before calculating & displaying their overall scores. The highest scorer(s) being output as the champion(s).

    It doesn’t actually ask for the placings, just the totals to be calculated and to work out who is the champion. And since pupils are expected to come up with their own test data plan, depending on the values they use for the judges scores in their test runs there could be joint champions – I would hope that my pupils would test that their solution would be able to cope with that situation.

    I have a grade analyser task that I used to use as part of my old NQ nab where the program had to work out how many pupils in a cohort had passed each grade (A-D) based on their percentages; it also had to display the highest percentage and the names of all the pupils who achieved the this percentage. I may just recycle this task as a practice before my pupils undertake the assignment.

    Alan McGregor

    Yep – that is my understanding of the programming part as well. Was just wondering if the numerical data from the database had any significance to the progamming part or whether it was simply name and country to be read in (as per the .csv file).

    I’m still not convinced that the file uploaded correctly yesterday. Will try it again with this post.

    Mr David Alford

    The biggest thing that annoys me about the SD part of this task is that it uses Find Minimum once and Find Maximum twice. I don’t see the value in repeatedly testing the same knowledge from the pupils. However there nuances in how the algorithm is applied that maybe the SQA want to bring out.

    I made a solution using True Basic, though I’m still not sure if it’s the most efficient way to solve the problem. It’s based on the output from the database being a text file with commas between the fields and each record on a new line.

    I’ve attached it, opinions welcome,


    Lee Murray

    Hi all,

    I can’t see any of the attached files.

    Anyway, I’m having trouble with the database part. I am using Access 2010 which I’m not that familiar with, but I probably wouldn’t manage it in any other RDBMS either.

    What I can do is create a report that displays the highest scorer from each country (as a report with 5 sub reports), but the exported output is hideous and I could never expect a pupil to use it as their input for the program.

    So I tried to create a query that would show the max score grouped by country, which works, but it shows the wrong diver’s name. The export of this query is beautiful but contains the wrong names. I have tried everything that I can think of and have Googled my nut off to no avail.

    Has anyone managed to solve this one?

    As for the programming part: it seems fair enough to me and is very straight forward in Python. I don’t mind that it asks for a finding maximum twice as you implement it once and call it twice. Just like what subroutines and functions are used for.

    Peter Thoresen

    Using Access 2007:

    Step 1 – Create query to calculate each diver’s score for each event

    Step 2 – Create query that groups by Country and Diver’s Names, and SUMs the scores (3 fields)

    Step 3 – Create query that groups by Country and selects MAX score (only 2 fields)

    And now the magic:

    Step 4 – Create query that includes previous two queries
    – Drag Country to Country to create a line
    – Drag Scores together for a second line
    – Select fields to be displayed

    I found this after a lot of searching on the Internet – its not obvious and seomthing I haven’t seen before.
    Access solution at http://www.techonthenet.com/access/queries/max_query2.php
    Possible SQA solution at http://stackoverflow.com/questions/2657482/sql-find-the-max-record-per-group


    Lee Murray

    YES! Thank you Peter.

    I had actually already seen both of those links but for some reason I couldn’t figure it out (I’d visited so many links, tried so many solutions by that point).

    Well that makes it much easier. The only thing now is to work out how to teach these things to the pupils in a meaningful way without just ‘teaching to the coursework’.

    Lee Murray

    I have a new query relating to the programming part of the assignment.

    Many schools are using Python now and it includes a very easy way to find the maximum/minimum value in a list. Using the built in functions, the finding max/min is trivialised.

    Instead of using the algorithms, you can simply write:


    This removes the highest and lowest scores from ‘scores’ (the list containing the judges scores).

    So the question is: should pupils be allowed to do this or should they be forced to use the full standard algorithm?

    In the marking scheme it mentions ‘use of computational constructs, data types and algorithms as required at this level’. Input validation is in the higher arrangements, so could that be accepted as the ‘higher’ algorithm, or is it rejected as it is also in the National 5 arrangements?

    I’m going to guess that they must write out the full algorithm, but some of my pupils are already quite adept at finding shortcuts in Python, so may not choose the harder and less efficient method.

    Any input is greatly appreciated.

    Peter Thoresen

    In Higher Computing coursework pupils using VisualBasic were expected to implement their own input validation routines rather than using built-in VBasic tools.

    I would expect the same with new course and Python (or any other language) – pupils should be able to implement a standard algorithm rather than relying on built-in methods.

    This will also better prepare them for the exam.

    However, given the vague marking scheme we have to use, there is no requirement for this. If a pupil does use built in functions then they should not be penalised.



    Hi everyone,

    Probably better for exam preparation if learners can reproduce algorithms and develop the code however the marking scheme is trying to be flexible so that you can use the full range of facilities in the programming language that is being used, if you so wish.

    There only needs to be evidence of design so this could be shown as iterative prototypes, with a series of individual features being developed by the learner and evidence of each being generated by print out/screenshot. Given the small scope of the problems presented at Higher it doesn’t always fit to do a full scale waterfall model approach when a more agile approach on developing working code would be better.


    Alan McGregor

    Right – latest attempt at uploading the file, have had to ZIP as .accdb not allowed on here by the look of it.

    Alan McGregor

    Gah – still not working. I’ve uploaded it here instead: http://we.tl/F8jd1Ct66O

Viewing 13 posts - 1 through 13 (of 13 total)

You must be logged in to reply to this topic.