Master's Thesis

Council Voting Management System

Final Thesis 2.78 MB

Author of thesis: Ing. Štěpán Krejčíř

Acad. year: 2024/2025

Supervisor: Ing. Kristýna Zaklová

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

Abstract:

The goal of this work was to extend the existing administration system of a voting data visualisation project by incorporating database management capabilities and general support for different types of local authorities within the system. Using the Flask framework and the React library, an extension was created to allow the creation, deletion, export and import of relational databases directly in the administration interface. The NoSQL database MongoDB was also integrated into the system, to which relational database exports are backed up. General support for other types of authorities was achieved by modifying existing components. The main benefit of this work should be easier transfer of databases between different branches of the project and reduced risk of data loss. The generalised management should allow easier integration of other types of authorities into the system.

Keywords:

information system, content management system, databases, local government, open data, Flask, React, MariaDB, MongoDB

Date of defence

23.06.2025

Result of the defence

Defended (thesis was successfully defended)

znamkaAznamka

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ě importu SQL skriptů a jemu příslušejících fází, podobu dat a přístupu k nim v databázi Mongo. 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

  1. Je prováděna periodická záloha databáze? Pokud ne, v jaké situaci by bylo vhodné něco takového provádět a jak byste to případně řešil?
  2. Bylo by možné zavést uživatelskou správu typů orgánů?

Language of thesis

Czech

Faculty

Department

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 report
Ing. Kristýna Zaklová

Student vytvořil kvalitní výstupy, které do systému přidávají možnost spravovat databáze využívané v projektu Zastupko.cz a přímo v administrační části systému vytvořit jejich import či export. K práci přistupoval 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.

Evaluation criteria Verbal classification
Informace k zadání

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 i jejich hlasování a vývoje informačních systémů. Také provedl průzkum současných redakčních systémů. Dále analyzoval projekt Zastupko.cz, jeho systém a využívané technologie. Na základě toho navrhl rozšíření administračního modulu, která se soustředila především na správu databází, jejich zálohy a sledování historie úprav. Implementační výstupy zahrnují rozšířený původní systém s novou funkcionalitou, která je volitelná. Nad rámec zadání student zajistil ve spolupráci s Bc. Radoslavem Kodajem integraci OpenAPI do administrační části serverové části aplikace, což umožnilo vytvoření kompletní dokumentace. Zadání hodnotím jako průměrně obtížné.

Aktivita při dokončová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.

Publikační činnost, ocenění

Úpravy provedené studentem zvýší udržitelnost serverové části systému Zastupko.cz, čímž podpoří další publikační aktivity.

Práce s literaturou

Student nastudoval doporučenou literaturu a aktivně vyhledával další relevantní zdroje.

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

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 pečlivě připraven. Při plnění dílčích úkolů student pracoval i nad rámec svého zadání a snažil se vždy přemýšlet v kontextu celého projektu. Kromě toho 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.

Points proposed by supervisor: 95

Grade proposed by supervisor: A

Reviewer’s report
Ing. 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 criteria Verbal classification Points
Rozsah splnění požadavků zadání

Evaluation level: zadání splněno

Rozsah technické zprávy

Evaluation level: je v obvyklém rozmezí

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

Dokument je vhodně členěn na teoretickou a praktickou část. Kapitoly na sebe vhodně navazují. Sekci 3.4 týkající se redakčních systémů by bylo vhodnější vyčlenit jako samostatnou kapitolu.

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

Dokument je na vysoké úrovni jak po jazykové, tak typografické stránce. Vytkl bych pouze občasné matoucí použití pomlček před čárkou.

90
Práce s literaturou

Student provedl rešerši značného množství odborných a online zdrojů.

95
Realizační výstup

Realizační výstup hodnotím kladně. Administrační modul byl rozšířen o nové užitečné funkce, které výrazně zlepší správu jednotlivých samospráv a jejich databází. Řešení působí použitelným dojmem.

95
Využitelnost výsledků

Výsledky jsou využitelné v systému pro vizualizaci hlasování zastupitelstev projektu Zastupko.cz.

Náročnost zadání

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

Cílem práce bylo rozšířit existující systém pro vizualizaci hlasování zastupitelstev [1], konkrétně jeho administrační část [2] tak, aby umožňoval uživatelsky spravovat jednotlivé databáze (centrální databázi a databáze samospráv) a provádět jejich zálohy a obnovy. Dále pak bylo úkolem zajistit monitorování historie úprav v administračním modulu a zobecnit práci s orgány samospráv (například zastupitelstvo nebo rada). 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á

Topics for thesis defence:
  1. Je prováděna periodická záloha databáze? Pokud ne, v jaké situaci by bylo vhodné něco takového provádět a jak byste to případně řešil?
  2. Bylo by možné zavést uživatelskou správu typů orgánů?
Points proposed by reviewer: 92

Grade proposed by reviewer: A

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