SLAVOV, J. Využití knihovny pro serializaci dat v embedded systémech [online]. Brno: Vysoké učení technické v Brně. Fakulta elektrotechniky a komunikačních technologií. 2023.
Zadání diplomové práce Bc. Jana Slavova bylo zadáním, na jehož řešení student již od počátku aktivně pracoval. V rámci řešení práce komunikoval diplomant také s Ing. Matejem Pončákem, který studentovi představil HW platformu Raspberry Pi Pico a jím navržený a realizovaný kit. Mikrokontroler Raspberry Pi Pico si následně student zvolil jako embedded zařízení na kterém diplomovou práci realizoval a také pomocí tohoto zařízení demonstroval dosažené výsledky. Úkolem studenta bylo se seznámit s knihovnami pro podporu serializace a deserializace za účelem komunikace v multiplatformním prostředí. Další úkolem studenta bylo zdokumentovat vlastnosti a omezení těchto knihoven pro využití v embedded systémech. Mezi další úkoly patřil návrh a realizace vhodného demonstračního řešení, pomocí kterého bude možné prezentovat výhody zvolené serializační knihovny. Výsledným úkolem bylo také demonstrovat funkčnost celého demonstračního řešení. V rámci práce diplomant navrhl a realizoval koncepci celého řešení pro vzájemnou komunikaci dvou embedded systémů využívající knihovnu Flatbuffer, ale také realizoval vlastní serializační řešení. Navrhl, implementoval a porovnal vlastnosti obou těchto přístupů. Jako vedoucí práce mohu zodpovědně konstatovat, že požadované cíle práce byly splněny. Student věnoval řešení práce dostatek času, jednotlivé úkoly si už v počátcích řešení práce vhodně rozvrhl. Pracoval průběžně a přesto, že se v závěru dostal do časové tísně, dokázal ji vlastním úsilím překonat. Konzultace navštěvoval v menší míře, vždy ale prezentoval průběžně dosažené výsledky i případné problémy se kterými se potýkal. Práce má dostatečný rozsah stran. Dosažené výsledky, formální i prezentační úroveň zpracování práce jednoznačně svědčí o inženýrských schopnostech studenta. Předložené práci navrhuji hodnocení: Výborně – A. (92)
Práce bakaláře Jana Slavova o rozsahu 79 stran textu je strukturována vhodným způsobem na teretickou a praktickou část. Praktická část popisuje sice menší díl práce, zadání je orientováno více na rešerši a popis knihoven, není toto tedy na závadu. Práce svým rozsahem odpovídá průměrné zátěži kladené na studenta UAMT. Student používá dostatečně dostupnou literaturu, využívá jednoho knižního zdroje, který nepokrývá celou problematiku. Všechny zdroje student cituje v rozumné míře. Práci mohu označit jako původní. Práce je členěna logicky. Student nejprve popisuje základní teorii okolo serializace zpráv, aby v kapitolách 2-4 popsal vlastní práci s jednotlivými serializačními knihovnami. U práce tohoto druhu mi chybí komplexnější přehled o principech komunikace/serializace, princip čistě strukturového ani registrového přístupu serializace, z jejichž kombinace vychází všechny popsané knihovny není vůbec zmíněn. Student všechnu teorii píše cíleně s ohledem pouze na vybrané knihovny které mají shodný charakter. Výhody těchto knihoven které plynou ze zařazení do skupiny následně popisuje u každé knihovny zvlášť, text nabývá na kvantitě a čtenář nabývá dojmu že určitou pasáž již jednou četl. U všech serializačních knihoven úplně chybí popis binární /serializované formy, ze které by plynuly některé vlastnosti které student objevil v pasáži o testování. Jedinou výjimkou je popis jeho vlastní implementace serializace, která je popsána velmi dobře. Pro srovnání knihoven úplně chybí velikost původní informace před serializací, aby si mohl čtenář udělat přehled o datové režii jednotlivého protokolu. Student naimplementoval svou serializační knihovnu spolu s FlatBufferem do aplikace pro řízení termostatických ventilů. Obě tyto implementace obsahují Race Condition v nižší vrstvě protokolu, které se projeví až v okamžiku pokud na sběrnici začne komunikovat více zařízení nebo zprávy budou častější než jedna zpráva za 500ms nebo se objeví rušení (bude přijat nový znak mezi okamžikem kontroly CRC a kopírováním dat do struktury). Práce má dobrou formální úroveň, obsahuje málo překlepů a gramatických chyb vzhledem k rozsahu práce. Velmi oceňuji studentův nápad dát krátké zdrojové kódy ke kterým se váže text práce do oddělitelných příloh, čtenář tak může vyjmout související kód vedle práce a sledovat popis v textu současně s kódem a navíc srovnat podobnosti jednotlivých řešení pro různé serializační knihovny. Tím velmi usnadnil vlastní podstatu práce, tedy srovnání těchto knihoven. Student splnil zadání ve všech bodech. Z práce usuzuji, že student získal znalosti v oblasti programování a serializace dat. Student se naučil též základy komunikace, avšak v této oblasti by zřejmě potřeboval delší praxi aby pochopil souvislosti kterých se dopustil. Práce svědčí o inženýrských schopnostech studenta. Práci doporučuji k obhajobě.
eVSKP id 151796