Bachelor's Thesis

Digitální nástroj pro jednoduché ale robustní zjišťování prezence

Final Thesis 4.07 MB

Author of thesis: Jakub Mitrenga

Acad. year: 2025/2026

Supervisor: prof. Ing. Adam Herout, Ph.D.

Reviewer: doc. Ing. Vítězslav Beran, Ph.D.

Abstract:

Verbal roll-call attendance in a lecture of sixty students at VUT FIT takes approximately ten minutes. I designed and implemented a web application that displays a rotating QR code to the lecturer; students scan it while authenticated through VUT SSO. The application was deployed to production and used by the supervisor of this thesis in four real lectures of a single semester course. The QR code can be displayed before the official start of the lecture, and during this window most of the attending students typically register, so by the time the lecture itself begins the attendance is in practice already complete; approximately 95\% of students registered themselves without intervention. Crucially, the time to record attendance does not scale linearly with class size~-- for large auditoriums, where verbal roll-call is not a practical option, the advantage of the application is more pronounced. The contribution is a deployed and validated solution that returns lost lecture time to teachers; integration with VUT SSO and compatibility with the CSV export from the attendance module of the VUT~IS information system make the design transferable to other courses.

Keywords:

attendance, attendance tracking, lecture, QR code, rotating QR code, screenshot sharing, web application, VUT SSO, OpenID Connect, federated authentication

Date of defence

19.06.2026

Result of the defence

Defended (thesis was successfully defended)

znamkaBznamka

Grading

B

Process of defence

Student nejprve prezentoval výsledky, kterých dosáhl v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Student následně odpověděl na otázky oponenta a na další otázky přítomných. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položené otázky rozhodla práci hodnotit stupněm B.

Topics for thesis defence

  1. Jaké jsou možnosti obrany proti útoku 3., tj. videostream s QR kódem mimo výukovou místnost?
  2. Až bude fungovat VUT API docházkového modulu, jak budete řešit případnou fluktuaci studentů v předmětu (např. pozdní přihlášení do předmětu)?
  3. Bude vaše aplikace fungovat i při vyšším počtu studentů?

Language of thesis

Czech

Faculty

Department

Study programme

Information Technology (BIT)

Composition of Committee

prof. Dr. Ing. Jan Černocký (předseda)
doc. Ing. Vojtěch Mrázek, Ph.D. (místopředseda)
Ing. Aleš Smrčka, Ph.D. (člen)
Ing. Matěj Grégr, Ph.D. (člen)
Ing. Tomáš Milet, Ph.D. (člen)

Supervisor’s report
prof. Ing. Adam Herout, Ph.D.

Řešitel vytvořil velice dobře použitelné řešení reálného problému. Vytvořená aplikace byla několikrát reálně nasazena a na základě zkušeností z nasazení opakovaně iterativně vylepšována. Vytvořené řešení je tak velice stabilní a bez problémů použitelné. Je možné doufat, že dojde k reálnému integrování vytvořeného řešení do systémů VUT.

Evaluation criteria Verbal classification
Informace k zadání

Cílem práce bylo vyvinout způsob zjišťování prezence, který by mohl být využíván ve výuce na FIT/VUT. Řešiteli se podařilo navrhnout, vyvinout i prakticky nasadit aplikaci, která splňuje očekávání a je připravená pro reálné nasazení. Aplikace je do možné míry napojená na informační systém VUT – autorizace studentů probíhá přes školní autorizační systém, seznam studentů v předmětu je importovaný/exportovaný skrze soubor z/do systému VUT (API systému VUT v současnosti neumožňuje přímé napojení).

Práce s literaturou

Řešitel vyhledal a využil prameny v míře, která odpovídá zadání a povaze práce.

Aktivita během řešení, konzultace, komunikace

Řešitel pracoval velice aktivně po oba semestry a dostatečně brzo měl hotový prototyp, který bylo možné nasadit v letním semestru v předmětu UXIa. Z reálného nasazení evidence docházky studentů vzniklo množství konkrétních připomínek, které byly zapracovány a systém je tak už do značné míry "vyladěný" a velice dobře použitelný.

Aktivita při dokončování

Práce byla dokončena včas a dostatečně konzultována.

Publikační činnost, ocenění

Práce již byla nasazena v přednáškách jednoho předmětu (UXIa) a ukázala se jako funkční a užitečná. 
Vedoucí s řešitelem jednali se zástupci CVIS VUT a je možné, že práce bude zakomponována do systému Teacher a StudIS/Moje VUT. Ze strany vyučujících různých fakult existuje značná poptávka po vhodném řešení pro zjišťování prezence a vytvořená bakalářská práce je vhodným kandidátem.

Points proposed by supervisor: 95

Grade proposed by supervisor: A

Autor úspěšně nastudoval současné technologické možnosti i existující softwarová řešení v oblasti evidence docházky ve výuce. Na tomto základě následně navrhl vlastní řešení, vytvořil funkční prototyp a v průběhu vývoje ho iterativně zlepšoval. Velmi oceňuji především pečlivé dokončení tohoto prototypu, jeho prakticky ověřenou funkčnost a celkovou připravenost k reálnému nasazení v praxi. Určitý prostor pro zlepšení však spatřuji v prezentační a informační kvalitě technické zprávy, která nedosahuje tak vysoké úrovně jako samotné programové řešení.

Evaluation criteria Verbal classification Points
Náročnost zadání

Evaluation level: průměrně obtížné zadání

Prezentační úroveň technické zprávy

Text zprávy je pečlivý, odborný, čtivý, drží se tématu a logicky plyne. Obsah jednotlivých kapitol je ale často nevyvážený, v některých podkapitolách jsou uvedeny spíše stručné informace, zatímco jinde je téma rozpracováno široce. V návrhové části autor řadu postupů a konceptů popisuje spíše implementačním způsobem; kvalitě návrhu by proto prospěl o něco metodičtější přístup, kdy by byla konkrétní realizace ponechána až do implementační části. V textu se dále objevují méně vhodné, neběžné či zvláštně počeštěné výrazy, nevysvětlené zkratky, názvy proměnných či datových entit, jako například „přepošlitelná“, roster, IMEI, SSO, „claim sub“, pathloss, JWT, BOM a podobně, které by bylo vhodné pro lepší srozumitelnost vysvětlit, například v poznámce pod čarou. Určitým nedostatkem z hlediska přehlednosti při čtení je pak také umístění některých obrázků (např. 3.1 a 3.2) v textu značně daleko od samotného odkazu.

65
Formální úprava technické zprávy

Formální úprava, typografická i jazyková úroveň předložené práce jsou na velmi dobré úrovni a splňují požadavky kladené na tento typ textu. Z jazykového hlediska je práce napsána kultivovaným stylem s minimem gramatických či stylistických pochybení. Také po stránce typografie a celkového formálního zpracování je text v pořádku, působí uceleně a odpovídá standardům pro odevzdávání závěrečných prací.

85
Realizační výstup

Výsledkem práce je serverová služba a dvě klientské uživatelské aplikace s GUI, které jsou určeny pro učitele a pro studenta. Celý systém úspěšně realizuje evidenci přítomnosti studentů ve výuce na základě seznamu očekávaných studentů, jejich autentizace pomocí OpenID VUT na vlastním mobilním zařízení a využití rotujícího QR kódu. Programové řešení jako takové využívá aktuální moderní nástroje i postupy. Učitelská aplikace je navíc rozpracována mírně nad rámec původně požadované funkčnosti. Zdrojové kódy jsou strukturované a rozdělené do souborů a modulů logicky, přičemž obsahují označení autorství.

I přes celkově velmi kvalitní realizaci bych zmínil prostor pro zlepšení v několika oblastech. Navržené GUI pro učitele by mohlo o něco lépe pracovat s prostorem obrazovky, přičemž by bylo možné zvážit například využití master-detail konceptu. Zdrojové kódy obsahují komentáře pouze zcela minimálně, k lepší orientaci v nich by proto výrazně pomohlo jejich detailnější komentování. Do budoucna by autor mohl zvážit také revizi architektury celého systému, která by lépe oddělila konkrétní nasazení do prostředí VUT od samotného koncepčního jádra systému. Nasazení pro FIT VUT by pak mohlo fungovat například jako samostatný modul pro VUT SSO a API docházkového systému (které je z důvodu absence řádného VUT API nyní řešeno formou importu a exportu CSV) v mezivrstvě, jež by mapovala konkrétní API externí aplikace na vlastní attendance službu.

V rámci vyhodnocení řešení autor opakovaně testoval systém na jednom relevantním uživateli z řad učitelů FIT VUT (vedoucí práce), získané poznatky iterativně zapracovával do řešení a testoval aplikaci v reálných podmínkách výuky. Součástí byla také diskuze se studenty, během níž autor sledoval jejich pochopení a použitelnost řešení, a rovněž měřil a vyhodnotil samotný průběh nahlašování účasti studentů na začátku přednášky. Všechny provedené experimenty i získaná zpětná vazba jsou velmi užitečné pro ověření funkčnosti konceptu a případný budoucí rozvoj této služby.

95
Využitelnost výsledků

Předložená práce má kompilační charakter a přináší konkrétní praktické výsledky aplikací publikovaných konceptů. Vytvořený prototyp je plně funkční, díky iterativnímu vývoji velmi dobře reflektuje reálné uživatelské potřeby a je po technické stránce pečlivě zpracován. Výstup je víceméně připraven k reálnému nasazení v praxi. Pokud se do budoucna podaří dohodnout potřebnou revizi API informačního systému VUT u docházkového modulu, bude využití tohoto nástroje pro sledování docházky ve výuce pro univerzitu velmi přínosné a efektivní.

Rozsah splnění požadavků zadání

Evaluation level: zadání splněno

Zadání explicitně nevyžaduje návrh a realizaci GUI prototypu, přestože v doporučené literatuře jsou ze sedmi titulů čtyři zaměřeny na toto téma. Autor se nad rámec zadání věnoval také návrhu a realizaci GUI pomocí webových technologií. Prostor pro zlepšení se nabízí v procesu práce s uživatelem, který by mohl být při samotném návrhu o něco zřetelnější, jelikož systematičtější metodický přístup je patrný spíše až ve fázi testování řešení.

Rozsah technické zprávy

Evaluation level: je v obvyklém rozmezí

Všechny části technické zprávy jsou pro práci relevantní. Prostor pro zlepšení se však nachází v občasném opakování řady informací, což je patrné zejména u popisků obrázků, kde autor opakovaně uvádí značně detailní informace, které jsou již podrobně popsány v samotném textu. V rámci návrhu by pak bylo přínosné doplnit také koncepční wireframe GUI pro učitele, a to včetně bližšího vysvětlení informační struktury.

Práce s literaturou

Práce s literaturou, relevantnost pramenů i citační etika jsou na odpovídající úrovni. Vlastní přínosy jsou v textu srozumitelně odděleny od převzatých pasáží. Určitý prostor pro zlepšení se však nachází v teoretické kapitole 2.1, kde by uvedené informace a poznatky měly důsledněji obsahovat konkrétní studijní zdroj, ze kterého autor čerpal, aby byla zajištěna ověřitelnost všech uváděných faktů.

80
Topics for thesis defence:
  1. Jaké jsou možnosti obrany proti útoku 3., tj. videostream s QR kódem mimo výukovou místnost?
  2. Až bude fungovat VUT API docházkového modulu, jak budete řešit případnou fluktuaci studentů v předmětu (např. pozdní přihlášení do předmětu)?
Points proposed by reviewer: 85

Grade proposed by reviewer: B

Responsibility: Mgr. et Mgr. Hana Odstrčilová