Přístupnostní navigace
E-application
Search Search Close
Master's Thesis
Author of thesis: Ing. Michal Zavadil
Acad. year: 2024/2025
Supervisor: Ing. Jan Fiedor, Ph.D.
Reviewer: Ing. Ondřej Vašíček
Static and dynamic software analysis tools are well-established ways to ensure higher software quality. Static tools spot errors in the source code itself, while dynamic tools execute the program and detect issues that static methods identify with difficulty. Unite is an adapter that transforms the standard command-line interface of analysis tools into an OSLC-compliant API. The OSLC standard ensures an easy interface integration into an existing software lifecycle management toolset. This thesis aims to create a web tool that is able to manage multiple Unite instances, thereby running multiple analyses in parallel. The manager has a backend server that monitors the instances and balances the load, ensuring the fastest analysis completion and balanced utilization of resources. Additionally, the manager provides a web user interface that serves to create requests conveniently and supports common use cases by minimizing user interaction and by prefilling known parameters. The common actions include SUT re-registration and analysis rerun.
software analysis, software verification, static analysis, dynamic analysis, OSLC, OSLC Automation, Unite, web application, Svelte, Express.js, load balancing, UI/UX
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. Komise se na základě posudku oponenta, hodnocení vedoucího a přednesené prezentace rozhodla práci hodnotit stupněm A - výborně.
Language of thesis
English
Faculty
Fakulta informačních technologií
Department
Department of Intelligent 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. Jan Fiedor, Ph.D.
Jedná se o velmi kvalitní práci jak po stránce implementace, tak z pohledu technické zprávy. Implementovaný nástroj je plně funkční a navíc obsahuje podstatná rozšíření nad rámec zadání. Výsledky práce budou v brzké době využity jak výzkumnou skupinou VeriFIT, tak společností Honeywell.
S přihlédnutím k výborným dosaženým výsledkům navrhuji zvážit ocenění práce.
Cílem práce bylo vytvořit nástroj zjednodušující správu a spouštění analýz transformovaných pomocí nástroje Unite do podoby webových služeb vyhovujících specifikacím OSLC. Práce vychází ze staršího webového klienta pro Unite, kterého obohacuje o podporu vícero instancí nástroje Unite, umožňuje vyvažování vytížení jednotlivých instancí (load balancing), a poskytuje mnoho akcelerátorů časově náročných úloh uživatelů jako jsou opětovné exekuce analýz s novými verzemi analyzovaného software.
Práce vyžadovala studium a pochopení několika rozsáhlých OSLC specifikací využívaných pro interakci existujícího webového klienta pro Unite se samotným nástrojem Unite, včetně detailního prostudování fungování těchto nástrojů pro potřeby jejich úspěšného rozšíření. Práci proto hodnotím jako náročnější.
Praktická část práce byla dokončena s dostatečným předstihem a ve zbylém čase ještě obohacena o výrazné rozšíření. Technická zpráva byla sepisována již v průběhu implementace a průběžně konzultována s vedoucím. Všechny připomínky bylo zapracovány do finální verze technické zprávy.
Student navíc nad rámec zadání implementoval dynamické vyvažování vytížení (dynamic transfer), kdy mohou být analýzy již čekající ve frontě na jedné instanci nástroje Unite přesunuty na jinou, aktuálně nevytíženou, instanci nástroje Unite. Předpokládá se brzké nasazení nástroje ve společnosti Honeywell, kde řada nástrojů pro analýzu je již transformována nástrojem Unite.
Student využil jak doporučenou literaturu, tak si samostatně vyhledával další relevantní a potřebné zdroje.
Student byl velmi aktivní a své řešení pravidelně konzultoval. Přicházel jak s vlastními nápady na vylepšení, tak implementoval funkcionalitu požadovanou společností Honeywell. Na implementaci začal pracovat s výrazným předstihem a výsledkem je nástroj produkční kvality.
Grade proposed by supervisor: A
Reviewer’s reportIng. Ondřej Vašíček
Text práce je velmi kvalitní a obtížnější zadání bylo splněno s rozšířeními. Výstup práce poskytuje velmi užitečnou funkcionalitu a má potenciál pro praktické využití. Celkově práci hodnotím jako výbornou stupněm A.
Evaluation level: zadání splněno a práce obsahuje podstatná rozšíření
Zadání požadovalo pouze správce, který bude schopen komunikovat s více instancemi nástroje Unite a rozdělovat mezi ně úlohy. Za rozšíření nad rámec zadání považuji řadu nově přidaných funkcionalit pro ulehčení práce uživatele: přeregistrování SUT, znovuspuštění analýzy, násobné spuštění analýzy, agregace výsledků a automatické přesouvání SUT.
Evaluation level: je v obvyklém rozmezí
Práce je dobře strukturovaná a pochopitelná. Nemám žádné výhrady.
Práce je psána velmi dobrou a bezchybnou angličtinou. Nenarazil jsem na žádné překlepy nebo jazykové problémy.
Z typografického hlediska také bez problémů.
Citovány jsou všechny relevantní zdroje a jsou citovány vhodným způsobem.
Bibliografie je vysázena dobře až na chybějícího autora u záznamu [1].
Výstup práce je funkční, poskytuje dobrou funkcionalitu a byl dostatečně otestován. Uživatelské rozhraní přehledně poskytuje všechny potřebné informace a řadu užitečných informací navíc. Manager podporuje vyrovnávání zátěže (load balancing) napříč instancemi adaptéru Unite statickým rozdělováním ale navíc i dynamickým přesouváním úloh.
Je vidět, že student věnoval řešení značné úsilí a pečlivost.
Implementovaný správce má velmi dobrý potenciál pro praktické využití. Aktuálně se stal nejpraktičtějším klientem pro uživatelskou interakci s nástrojem Unite. Navíc je zde potenciál i pro praktické nasazení ve firmě Honeywell.
Evaluation level: obtížnější zadání
Považuji za spíše obtížnější zadání, jelikož je netriviální seznámit se se standardem OSLC, souvisejícími technologiemi a dostupnými nástroji.
Grade proposed by reviewer: A
Responsibility: Mgr. et Mgr. Hana Odstrčilová