One Roster / RAP - Thinking about integrating?
Before you begin to code, this page aims to encourage technical integrators to consider how they can plan for and simplify their integration with One Roster / RAP.
Whilst most things are possible, not everything that is possible is also desirable.
If you have landed here by mistake and need to see how to do actual coding then click on the appropriate link below!
Web based systems are ideally placed to deliver small and focused information about an entity that is needed within an application.
For example, SIMS does not publish results to One Roster although this has been considered. This is partly down to numbers but more importantly is constrained by GDPR. For example, an external system may need exam results for some purpose; exam results are assessments in SIMS.
Average secondary/post primary student might have 5 lessons per day and get 1 mark per lesson
Schools typically open 190 days per year (round to 200 for ease of maths.)
An average person might receive 1000 marks per year.
Final public exam results in their last year might add 10 marks.
A 1000 pupil school teaching 5 year groups might collect 1m marks per year.
This is intended to provide an order of magnitude to assist discussions, schools will vary drastically in their assessment policy.
Marks vary in terms of importance, for example exam results will be needed for analysis widely but Mr M's daily tables test is useful locally but not comparable outside of his class.
Marks can also be used to convey personal information relevant to the class; for example pregnant pupils may be excluded from boxing. Whilst there is a strong argument to say that information such this should not be stored in assessment, schools have been creative in the use of assessment results and it cannot be assumed that in the million marks stored each year do not contain personal information.
The external system needs 10 exam results per pupil and grabbing all the marks would:
- Risk exporting personal information that is not needed (Possibly special category data)
- Take a million marks when they are interested in ~ 200 x 10 = 2000 marks
- Hard to justify exports that take 99.8% superfluous data.
The same principle applies to all data extracted. Extract the data that is needed for a purpose and only retain it for the duration for which that purpose is valid.
The second challenge is to keep the data up to date. Unfortunately One Roster / RAP do not support change tracking and will provide a snap shot of the world today. Much may change tomorrow and the only way to update the data held is to take it again and merge the data in some way. Clearly in our example above it is more efficient to keep 2000 records up to date than it is to keep 1m records up to date.
Each application is different but with web APIs it is sensible to consider whether accessing the data in real time would be efficient or not? One Roster and RAP are not large data volume calls however calls to get a whole school's data frequently would be beyond fair usage and may be subject to throttling / additional charges.