O Szkole
Zarządzanie szkołą z poziomu EXCEL/VBA jest nie lada wyzwaniem.
Jednym z głównych problemów, z którym mierzy się każda instytucja tego typu, jest właściwe ułożenie planów lekcji. Wyzwanie jest tym większe im bardziej rozbudowana jest struktura szkoły.
Jednym z moich zaufanych Klientów jest Szkoła Policealna KADRA.
W KADRZE uczy się ponad czterystu uczniów podzielonych na około dwadzieścia klas. Oprócz szkoły stacjonarnej (dziennej i wieczorowej) zajęcia odbywają się tam w trybie zaocznym. W każdym semestrze zatrudnionych jest kilkudziesięciu nauczycieli.
Problemy Do Rozwiązania
Przy tak rozbudowanej strukturze, organizacja zajęć staje się dla Dyrekcji sporym wyzwaniem. Najważniejszym problemem, z którym musieliśmy się zmierzyć było właśnie stworzenie aplikacji do zarządzania zajęciami i właściwe ułożenie planów lekcji.
Siatka Zajęć
Każdy kierunek studiów ma przypisaną przez Ministerstwo Edukacji Narodowej tzw. siatkę zajęć. Jest to odgórnie narzucona lista przedmiotów z liczbą godzin na semestr/tydzień.
Pierwszym wyzwaniem było więc zaplanowanie zajęć tak, aby liczba godzin lekcyjnych zgadzała się z narzuconą odgórnie siatką zajęć. Do tej pory, aby spełnić ten warunek, operator programu musiał na bieżąco korygować układanie planu lekcji.
Aby ułatwić to (i inne), zadania zaprojektowałem rozbudowany formularz.
Aplikacja pozwala najpierw wybrać klasę, a następnie przedmiot. Po prawej stronie formularza, operator programu otrzymuje informacje z numerami tygodnia i liczbą już dodanych lekcji. Dzięki temu może łatwo wychwycić ich niedobór lub nadmiar. W efekcie może skorygować grafik, tak aby częstotliwość zajęć zgadzała się z narzuconą siatką godzin.
Przykładowo, dla zajęć z przedmiotu Techniki pracy w gabinecie dentystycznym MEN narzuca 6h/tyg (96h/semestr). W sekcji Częstość zajęć widzimy, że 12h zostało dodanych nadmiarowo.
Koncert Życzeń
Większość nauczycieli prowadzi własne biznesy i zgadza się pracować tylko w wybranych terminach.
Jak zatem uwzględnić fakt, że Pan Jan Kowalski może pracować tylko w poniedziałki przez cały dzień, we wtorki do godz. 11:00 i w środy po godz. 12:30? A Pani Anna Nowak może pracować tylko w piątki i weekendy (ale w lutym nie będzie jej przez dwa tygodnie, a w marcu zamiast piątków będą to czwartki).
Każdy nauczyciel ma swoje „życzenia” i należy je uwzględnić przy układaniu planu lekcji.
Ten bardzo trudny z pozoru temat okazał się łatwy do rozwiązania… W dedykowanym arkuszu operator wstawia znak X w odpowiedniej komórce (przecięcie nazwiska i terminu zajęć) i jest to traktowane jako planowana absencja belfra w podanym terminie.
Przy próbie dodania zajęć, w terminie nieobecności, program wyświetla komunikat ostrzegawczy lub blokuje możliwość dodania zajęć.
Kolizja Terminów
Oczywiście musimy uważać na sytuacje, w których nauczyciel ma już przypisane zajęcia z inną klasą w tym samym terminie. Aplikacja musi zgłaszać błąd lub ostrzeżenie przy próbie dodania takich zajęć. Nauczyciel przecież się fizycznie nie rozdwoi.
Jeśli belfer ma już przypisane inne zajęcia w tym terminie – program pokaże, z którą klasą. Dzięki temu operator programu może wprowadzić zmiany w planie, aby uniknąć kolizji.
Kolizja Sal
Podobnie jak w poprzednim punkcie, tu również może wystąpić kolizja. Lecz tym razem nie terminów, a sal. Program pokazuje, że w danym terminie wybrana sala jest już zajęta przez inną klasę i nie można w niej przeprowadzić zajęć.
Dodatkowo, program wskazuje, czy sala jest wystarczająco duża aby pomieścić całą klasę.
Pięciodniowy Tydzień Pracy
Zgodnie z prawem, nauczyciel może mieć zajęcia maks. pięć dni w tygodniu – oznacza to więc, że powinien mieć przynajmniej dwa dni wolnego.
Wolna Niedziela w Miesiącu
Drugim przywilejem nauczyciela, według istniejących regulacji prawnych, jest przynajmniej jedna wolna niedziela w miesiącu.
Raporty Dla Uczniów i Nauczycieli
Oprócz złożonej sekcji poświęconej zarządzaniu zajęciami, program tworzy spersonalizowane raporty dla uczniów i nauczycieli.
Można je generować w trzech okresach: semestralnym, miesięcznym i tygodniowym.
Istnieje tutaj ogromna elastyczność, która pozwala szybko utworzyć potrzebne raporty – bez konieczności tworzenia plików dla wszystkich nauczycieli/uczniów.
W dwóch ostatnich przypadkach operator może łączyć ze sobą okresy np. przygotować plan zajęć dla nauczyciela X na pierwszy kwartał roku lub plan zajęć dla klasy Y na pierwsze dwa tygodnie semestru.
Wszystkie raporty są zapisywane do plików XLSX i PDF do odpowiednich katalogów.
Cała operacja trwa maksymalnie kilkanaście sekund.
Czas Pracy i Wymiar Zatrudnienia
Zarządzanie szkołą to nie tylko zarządzanie zajęciami…
Program posiada specjalny szablon z ewidencją czasu pracy, do którego zaczytuje dane z planu lekcji. Przetwarza je i tworzy gotowy do wydruku miesięczny raport roboczogodzin dla każdego nauczyciela.
Program pomaga także w obliczeniach dotyczących wymiaru zatrudniania nauczycieli.
Wiedząc ile godzin dydaktycznych (60min) nauczyciel przepracuje w semestrze, łatwo jest wyliczyć godziny lekcyjne (45min) i w efekcie wysokość etatu.
Raporty mogą być szczegółowe i pokazywać te wyniki w rozbiciu na:
- Typ szkoły (dzienna, wieczorowa, zaoczna)
- Klasy
- Przedmioty
Zastępstwa
W trakcie semestru często dochodzi do zmian personalnych dotyczących nauczycieli. Zwykle dotyczą one przejściowej nieobecności belfra (L4, UŻ, UW) lub całkowitej rezygnacji ze współpracy.
W takiej sytuacji konieczne jest zarejestrowanie zastępstw. Program pozwala na ich edycję, tak aby nadążyć za dynamicznie zmieniającą się sytuacją.
Wstążka
Oprócz formularzy Userform, sterowanie aplikacją odbywa się poprzez dedykowaną wstążkę.
Pozostałe Informacje
Czas realizacji: 6 miesięcy
Rok realizacji: 2018-2019 + 2020 (moduł do zarządzania frekwencją)
Skala trudności: 10/10
Referencja
Projekt zakończył się sporym sukcesem, więc Szkoła zleciła mi do wykonania dodatkowy moduł do statystyk i raportowania frekwencji uczniów – a także – modyfikację aplikacji do zarządzania księgą ucznia.