LETAŠI, S. Analýza metrik programů v jazyce P4 [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2025.

Posudky

Posudek vedoucího

Kekely, Lukáš

Student práci věnoval velké množství času a zvládl zadanou úlohu dotáhnout do velice zdařilého konce. V bakalářské práci vytvořená implementace zaujala oficiální komunitou open-source překladače jazyka P4. S výsledkem práce byl spokojen také odborný konzultant ze společnosti Altera. Celkově tedy navrhuji hodnocení stupněm A.

Dílčí hodnocení
Kritérium Známka Body Slovní hodnocení
Informace k zadání Cílem práce bylo rozšířit oficiální referenční open-source překladač aplikačně specifického jazyka P4 o výpočet a sběr vybraných metrik ze zdrojových kódů vstupního programu. Implementované metriky měli zahrnovat nejen vhodně vybrané z obecně používaných, ale také nové metriky specificky navržené studentem pro jazyk P4. Kromě nastudování jazyka P4 spočívala složitost práce také v nutnosti zorientovat se v rozsáhlé existující implementaci překladače a potřebě identifikovat vhodný systémový způsob doplnění požadované nové funkcionality. Jedná se o firemní zadání ve spolupráci s odborným konzultantem ze společnosti Altera (původně Intel). Student toto zadání splnil v plném rozsahu, přičemž se mu povedlo vytvořit kvalitní a prakticky použitelnou implementaci.
Práce s literaturou Student čerpal z velkého množství literatury jak doporučené, tak z literatury získané vlastní aktivitou. Hlavně chci ocenit jeho iniciativu a samostatnost při hledání relevantních zdrojů o problematice metrik kódu.
Aktivita během řešení, konzultace, komunikace Student byl iniciativní v průběhu celého řešení. Na konzultace s pedagogickým vedoucím i odborným konzultantem byl vždy dobře připraven a dané problematice rozuměl.
Aktivita při dokončování Práce byla dokončena v dostatečném předstihu. Finální obsah a výsledky celé práce stihly být před odevzdáním několikrát konzultovány.  Před závěrečným termínem se vylepšovali již jenom drobnosti v textové části. Zbyl také čas na významné rozšiřování míry testování a přípravu implementace na začlenění do open-source repozitáře.
Publikační činnost, ocenění Student svojí prací rozšířil otevřený projekt P4C, který zastřešuje Open Networking Foundation. Část v práci vytvořené implementace byla již před odevzdáním úspěšně začleněna přímo do hlavní větve oficiálního open-source repozitáře referenčního P4 překladače. Link: https://github.com/p4lang/p4c/pull/5283 Pro hlavní část implementace byl také otevřen požadavek na začlenění (Pull Request), který je nyní aktivně zvažován komunitou. V momentě psaní tohoto posudku přešel PR kontrolou od několika vývojářů z P4 komunity a po drobných změnách v kódu je doporučen/potvrzen pro začlenění. Link: https://github.com/p4lang/p4c/pull/5250  
Navrhovaná známka
A
Body
92

Posudek oponenta

Martínek, Tomáš

Jedná se o velmi zdařilou bakalářskou práci. Student zde prokázal rozsáhlé znalosti a zkušenosti v oblasti návrhu a implementace software. Vytvořené výstupy jsou na velmi vysoké úrovni a použitelné v praxi . S ohledem na tyto skutečnosti a obtížnější zadání navrhuji hodnocení stupněm velmi dobře (B) .

Dílčí hodnocení
Kritérium Známka Body Slovní hodnocení
Náročnost zadání Student měl za úkol navrhnout vhodné metriky pro hodnocení kódu v jazyce P4. Tyto metriky bylo následně nutné implementovat přímo do existujícího kompilátoru , který je poměrně komplexní. Z těchto důvodů považuji zadání jako obtížnější. 
Rozsah splnění požadavků zadání Zadání bylo splněno ve všech bodech.
Rozsah technické zprávy Rozsah technické zprávy je v obvyklém rozmezí . Teoretická i praktická část technické zprávy jsou vyvážené a informačně bohaté.
Prezentační úroveň technické zprávy 90 Struktura technické zprávy je v pořádku a jednotivé části na sebe logicky navazují. Samotný text jednotlivých kapitol je pro čtenáře dobře čitelný a pochopitelný .
Formální úprava technické zprávy 90 Po typografické stránce je text na velmi dobré úrovni . Podobně, po jazykové stránce není co vytknout.
Práce s literaturou 95 Práce s literaturou je na velmi vysoké úrovni . Autor vybírá z kvalitních publikací zaměřených na metriky pro hodnocení kódu a z oblasti jazyka P4. Všechny převzaté prvky jsou v textu řádně odlišeny a odděleny od vlastního přínosu.
Realizační výstup 85 Výstupem práce jsou kódy v jazyce C++, které do kompilátoru jazyka P4 přidávájí novou funkcionalitu ve formě metrik pro hodnocení kódu. Tyto kódy jsou plně funkční a vhodně strukturovány/komentovány.
Využitelnost výsledků Jedná se o práci kompilačního charakteru. Tím, že je vytvořená funkcionalita implementována přímo do kompilátoru P4, je zde potenciál pro jejich snadné využití ze strany programátorů kódů v jazyce P4 .
Navrhovaná známka
B
Body
88

Otázky

eVSKP id 161792