Informační systém pro podporu výuky informatiky
Edu Stack IS – edukační sandbox, ve kterém se žák stává správcem školy
Petr Vích
Obhajoba bakalářské práce · B IT
Vedoucí práce: PhDr. Jakub Mazuch
KITTV, Pedagogická fakulta UK · září 2026
Dobrý den, jmenuji se Petr Vích a představím svou bakalářskou práci Informační systém pro podporu výuky informatiky. Výsledkem je Edu Stack IS – edukační informační systém, ve kterém žák není jen uživatel, ale správce fiktivní školy. Prezentace má 10 minut: východiska, cíle, tři didaktické principy, krátce architektura, ověření ve výuce a limity.
Myšlenka není nová – chyběla ale realizace
Literatura: školní IS jako téma výuky (2007)
Dostál (2007) popisuje školní informační systémy jako integrovanou agendu školy – matriku, klasifikaci, rozvrh, komunikaci.
V této linii chybí nástroj, do kterého by měl žák plný přístup a mohl v něm sám spravovat data, role a oprávnění. Přesně tuto mezeru práce vyplňuje.
Vzor, ne konkurence: Bakaláři, EduPage…
Komerční školní IS beru jako referenční rámec funkcí, nikoli jako srovnávací cíl.
Důvod je didaktický: žáci školu důvěrně znají – mají rozvrh, známky, omluvenky. Nemusím vysvětlovat doménu, mohu rovnou ukazovat, jak IS uvnitř funguje.
Východisko 1: téma školního IS ve výuce najdeme v literatuře už v roce 2007 (Dostál) – není to nový nápad, ale v české praxi chyběl nástroj, kde má žák plný přístup. Východisko 2: komerční školní systémy jsem si vzal jako VZOR, ne jako konkurenci. Žáci – i ti mladší – vědí, jak škola funguje, takže IS mohu vysvětlovat na známém příkladu.
Cíle práce
1
Vymezit kategorii
Odlišit edukační IS od komerčních provozních systémů i od obecných výukových platforem (analýza podle 4 kritérií).
2
Navrhnout prototyp
Doménově věrný škole, otevřený, bezpečně resetovatelný, přístupný ve třech vrstvách hloubky; doplnit pracovní listy.
3
Ověřit ve výuce
Zjistit, zda navržené úlohy vedou k pochopení rolí, oprávnění a datových toků.
Výzkumná otázka: Lze řízenou simulací správy školy přivést žáka od pasivního používání IS k porozumění jeho rolím, oprávněním a datovým tokům?
Tři dílčí cíle: vymezit kategorii edukačních IS; navrhnout prototyp naplňující tuto kategorii včetně pracovních listů; ověřit ho ve výuce. Výzkumná otázka: lze simulací správy školy dovést žáka od používání k porozumění rolím, oprávněním a datovým tokům.
Software je pomůcka, těžiště je didaktické
Hlavní text práce je pedagogický: role, procesy, úrovně, úlohy. Technologie jsou vyčleněny do příloh (uživatelská příručka A, technická příloha B).
Komerční ŠISzapamatovat / porozumětžák čte známku, kterou eviduje někdo jiný
aplikovat / analyzovatžák zakládá třídu, řeší kolizi v rozvrhu
Edu Stack IShodnotit / tvořitžák navrhuje modul, čte ER diagram, volá API
Posun po Bloomově taxonomii: od uživatele k modeláři a správci
Nejde o technickou práci. Software je pomůcka; hlavní text je didaktický a technika je v přílohách. Pedagogické jádro: posun po Bloomově taxonomii. V komerčním systému žák jen čte. V Edu Stack IS aplikuje a analyzuje (založí třídu, řeší kolizi) a na SŠ hodnotí a tvoří (navrhne modul, čte ER diagram).
Chyba je přirozená – když se s ní pracuje, učí
Jen fiktivní data
Žádné reálné osoby, žádné GDPR riziko. Cvičnou školu vygeneruje učitel jedním klikem (tisíce záznamů).
Reset kdykoli
Každá třída má vlastní izolovanou instanci (multitenance). Po hodině se vrátí do výchozího stavu – beze stopy.
„Zkus to rozbít“
Omylem smazaný žák nebo záměrně vyvolaná kolize v rozvrhu je materiál k diskusi, ne provozní problém. Bezpečný reset dělá z chyby úlohu.
Sandbox je podmínka experimentu: bez něj nelze žáka vyzvat, ať systém záměrně „rozbije“ – a právě to nejlépe odhaluje, jak funguje.
Druhý princip: práce s chybou. Jen fiktivní data, která lze kdykoli přegenerovat; každá třída má vlastní instanci s resetem. Když žák něco omylem smaže – nebo schválně v rámci úkolu – nic se neděje; naopak: proč to šlo smazat? kdo to mohl? co se ztratilo? V pilotáži se to potvrdilo – záměrná kolize v rozvrhu byla tématem diskuse.
Jeden systém pro všechny – mění se jen kompetence
1. stupeň ZŠUživatelská vrstva
Role jako pohled: přihlásím se jako žák, učitel, ředitel – co vidím a co smím? Zápis jedné známky, diskuse o odpovědnosti.
2. stupeň ZŠKonfigurační vrstva
Struktura jako řemeslo: založení třídy, předmětu, rozvrh s detekcí kolizí, AI asistent, otázka impersonace.
Střední školaVývojářská vrstva
Systém jako platforma: ER diagram, REST a MCP API, vlastní skript, návrh nového modulu, šifrování a anonymizace.
Spirálové kurikulum: tatáž známka nebo rozvrh se vrací v každém stupni na vyšší úrovni abstrakce. Žák, který dnes klikne na známku, ji za pár let přečte ze svého skriptu – a pozná, že je to tatáž věc.
Třetí princip: jeden plnohodnotný systém se třemi vrstvami hloubky. 1. stupeň pozoruje – role jako pohled. 2. stupeň spravuje strukturu. SŠ jde pod kapotu – ER diagram, API, vlastní modul. Mění se kompetence žáka v čase, systém zůstává. Podle stupňů existují tři pracovní listy s klíčem pro učitele.
Co žák v systému potká: role a datové domény
Šest rolí – každá je vzdělávací příležitost
- Systémový administrátor – provoz pro více škol, tajné klíče
- Ředitel – pohled shora, bílá kniha
- Zástupce ředitele – rozvrh, suplování, kolize
- Učitel – známky, třídní kniha – odpovědnost za data
- Rodič – co a komu systém ukazuje
- Žák – RBAC „zdola“
Osm datových domén – každá má svou otázku
IdentitaJak systém ví, kdo jsem?
Akademická strukturaJak je škola organizována v čase?
Úvazky a prostoryKdo a kde učí?
Rozvrh a třídní knihaCo se děje v hodině?
Docházka a klasifikaceJak měříme výsledky?
Plánování a materiályJak učitel plánuje?
KomunikaceJak škola propojuje lidi?
Systém a AICo běží na pozadí?
Šest rolí, každá učí něco jiného. Databáze má přes 40 tabulek; didakticky rozdělena do 8 domén, z nichž každá odpovídá jedné výukové otázce – učitel postupuje doménu po doméně. Klíčové: vazby jsou viditelné – nový předmět se promítne do rozvrhu, klasifikace i úvazku.
Jak je systém postavený (stručně)
Prohlížečžák · učitel · rodič
➜
FrontendReact + Vite · Tailwind
Cloudflare Pages
➜
Backend REST APINestJS · TypeScript
RBAC guard · audit
➜
SQLitečisté SQL
better-sqlite3
Vrstva AI je záměrně mimo jádro – žák vidí, že AI je oddělená služba s vymezenými oprávněními, ne kouzelná část databáze.
MCP servernástroje pro AI agenty
SSE · jen loopback
➜
LLMGemini, OpenAI
- Monorepo: backend, frontend i MCP na jednom místě – čitelné pro SŠ
- Multitenance: jedna instance, libovolně škol, izolovaná data
- Cloud (Fly.io + Cloudflare) i lokální běh bez internetu
- Hesla Argon2, citlivé sloupce šifrované, SSO Google/GitHub/Microsoft
Jen rychle, detaily do dotazů. React frontend, NestJS backend s REST API, RBAC guardem a auditem, SQLite s čistým SQL (better-sqlite3). AI je oddělená vrstva – MCP server vystavuje nástroje jazykovým modelům, běží jen na loopbacku. Monorepo je čitelné pro středoškoláky, multitenance dává každé třídě vlastní školu, vše lze spustit lokálně bez internetu.
Ověření ve výuce: 9. třída, 16 žáků, jedna hodina
Role zástupce ředitele a učitel · tři pracovní listy (matrika, rozvrh, AI asistent) · dotazník + řízená diskuse
15 / 16vysvětlilo (aspoň částečně), proč žák nevidí stejná data jako učitel
14 / 16chce v systému pracovat i v dalších hodinách
9,5medián hodnocení vzhledu (škála 1–10)
9,0medián snadnosti ovládání (škála 1–10)
Co žáky bavilo
Známky (8 zmínek) a AI asistent (6) – „učesání“ slovního hodnocení bylo nejatraktivnější a zároveň otevřelo češtinu i etiku.
Co se ukázalo
13 žáků se přihlásilo hned; žádný pád systému; dva věcné podněty (editace hodnocení, signalizace čekání na AI); jedna protestní odpověď v datech ponechána.
Jedna hodina, 16 žáků 9. třídy, role zástupce ředitele a učitel, tři pracovní listy. Klíčové číslo: 15 z 16 aspoň částečně vysvětlilo, proč každá role vidí jiná data – RBAC pochopili prožitkem. 14 z 16 by chtělo pokračovat. Vzhled 9,5, snadnost 9,0. Technicky: 13 přihlášení hned, žádný pád, dva věcné podněty.
Zkušenost z hodiny – pohled začínajícího učitele
Mentoroval jsem dospělé, roky vedl oddíl ve skautu – ale hodina s deváťáky byla moje první výuka dětí ve škole.
Systém plní, k čemu byl navržen
Žáci se přihlásili, pracovali s matrikou, známkami i AI a v diskusi vysvětlili oprávnění.
Jedna hodina nestačí na plný potenciál
Třída na tento styl práce není zvyklá; víc času zabralo vysvětlování než samotné úlohy.
Žáci se báli klikat
Obava „abych něco nezkazil“ všechno protahovala – přesně to, co má sandbox odbourat. Chce to čas a opakování.
Poučení pro metodiku
Začít kratší úvodní hodinou o principu sandboxu, úlohy 2. listu (rozvrh) přesunout do další hodiny.
Osobní část. S výukou dětí jsem neměl zkušenost. Systém plní, k čemu byl navržen. Ale za jednu hodinu se plný potenciál využít nedá: třída nebyla zvyklá na tento styl, vysvětlování zabralo víc času než úlohy. Žáci se báli klikat, aby něco nezkazili – paradox: sandbox je tu proto, aby se bát nemuseli, ale tu jistotu si musí nejdřív odžít. Poučení: úvodní hodina o principu „nic nezkazíš“ a rozdělení úloh do více hodin.
Závěr
- Vymezena nová kategorie: edukační IS – doménově věrný, otevřený, sandboxový, vícevrstvý
- Funkční prototyp Edu Stack IS + tři pracovní listy s klíčem pro učitele + dotazníky
- Pilotáž potvrdila: prožitek role vede k pochopení oprávnění; simulace je srozumitelná a motivační
- Další rozvoj: pilotáže na SŠ a 1. stupni, více škol, listy k bezpečnosti a GDPR, mobilní rozhraní, komunita učitelů
- Kód je otevřený na GitHubu (github.com/edustack-is) a k systému vznikl doprovodný web is-edustack.org
Děkuji za pozornost. Informační systém nemusí být ve škole jen administrativní nutnost – může být pomůckou, na které si žák digitální svět sám postaví.
Shrnutí: vymezil jsem kategorii edukačních IS, postavil prototyp s metodikou a ověřil ho ve výuce; pilotáž potvrdila hlavní hypotézu. Další rozvoj: SŠ a 1. stupeň, více škol. Kód je otevřený na GitHubu pod organizací edustack-is a k systému jsem připravil doprovodný web is-edustack.org s dokumentací pro učitele. Děkuji za pozornost, rád odpovím na otázky.
Limity práce a reakce na posudky · doplňující slide k diskusi
Ověření jen na 2. stupni ZŠ
SŠ a 1. stupeň zůstaly neověřeny. Návrh: SŠ pilotáž se 3. listem na odborné škole (ER diagram, API), 1. stupeň zkrácený list „role jako pohled“; přesný popis vzorku a podmínek.
Kurikulární analýza a rešerše
Práce staví hlavně na RVP ZV; RVP G a SOV nejsou rozebrány samostatně a mapování materiálů má typologický charakter. Beru jako podnět pro rozšíření.
Dotazník „standardizovaný“
Přesnější je vlastní strukturovaný dotazník; pedagogický dotazník byl připraven, jeho výsledky nejsou v práci prezentovány.
Rozpor v popisu MCP
Autorizace je vynucována v backendu: každý MCP nástroj volá REST API s oprávněními uživatele dané AI relace; samotná MCP vrstva guard neobsahuje. Formulaci v klíči listu je třeba sjednotit.
Otevřeně k limitům. (1) Ověření jen na 2. stupni; SŠ pilotáž na odborné škole s 3. listem, přesný popis vzorku. (2) Kurikulární analýza – hlavně RVP ZV, gymnaziální a odborné kurikulum si zaslouží samostatné zpracování. (3) Dotazník – správně „vlastní strukturovaný“. (4) MCP: autorizaci vynucuje backend – MCP nástroj volá REST API s oprávněními uživatele dané relace, MCP vrstva sama guard nemá.