Organizacja roku szkolnego, wbrew pozorom, nie jest wcale łatwym zadaniem dla dyrekcji szkoły. Szkoła ma narzucony limit etatów do wykorzystania w danym roku szkolnym i tak musi poprzydzielać godziny dydaktyczne nauczycielom aby tego limitu nie przekroczyć. W rzeczywistości szkoła prowadzi więcej godzin zajęć dydaktycznych niż to wynika z limitu gdyż dopuszcza się nadgodziny, które nie wchodzą w limit etatów w przypadku nauczycieli pełnozatrudnionych. Oczywiście liczba nadgodzin na nauczyciela również podlega limitom. Kolejne komplikacje wynikają z tego, że nauczyciele pełnozatrudnienie i niepełnozatrudnieni traktowani są w inny sposób.
Do realizacji tego zadania idealnie nadaje się relacyjna baza danych. Tu naturalnym wyborem jest PostgreSQL gdyż jest on najlepszym silnikiem relacyjnych baz danych w świecie Open Source.
Do realizacji backendu wybrałem framework Laravel 8.x, a frontend jest napisany w HTML5 z wykorzystaniem frameworku Bootstrap 4.x.