Přístupnostní navigace
E-application
Search Search Close
Master's Thesis
Author of thesis: Ing. Radoslav Kodaj
Acad. year: 2024/2025
Supervisor: Ing. Kristýna Zaklová
Reviewer: Ing. Jiří Hynek, Ph.D.
This work focuses on the development of a new server-side architecture for an application that displays the voting results of municipal councils in the Czech Republic. The aim is also to integrate a selected tool for API specification and its interactive documentation. For generating the API specification, OpenAPI version 3.0 was used. The resulting solution provides functional application logic, a clearer file structure, and interactive API documentation. The contribution of this work lies in creating a more modular structure, which facilitates further development and the integration of new components into the system in the future. Additionally, the new OpenAPI documentation ensures easier testability of API endpoints. The results of this work are intended to support and simplify future development efforts.
Council, self-government, application interface, RESTful API, server part of application, endpoint, API specification, architecture
Date of defence
23.06.2025
Result of the defence
Defended (thesis was successfully defended)
Grading
A
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, např. ohledně reálného nasazení implementovaného řešení. 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 A - výborně.
Topics for thesis defence
Language of thesis
Slovak
Faculty
Fakulta informačních technologií
Department
Department of Information Systems
Study programme
Information Technology and Artificial Intelligence (MITAI)
Specialization
Information Systems and Databases (NISD)
Composition of Committee
doc. Dr. Ing. Dušan Kolář (předseda) RNDr. Marek Rychlý, Ph.D. (člen) Ing. Zbyněk Křivka, Ph.D. (člen) Ing. Šárka Květoňová, Ph.D. (člen) Ing. Radek Hranický, Ph.D. (člen) Ing. Jiří Hynek, Ph.D. (člen)
Supervisor’s reportIng. Kristýna Zaklová
Student splnil všechny body zadání a vytvořil kvalitní výstupy, které budou dále využity v projektu Zastupko.cz. K práci přistupoval i přes velkou studijní zátěž svědomitě, řešení bylo řádně otestováno a byly zapracovány i náměty ze zpětné vazby. Navrhuji proto hodnocení stupněm A.
Zadání vzniklo jako pokračování projektu pro zpracování, analýzu a vizualizaci dat ze zasedání zastupitelstev. Student si prostudoval problematiku zastupitelstev a jejich hlasování, architektur serverových částí webových aplikací a možnosti specifikace aplikačních rozhraní. Dále analyzoval projekt Zastupko.cz, jeho systém a využívané technologie. Na základě toho navrhl novou architekturu serverové části systému. Implementační výstupy zahrnují nové koncové body pro veřejnou část klientské části aplikace a OpenAPI specifikaci těchto bodů. Aby bylo možné tohoto cíle dosáhnout, převedl existující entity do ORM frameworku SQLAlchemy a upravil jejich použití tak, aby místo přímého zápisu SQL dotazů využívaly abstrakce poskytované tímto nástrojem. Nad rámec zadání student připravil úpravy systému potřebné pro možnost importovat datové sady z dosud nezpracované úrovně státní správy, konkrétně pro data z Parlamentu ČR. Zadání hodnotím jako průměrně obtížné.
Závěr technické zprávy byl dopisován těsně před termínem odevzdání, nicméně obsah byl řádně konzultován a student zohlednil většinu mých připomínek.
Úpravy provedené studentem zvýší udržitelnost serverové části systému Zastupko.cz, čímž podpoří další publikační aktivity.
Student nastudoval doporučenou literaturu a aktivně vyhledával další relevantní zdroje.
Student se účastnil porad, které probíhaly v zimním semestru každých čtrnáct dní, v letním semestru každý týden. Jednotlivé kroky řešení pravidelně konzultoval, dodržoval dohodnuté termíny a na konzultace byl vždy připraven. Kromě konzultací s vedoucí komunikoval student také s Lukášem Etzlerem, který paralelně vytvářel redesign odpovídající klientské části aplikace, a do svého řešení zapracovával i jeho požadavky. Dále byl student schopen průběžně demonstrovat a komunikovat plánované změny pro hladký průběh jejich nasazení do vývojové verze systému.
Grade proposed by supervisor: A
Reviewer’s reportIng. Jiří Hynek, Ph.D.
Diplomová práce je kvalitní jak po teoretické, tak po praktické stránce. Student svými výstupy významně přispěl k reálnému projektu. Navrhuji hodnocení stupněm A.
Evaluation level: zadání splněno
Evaluation level: je v obvyklém rozmezí
Práce je logicky členěná na teoretickou a praktickou část. Kapitoly na sebe navazují. Vytkl bych, že se student místy věnuje některým (byť zajímavým) skutečnostem, které méně souvisejí s tématem práce (např. sekce 2.3).
Technická zpráva je kvalitní jak po jazykové, tak typografické stránce. Některé obrázky jsou méně kvalitní (např. obr. 3.5).
Student cituje rozsáhlé množství odborných a online zdrojů.
Výstupy studenta hodnotím kladně. Serverová část obsahuje novou přehlednější architekturu řešení. Dá se očekávat, že výrazně přispěje k větší přehlednosti a chybovosti systému.
Výsledky jsou využitelné v systému pro vizualizaci hlasování zastupitelstev projektu Zastupko.cz.
Evaluation level: průměrně obtížné zadání
Cílem práce bylo přetvořit architekturu serverové části existujícího systému pro vizualizaci hlasování zastupitelstev [1] tak, aby byl popis komunikace s databází řešen pomocí konceptu objektově relačního mapování (ORM) a popis aplikačního rozhraní směrem ke klientovi definován pomocí specifikace OpenAPI. Student se při práci inspiroval řešením diplomové práce [2], která danou problematiku řeší v rámci administračního rozhraní a rozšířil ji dále do veřejné části informačního systému. Dále řešil některé dílčí rozšíření datového modelu (např. podpora změn jmen zastupitelů apod.), čímž přispěl k robustnějšímu řešení systému. Zadání hodnotím jako průměrně obtížné.
[1] ZAKLOVÁ, Kristýna. Analýza a vizualizace dat z hlasování Zastupitelstva města Brna. Brno, 2023. Diplomová práce. Vysoké učení technické v Brně, Fakulta informačních technologií. Vedoucí práce: Ing. Jiří Hynek, Ph.D.[2] KREJČÍ, Ondřej. Správa municipalit v systému hlasování městských zastupitelstev. Brno, 2024. Diplomová práce. Vysoké učení technické v Brně, Fakulta informačních technologií. Vedoucí práce Ing. Kristýna Zaklová
Grade proposed by reviewer: A
Responsibility: Mgr. et Mgr. Hana Odstrčilová