Bachelor's Thesis

Configuration Management in the Local Government Voting Data Processing System

Final Thesis 2.06 MB

Author of thesis: Bc. Ondřej Červinka

Acad. year: 2025/2026

Supervisor: Ing. Jiří Hynek, Ph.D.

Reviewer: Ing. Magdaléna Ondrušková

Abstract:

This bachelor thesis addresses the issue of configuration management within an information system designed for processing municipal voting data. The primary objective was to design and implement a configuration management system for the presentation layer, developed using the React library, with an emphasis on enhancing system sustainability and extensibility. As part of the implementation, new configuration modules were integrated into the presentation layer, enabling dynamic management of visual styling, data definitions, and application routing. To ensure a strict separation of the data model from the presentation layer, components of the application and database layers were designed and implemented to facilitate the efficient storage and distribution of statistical and geographical data. The correctness and stability of the resulting solution were verified through manual testing and a suite of automated regression tests.

Keywords:

local government, parliament, software configurability, software sustainability, API, endpoint, information system, React

Date of defence

15.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ázku oponenta. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položenou otázku rozhodla práci hodnotit stupněm B.

Topics for thesis defence

  1. Bolo by možné automatizovať aktualizáciu štatistických dát z ČSÚ? Ako by ste to riešili?

Language of thesis

Czech

Faculty

Department

Study programme

Information Technology (BIT)

Composition of Committee

doc. Dr. Ing. Dušan Kolář (předseda)
doc. Dr. Ing. Otto Fučík (místopředseda)
RNDr. Marek Rychlý, Ph.D. (člen)
Ing. František Grézl, Ph.D. (člen)
Ing. Tomáš Goldmann, Ph.D. (člen)

Supervisor’s report
Ing. Jiří Hynek, Ph.D.

Student ke své práci přistupoval svědomitě, dokázal pracovat samostatně a vytvořil použitelné řešení, jehož výstupy jsou prakticky využitelné v reálném projektu. Navrhuji hodnocení stupněm A.

Evaluation criteria Verbal classification
Information about assignment

Hlavními úkoly bakalářské práce bylo navrhnout a implementovat správu konfigurací prezentační vrstvy systému pro zpracování dat z hlasování samospráv. Student musel nastudovat problematiku konfigurovatelnosti softwarových systémů a navrhnout konfigurační mechanismus pro existující aplikaci vyvinutou v technologiích TypeScript a React. Konfigurace určuje vizuální podobu stránek pro různé úrovně samospráv (obce, města, kraje apod.) a umožňuje tak snadné přizpůsobení systému konkrétnímu prostředí. Součástí práce bylo rovněž navržení a implementace částí aplikační a databázové vrstvy využívajících Python/Flask a MariaDB, které zajišťují efektivní ukládání a distribuci statistických a geografických dat. Správnost a stabilitu výsledného řešení student ověřil manuálním testováním a sadou automatizovaných regresních testů. Zadání hodnotím jako průměrně obtížné a považuji ho za splněné.

Work with literature

Student prostudoval doporučenou literaturu. Aktivně si vyhledával další zdroje týkající se zejména legislativy v oblasti samospráv a problematiky informačních systémů.

Activity during solution, consultations, communication

Student komunikoval během celého akademického roku. Konzultace probíhaly online s vedoucím práce. Student řádně plnil zadané úkoly, dokázal pracovat samostatně a byl schopen samostatně řešit netriviální problémy týkající se architektury řešení.

Activity during completion

Práce byla dokončena v termínu a mohla být dostatečně konzultována.

Publication activity, awards

Výstupy práce jsou využitelné v rámci projektu Zastupko.cz.

Points proposed by supervisor: 90

Grade proposed by supervisor: A

Reviewer’s report
Ing. Magdaléna Ondrušková

Študent navrhol a úspešne implementoval komplexné riešenie správy konfigurácií integrované do reálne nasadeného systému, pričom výsledok pozitívne ovplyvňuje udržateľnosť a rozšíriteľnosť projektu.  Navrhujem hodnotiť prácu stupňom B.

Evaluation criteria Verbal classification Points
The difficulty of the assignment

Evaluation level: moderately difficult assignment

Cieľom práce bolo navrhnúť a implementovať správu konfigurácií prezentačnej vrstvy existujúceho informačného systému slúžiaceho na spracovanie dát z hlasovania samospráv. Študent sa musel oboznámiť s existujúcim systémom postaveným na trojvrstvovej architektúre (React, Flask, MariaDB), analyzovať jeho nedostatky z hľadiska konfigurovateľnosti a navrhnúť rozšírenie pokrývajúce prezentačnú, aplikačnú aj databázovú vrstvu. Súčasťou zadania bola integrácia výsledného riešenia do reálne nasadeného systému zastupko.cz. Zadanie hodnotím ako priemerne obtížné.

Presentation level of the technical report

Práca je prehľadne členená na teoretickú a praktickú časť, pričom obe sú dobre previazané. Teoretická časť je dobre zacielená – kapitola 2 o územných samosprávach priamo motivuje doménu riešeného problému a kapitola 3 o konfigurovateľnosti informačných systémov buduje nevyhnutný technický kontext. V analytickej časti (kapitola 4) je analýza existujúceho systému (sekcia 4.2), kde študent dôkladne dokumentuje architektúru prezentačnej, aplikačnej aj databázovej vrstvy vrátane ich konkrétnych nedostatkov. Návrh (kapitola 5) je správne oddelený od implementácie – popisuje typy konfigurácií a ich vzťahy bez zbytočných implementačných detailov.

85
Formal preparation of a technical report

Formálna úprava technickej správy je na dobrej úrovni. Obrázky sú prehľadne označené a odkazované v texte, adresárové štruktúry (napr. obrázky 4.2 a 4.4) sú zrozumiteľne formátované. Celkovo práca pôsobí konzistentným a upraveným dojmom.

90
Realisation output

Navrhnuté riešenie bolo úspešne implementované. Prezentačná vrstva bola rozšírená o modulárne konfigurácie stránok, menu, smerovania a dátových zdrojov, pričom každý typ konfigurácie je striktne typovaný pomocou TypeScriptu. Obzvlášť pozitívne hodnotím automatizované generovanie TypeScript klienta z OpenAPI špecifikácie aplikačnej vrstvy (sekcia 6.2). Rozšírenie databázovej vrstvy o tabuľky pre štatistické dáta a príslušný nový API endpoint je riešené čisto a rozšíriteľne. Automatizovaná testovacia sada pokrývajúca 235 testov naprieč všetkými subdoménami a URL cestami vytvára solídny základ pre ďalší vývoj.

87
Usability of results

Výsledné riešenie bolo otestované vrámci projektu zastupko.cz

The extent to which the requirements of the assignment have been met

Evaluation level: assignment fulfilled

Extent of the technical report

Evaluation level: is within the usual extent

Work with literature

Práca cituje 58 zdrojov a vhodne zahŕňa platné zákony, prezentácie z prednášok VUT FIT (napr. [4], [5]),  aj predchádzajúce práce z FIT VUT (napr. [25], [47]). Výraznú časť tvoria online zdroje (blogové príspevky z platformy medium.com – ref. [10], [16], [42]).

80
Topics for thesis defence:
  1. Bolo by možné automatizovať aktualizáciu štatistických dát z ČSÚ? Ako by ste to riešili?
Points proposed by reviewer: 87

Grade proposed by reviewer: B

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