Skip to main content

Data flow

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
  • Class-lists
  • Date-based timetable ('daily variations')
  • Calendar based events (exams, PD, excursions)
  • Student attendance

Flow

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:

  • liss.get<objects>()
  • liss.publish<objects>()

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 CallPush (To SIS)Pull (From SIS)RPC function name
TeachersYYliss.getTeachers
RoomsYYliss.getRooms
ClassesYYliss.publishClasses
TimetableYYliss.publishTimetable
TimetableStructures(F?)Yliss.getTimetableStructures
Class MembershipYYliss.getClassMembership & liss.publishClassMembership
StudentsYYliss.getStudents
Student FamilyYYliss.getStudentFamilies
Daily data (excursions, room swaps etc)Y(F?)liss.publishDailyData
Bell times/cycle structureYYliss.getBellTimes & liss.publishBellTimes

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.