Posts tagged concurrency
All school timetable softwares (apart from one ) are desktop applications which don’t allow multiple user access, e.g. you only get one license per computer, so only one user can run the application. Contrary to traditional timetable software, Prime Timetable is an innovative and modern online school timetable software that can be accessed from anywhere via Internet connection. That means that you can access it from your school, home computer or mobile. But, that’s not all: you can share your timetable with other teachers and collaborate simultaneously with all of them! Frankly, we were a bit taken by surprise that timetable collaboration has already been widely used among timetablers. We have seen scenarios where timetablers collaborate on the same timetable (!) from different countries (vacation, business trip, etc.). But how does it work?
To simulate multi-user collaboration just sign-in and open the same timetable in two tabs or browsers as illustrated in the screenshot below.
Notice that the first user has 2 more teachers added and the second has just updated Teacher 1 into “Teacher 1 – updated”. What is going to happen when the first user clicks save and then the second one does the same?
No need to bother, all changes will be properly saved and the last saved user will be synchronized with the latest changes (the owl will hoot what’s happened behind the scene). The first user will be synchronized upon the next save or open.
On the technical side, Prime Timetable uses “last save wins” concurrency model which we found suitable for timetablers. Individual entity properties are not going to be merged; instead, Prime Timetable will respect what the last timetabler had in mind, e.g. if the first timetabler set time request and at the same time the other one changed that time request along with other settings for the same teacher, all teacher’s settings would be updated as the last user saved them.
Overall, rest assured that you can freely collaborate even on the same school timetable, because all changes will be properly synchronized. Happy timetable collaboration!