Page History

Setting up levels of award reporting

Nigel Stanger edited this page 16 days ago

Clone this wiki locally

Taught Master’s, Postgraduate Diploma, and Honours courses (including Applied Science) require an overall level of award in addition to grades for the individual papers (note that the BAppSc used to also require a level of award until it was changed to a three year degree). This page describes how to set up reporting for this in INFORMS2.

Update cutoff and points multiplier (IF NEEDED)

We have a requirement that INFO Honours students must score higher than 80% in INFO 490 in order to gain First Class Honours. Since this cutoff may change, it is stored in the table Hons_1st_Cutoff. The defaults for the two values are 80 and 79, respectively. The table specifies a range of valid years for the cutoff values, so will only need to updated when the cutoffs actually change. Last_Year should be 9999 (or similarly large number) for the most recent entry—remember to update it when a new entry is added, e.g.:

insert into Hons_1st_Cutoff (first_year, last_year, min_dissertation_result, max_2nd_class)
values (2002, 80, 79, 9999);

In a similar vein, the overall level of award is calculated using a weighted average of the results of the individual component papers, based on the number of points for each paper. Most of the papers will be either 40, 20, or 18 points these days, but this has varied over time, and there are also some weird ones out there. The biggest historical change that occurred was the shift from a 6 points per paper base to an 18 points per paper base, which means that historical points values prior to 2007 need to be multiplied by three in order to be comparable to modern values. This is particularly relevant to students whose qualification spans the changeover (i.e., some papers use the old points values, some use the new). These changes are recorded in the table Points_Multiplier. Again, this table specifies valid year ranges, so we only need to add an entry if the multiplier changes.

insert into Points_Multiplier (first_year, last_year, multiplier_value)
values (2007, 9999, 1.0);

As with Hons_1st_Cutoff, Last_Year should be 9999 for the most recent entry—remember to update it when a new entry is added. Note that if the base points values change again in future, all existing points multiplier values will need to be updated as appropriate. For example, if all papers moved to a base of 15 points in 2022, then the points multipliers prior to 2007 would change from 3.0 (= 18/6) to 2.5 (= 15/6), and those from 2007 to 2021 would change from 1.0 to 0.8333 (= 15/18).

Create “fake” papers

The only programmes that currently require levels of award are Honours, Postgraduate Diplomas, and taught Master’s. These are represented in the database by enrolling students in one of the “fake” papers “HONS400” (Honours), “PGDP400” (PGDip), “SENG500” (MAppSc), “TELE500” (MAppSc), or “MBDS500” (MBusDataSc). (There was also the historic “HEIN700” for the PGDipHealInf.) Before doing anything else, we need to create offerings of these fake papers for the current year, e.g.:

insert into Paper (paper_code, year, period_code, title, visible)
values ('HONS400', 2017, 'FY', 'Honours', false);

insert into Paper (paper_code, year, period_code, title, visible)
values ('PGDP400', 2017, 'FY', 'Postgraduate Diploma', false);

insert into Paper (paper_code, year, period_code, title, visible)
values ('MBDS500', 2017, 'FY', 'Master of Business Data Science', false);

Find the relevant students

We need to find students who are enrolled in any of the following programmes:

  • BA/BCom/BSc(Hons) in INFO
  • BAppSc(Hons) in SENG or TELE
  • PGDipArts, PGDipCom or PGDipSci in INFO
  • PGDipSci in SENG or TELE
  • PGDipAppSc in SENG or TELE
  • PGDipHealInf [discontinued]
  • MAppSc in SENG or TELE
  • MBusDataSc

Ways of doing so include:

Run a CARPT003 Enrolment and Course Approval Status Report (by Programme Route) report in Business Objects, using the file LoA_programmes.txt as input (other parameters: periods = all, status = C, divisions = all).

This query:

select distinct
    Student_ID,
    Surname,
    Othernames,
    Programme_Code
from
    Student inner join
    Enrolment using (Student_ID) inner join
    Programme using (Programme_Code)
where year = YYYY
  and Paper_Code ~ '^(INFO|SENG|TELE)([45][0-9]{2})'
  and Programme_Code ~ '^(B.*\(Hons\))|MBusDataSc|(PGDip.*)'
  and Enrolled_At_End;

The heuristic is anyone taking an INFO, SENG, or TELE 400- or 500-level paper whose programme is an Honours degree, PGDip, or MBusDataSc. This doesn’t consider whether they are completing.

Enrol students in “fake” papers

For example:

insert into Enrolment (student_id, paper_code, year, period_code, enrolled_at_end, programme_code)
values (1234567, 'HONS400', 2017, 'FY', true, 'BCom(Hons)');

Add level of award mappings

For example:

insert into Level_of_Award_Papers (student_id, parent_paper, parent_year, parent_period, child_paper, child_year, child_period)
values (1234567, 'HONS400', 2017, 'FY', 'INFO401', 2017, 'FY');

insert into  Level_of_Award_Papers (student_id, parent_paper, parent_year, parent_period, child_paper, child_year, child_period)
values (1234567, 'HONS400', 2017, 'FY', 'INFO403', 2017, 'FY');

insert into  Level_of_Award_Papers (student_id, parent_paper, parent_year, parent_period, child_paper, child_year, child_period)
values (1234567, 'HONS400', 2017, 'FY', 'INFO405', 2017, 'FY');

insert into  Level_of_Award_Papers (student_id, parent_paper, parent_year, parent_period, child_paper, child_year, child_period)
values (1234567, 'HONS400', 2017, 'FY', 'INFO480', 2017, 'FY');

The “parent” paper represents the the year in which the student completes their programme and gains the Level of Award, and thus points to a “fake” paper enrolment, whereas the “child” papers represent the component papers that make up the programme, and thus point to real paper enrolments. Clearly, the “parent” paper should be the same across all entries for a student in a given year. Honours students are required to complete all papers in the same year, so their “child” papers will also all have the same year (but there is no checking of this in the database or applications). PGDip students, however, have no such requirement, so their “child” papers can potentially span several different, possibly non-contiguous, years.

Note that it is possible for the same student to have multiple “parent” entries in different years if they fail to complete the requirements for the programme (e.g., by failing a paper) and then return in a later year.