Přístupnostní navigace
E-application
Search Search Close
Bachelor's Thesis
Author of thesis: Oleksandr Musiichuk
Acad. year: 2025/2026
Supervisor: Ing. Marta Jaroš, Ph.D.
Reviewer: Ing. Radek Duchoň
This thesis focuses on the design and implementation of a module for orchestrating a task graph in the k-Dispatch system, which is used in personalized medicine to manage and run computationally demanding tasks in HPC environments. The module transforms a workflow graph template into an executable, annotated form by assigning binary files and execution parameters to its nodes for remote computing environments. The goal of the thesis was to separate and extend the orchestration logic, create a module for selecting suitable execution configurations, and integrate it into the existing architecture of k-Dispatch. The solution also includes an internal priority queue system for managing the processing of treatment plans and structured logging that enables monitoring using Grafana, Loki, and Promtail. The thesis also describes modifications to the database layer, integration of the new modules into the DispatchAndTransfer component, and the creation of a testing infrastructure. The solution was verified using unit and integration tests, including demonstration scenarios in a test HPC environment implemented using Docker and on a virtual cluster with the Slurm workload manager. The result is a modular extension of k-Dispatch that simplifies workflow preparation for execution and provides a foundation for further optimization of job scheduling.
k-Dispatch, orchestrator, workflow orchestration, task graph, HPC, priority queue, execution configuration optimization, structured logging, Grafana, Docker
Date of defence
15.06.2026
Result of the defence
Defended (thesis was successfully defended)
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
Language of thesis
Czech
Faculty
Fakulta informačních technologií
Department
Department of Computer Systems
Study programme
Information Technology (BIT)
Composition of Committee
doc. RNDr. Milan Češka, Ph.D. (předseda) doc. Ing. Jan Kořenek, Ph.D. (místopředseda) Ing. Zdeněk Materna, Ph.D. (člen) Ing. Miloš Musil, Ph.D. (člen) Ing. Martin Hrubý, Ph.D. (člen)
Supervisor’s reportIng. Marta Jaroš, Ph.D.
Bakalářská práce splnila stanovené cíle. Realizované řešení je technicky kvalitní, přehledné a dobře zdokumentované. Pozitivně hodnotím, že celý vývoj probíhal v repozitáři GitLabu a kód je otestovaný a nasazený.
Práce byla prezentována formou posteru na studentské konferenci Excel a na mezinárodní konferenci HPCSE.
Zadání práce hodnotím jako středně obtížné. Student musel nejprve proniknout do existující architektury a zdrojových kódů systému k-Dispatch, což představovalo významnou část řešeného problému. Následně bylo cílem práce modernizovat jádro systému, modulárně navrhnout třídy odpovědné za orchestraci a optimalizaci spouštění úloh a upravit práci s objekty nové databáze. Práce tematicky navazuje na výzkumné aktivity v rámci skupiny SC@FIT a má přímou vazbu na aplikace v medicínském prostředí, což zvyšuje její praktickou hodnotu.
Součástí řešení bylo také vytvoření sady automatizovaných testů pro nově vzniklé třídy a jejich integrace do procesu continuous integration (CI) v prostředí GitLabu. Tím student přispěl ke zvýšení spolehlivosti a udržovatelnosti výsledného řešení.
Textová část práce poskytuje dostatečný popis navrženého a implementovaného řešení včetně automatizovaných testů a nasazení aplikace.
Práci s literaturou hodnotím pozitivně. Práce využívá dostatečné množství relevantních zdrojů.
Konzultace ke zpracování práce probíhaly osobně. V zimním semestru se uskutečňovaly pravidelně každé dva týdny, v letním semestru pak s týdenní frekvencí. Student byl na konzultace vždy dobře připraven, dělal si vlastní poznámky a při řešení práce postupoval samostatně a systematicky. Student práci vyvíjel v repozitáři GitLab a postup práce dokumentoval pomocí systému Issues.
Student dokončil realizační část práce v požadovaném termínu, zatímco finalizaci textové části se intenzivně věnoval zejména v období před odevzdáním bakalářské práce. Verze předložená k připomínkám ještě nebyla zcela dokončena, nicméně student následně zapracoval téměř všechny vznesené připomínky a doporučení.
Práce byla prezentována formou posteru na studentské konferenci Excel 2026 a na mezinárodní konferenci HPCSE 2026.
Grade proposed by supervisor: A
Reviewer’s reportIng. Radek Duchoň
Student prokázal tvůrčí schopnosti v oblasti orchestrace úloh a integrace do systému k-Dispatch. Navrhl a vytvořil funkční řešení, které bylo i nasazeno.
Kvalita technické zprávy je na druhou stranu nižší. Chybí větší detaily implementace a algoritmů a části textů se naopak významově opakují.
S ohledem na kvalitu praktického výstupu, ale slabší úroveň zpracování zprávy, hodnotím práci známkou C.
Evaluation level: moderately difficult assignment
Zadání práce kombinuje analýzu existujícího systému, návrh nové softwarové komponenty, její implementaci, testování i nasazení. Student se musel seznámit se systémem k-Dispatch, jeho architekturou a databází, a zároveň respektovat metodiku návrhu software používanou ve skupině SC@FIT.
Stěžejní část práce spočívala v návrhu a implementaci nového modulu pro orchestraci a monitorování úloh, včetně vytvoření automatizovaných testů, kontejnerizovaného nasazení a dokumentace. Celkově lze hodnotit technickouo náročnost zadání jako odpovídající mírně náročnější bakalářské práci.
V práci chybí přiložené zadání.
Práce je členěna do 6 kapitol. Těm chybí krátké popisy, text je výhradně v podkapitolách. Kapitoly jsou v logické střuktuře začínající krátkým teoretickým úvodem, kde je čtenář seznámen s architekturou systému k-Dispatch a další řešenou problematikou. Následuje návrh aplikace, kde se mimo nutných úprav existujícího systému řeší návrh nové orchestrační vrstvy a nových tříd Orchestrator a Optimizer.
Následuje implementační část, která je místy příliš popisná, chybí mi podrobnější pohled na implementační detaily a ukázky kódu, nebo konkrétní způsob realizace algoritmů. Testování by také mohlo být rozepsáno místy detailněji, používá se zde například metrika pokrytí kódu v procentech, chybí však zmínka zda se jedná o pokrytí loc, statementů, či jinou metriku.
Obecně je však několik míst s prakticky se opakujícím sdělením, vhodnější by bylo odkazovat se např. jako "Jak již bylo zmíněno v kapitole X" a dodat pouze kratší shrnutí s potřebnými informacemi v danou chvíli, nebo naopak uvést, že bude nějaká část detailněji rozebrána později v kapitole Y.
Práce je na první pohled v pořádku, vyskytuje se však několik míst s chybějící diakritikou, pár textů přes okraj stránky, nekonzistence v užití mezery před citací (např. "Knihovny scikit-learn[18] a scikit-optimize [8]"), v případě kapitoly 4.5 je pak například vidět několik větných členů na konci řádků, které již mají být na dalším. Přítomny jsou také další drobné chyby v užití interpunkce a typografické chyby.
Realizačním výstupem práce je rozšíření systému k-Dispatch o novou orchestration vrstvu umožňující automatizované přiřazování konfigurací a výběr vhodných parametrů pro spouštění úloh. Součástí řešení jsou rovněž úpravy databázové vrstvy, prioritního plánování a monitorovací infrastruktury.
Zdrojové texty vypadají rozumně, jejich struktura odpovídá zbytku aplikace na kterou bylo navazováno. Vyskytují se však chyby v názvech, například jméno souboru "_orchestrator_parrarel.py"
Výsledné řešení je funkční, rozumně modulární a umožňující další rozšiřitelnost.
Výsledné řešení je funkční a nasazené.
Evaluation level: assignment fulfilled
Student splnil všechny body zadání.
Evaluation level: meets the minimum requirements only
Text práce je kratší s splňuje spíše minimální požadavky na rozsah.
Použitá literatura odpovídá zaměření práce a zahrnuje zdroje týkající se HPC prostředí, workflow systémů, optimalizace výpočtů i použitých nástrojů a technologií. Autor vhodně využívá také interní dokumentaci a odborné publikace související se systémem k-Dispatch.
Grade proposed by reviewer: C
Responsibility: Mgr. et Mgr. Hana Odstrčilová