Local API - Timetable Concepts
Updated 29/08/2023
Background
NOVA provides the SIMS timetable management facilities and this takes data from SIMS and allows the timetable to experiment with timetable options before settling on an appropriate timetable model. This is then implemented in SIMS. At that point the need to understand the complexities of timetable design is reduced because SIMS has no concepts of bands / blocks and other mechanisms used in timetable design. As such this module begins and ends with the timetable in SIMS and partners wishing to learn more about NOVA and timetabling design may wish to attend other courses provided by ESS for timetablers.
Typically all secondary schools will have a time table, some middle schools and larger primary schools may have a timetable and most primary schools do not have a formal timetable recorded in SIMS.
Timetable Structure
Timetable Periods
The basic unit of a timetable is a period. This is a block in time that repeats over a timetable cycle. A time table period is an ‘Event’ in the SIMS system.
Timetable Days
A timetable is comprised of a set of timetable days. On that day a set of timetable periods will be scheduled
From a SIMS Perspective, it is assumed that all of the periods exported from NOVA are ‘teaching periods’. NOVA does have the concepts of non-contact times which are kept in NOVA.
Additionally it is assumed that there will be a fixed number of periods for every timetable day.
Our example shows a 2 week timetable with ‘Blue’ week 1 and ‘Green’ week 2.
Please note that timetablers have been known to be ‘creative’ and it is conceivable that on a scheduled sports afternoon, period 4 say may have no timetabled lessons. Period 4 cannot be ‘removed’ even if it is not formally used.
Multiple Time Tables
Timetablers have had the opportunity to run multiple time tables in SIMS for some years, the mechanism was simple enough:
Lower School: Periods 1(9am) to Period 6(3pm)
Upper School: Periods 7(9am) to Period 13(4pm)
The downside of this is that time lines in SIMS typically looked odd and timetable printouts often used either one half of the page or the other. Recent Changes to SIMS have allowed the import of more than one time table and the correct display of timetables where this is done. Data exchange with SIMS is unaffected.
If a partner timetable system’s wants to import a multiple time table the school would need a SIMS license for multiple time table even though the formats of the import files are the same.
Timetable Cycles
There will be a fixed number of timetable days defined for each a timetable cycle. The most common is a 5 day timetable with timetable days called ‘Monday’ to ‘Friday’ or (‘Mon’ – ‘Fri’). Typically pupils have a better chance of remembering which timetable day it is when this configuration is used! (No guarantees though…). The second most common format is a 10 day cycle where days are Mon1 to Fri2 and usually these timetables will have a significant number of similarities between ‘Week 1’ and ‘Week 2’. Less commonly, but have and are being used are 7 day timetables (often boarding schools but week day based) and then other numbers of days. SIMS will work quite happily with say an 8 day timetable and partner’s interfacing with SIMS would be expected to cope with ‘non-standard’ timetables.
Classes
A class is a group of students assembled for an education (academic) purpose.
Classes have a unique identifiers ‘BasegroupID’ and ExternalID.
Classes have a short name (Editable) and a description (Editable) and a ‘Code’ that is assigned at creation – typically it is the same as the short name and unique! The code is not editable and this can cause problems if the code is used when short name should have been!
Classes are a specific group type (‘ACAD’).
Class Memberships
In SIMS classes (all groups for that matter) will have a set of dated memberships. This can lead to confusion because a student may be a member of a class multiple times but the date ranges should not overlap.
Field |
Value |
BaseGroupId |
43 |
StudentID |
99 |
Start |
01/01/2010 |
End |
01/04/2010 |
Timetable Model
A Timetable Model is the implementation of a set of classes for a timetable cycle. It will have a start and an end date. It is therefore quite possible that a school may have a different timetable model for each term or one per year. It is also possible that the timetable model may be amended if a key member of staff leaves or returns. There is also a possibility that a school may not have a timetable model for any given date range, typically the summer holiday but other variations are theoretically possible.
Importantly a timetable model is not automatically connected to a calendar day. Hence although a timetable cycle is in force for a period that includes say today, there is nothing to say that the current timetable day is ‘Monday’ even if today happens to be a Monday.
The Application of a Timetable
There is a routine in SIMS which allows the mapping of the timetable days within the model to the actual calendar days.
Events and Event Instances
A timetable period is a calendar event in SIMS. So there will be one and one only ‘Period 1’ for timetable cycle ‘Autumn Term Timetable Model’.
When the timetable is applied as above, 2 event instances will be created for ‘Monday Period 1’ one for 19/04 and one for 22/04. Obviously event instances would be created for each day for which the timetable is applied.
Cur Class Periods
For any given Monday Period 1 on say 19/04, there will be a set of Cur Class Periods. One for each class taught in that period by a given teacher. It is common for lessons to have more than one member of staff allocated. In this case there will be multiple ‘cur class period’ records. Each cur class period has its own ID and it is this entity that is linked to a lesson attendance mark to identify what activity and period of time the mark applies to.
Lesson Monitor is dependent on the identification of the correct cur class period record in order to avoid conflicting marks. This is because if Mr Jones says that Fred is ill and Mrs Smith says that he is present then clearly one of these is wrong. If a mark was written for the same cur class period then the mark would overwrite as intended. The consequences of this will be covered further in the Lesson Attendance Module.
Timetable exceptions
In the real world, timetables also have exceptions where say a student studying French is ‘French’ and may only need part of the French lessons scheduled. However the same student may need additional help with their English. This would apply on a per pupil basis and would be recorded as a timetable exception.
In this case the student would still be a member of the French Group but may also be a member of the English Group (if so they would likely need further timetable exceptions for this group assuming that they did not attend all the lessons for the group.)
The calls to SIMS Partner APIs to get timetables will factor in any resolved clash (or time table exception). Where clashes are not resolvable such as is often the case with instrument lessons, both lessons would be shown on the time table and returned via APIs.
Guide for Testers
Background
Recent changes to Attendance Marks have highlighted the need to test partner applications against unusual time table scenarios. The scenarios in question are:
- Multiple teachers for a class
- Multiple rooms for a class
- Multiple teachers and rooms for a class
By unusual we simply mean that most lessons typically have 1 teacher and 1 room. There may be few or many examples of the multiple configurations above depending on how the school chooses to operate.
Creating Multiples
Go to: Focus | Student [Pupil] | Student [Pupil] Details
Pick a student
Click on the Timetable link on the right hand side of the page.
Click on a lesson of your choice and look at the top right to get the class code.
In this case: 10y/Sc2
Editing rooms and teachers
Go to: Focus | School | Edit Lesson Staff and Rooms
- Search for the above lesson.
- Select one of the periods
- Uncheck the restrict date range option.
- Press Ok
- Press Yes
- Press the Add Teacher Button
- Press Save
- Click on Browse
- Select the second lesson
- Press Add room
- Pick a room
- Save
- Browse
- Pick the 3rd period
- Add 3 teachers and 3 rooms
- This will give all 3 ‘unusual’ cases:
- Class with multiple teachers
- Class with multiple rooms
- Class with 4 teachers in 4 rooms
Student’s updated time table
Double Click on the red numbers and a popup will show the classes for the lessons.
Conclusion
We had hoped to show examples within the training data but after mulling it over, it is so simple to set up that it will likely be easier to test if the partner was to create the scenarios themselves.
The examples took at most 5 minutes to create but longer to document the process.