Push and pull
Typically, timetabling or attendance or LMS software will pull:
- Student data
- Teacher data
- Room data
- Course data
Typically timetabling or daily administration software (covers / exams) or attendance will push:
- The cyclical timetable
- Date-based timetable ('daily variations')
- Calendar based events (exams, PD, excursions)
- Student attendance
The SIS will always be the server, i.e. all calls are initiated by the satellite system regardless of which way the data actually flows. With a few exceptions, data can flow in either direction: from the SIS to the satellite system or vice versa.
Therefore, most calls occur in pairs:
In these cases, the 2 calls share the same definition of the objects being sent.
- When data is Pushed (“publish”), this means it is sent to the SIS
- When data is Pulled (“get”), this means it is sent to the satellite application
- If you see (F?), it means that the function may be implemented in a future version of the standard.
|Data / Function Call||Push (To SIS)||Pull (From SIS)||RPC function name|
|Daily data (excursions, room swaps etc)||Y||(F?)|
|Bell times/cycle structure||Y||Y|
On any given installation, there should be clear agreement as to which system is the single point of truth for a particular type of object. This will determine which function calls will succeed, or perhaps even which function calls are implemented. LISS v1.0 does not have any formal system for managing this constraint – it is up to the configuration of the SIS and/or satellite systems.
One Timetabling/SIS pair (Edval and Edumate) agreed that the SIS should be the primary data source of class lists for active timetables, whereas the timetabling system could be the primary data source of class lists for future timetables (next year’s timetable). In some cases, the timetabling system will not deal with class lists. In many cases, the school will want to make the decision as to which system they manage class lists in.