Přístupnostní navigace
E-přihláška
Vyhledávání Vyhledat Zavřít
diplomová práce
Autor práce: Ing. Filip Štolfa
Ak. rok: 2024/2025
Vedoucí: Ing. Petr John
Oponent: Ing. Jiří Hynek, Ph.D.
S rostoucí popularitou a počtem chytrých zařízení roste i potřeba kvalitních nástrojů určených pro začínající i zkušené uživatele, které jim umožní využít plný potenciál jejich zařízení. Uživatelé systémů IoT vytváří uživatelsky definované programy, které propojují jejich zařízení do užitečného chytrého systému. Tato diplomová práce se zabývá vytvořením uživatelsky přívětivého debuggeru a simulátoru pro vizuální programovací jazyk, který koncovým uživatelům umožní testovat a lépe pochopit jejich programy pomocí vizuálních nápověd. Zaměřuje se zejména na objasnění interakce programů a na jejich vliv na zařízení v systému. Cílem práce bylo navrhnout a implementovat knihovnu pro zpracování, vyhodnocování a ladění uživatelsky definovaných programů v simulovaném prostředí, čímž lze předejít škodám, která mohou nastat spouštěním chybných programů na reálných zařízeních. Knihovna obsahuje také vizuální komponenty, ze kterých je možné vytvořit responzivní uživatelské rozhraní pro implementovaný debugger a simulátor. Pro demonstraci implementovaného řešení byla sestavena ukázková aplikace.
debugger, simulátor, IoT, vizuální programování, chytrá zařízení, TypeScript, Lit, responzivní design
Termín obhajoby
24.06.2025
Výsledek obhajoby
obhájeno (práce byla úspěšně obhájena)
Klasifikace
A
Průběh obhajoby
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 A.
Otázky k obhajobě
Jazyk práce
angličtina
Fakulta
Fakulta informačních technologií
Ústav
Ústav informačních systémů
Studijní program
Informační technologie a umělá inteligence (MITAI)
Specializace
Strojové učení (NMAL)
Složení komise
prof. Dr. Ing. Jan Černocký (předseda) doc. Ing. Lukáš Burget, Ph.D. (člen) doc. Ing. Vladimír Janoušek, Ph.D. (člen) Ing. Michal Hradiš, Ph.D. (člen) Ing. Jaroslav Rozman, Ph.D. (člen) Ing. František Grézl, Ph.D. (člen)
Posudek vedoucíhoIng. Petr John
Student pracoval samostatně a v průběhu projektu prokázal důkladný a pečlivý přístup. Výsledkem je velmi kvalitně provedené řešení, které poskytuje vizuální ladicí program a simulátor pro automatizaci IoT jako samostatnou a nezávislou platformu. Navrhuji hodnocení stupněm A.
Cílem této diplomové práce bylo rozšířit stávající vizuální programovací editor o opakovaně použitelný vizuální simulátor a nástroj pro ladění (debugger), který by umožnil i ne-technickým uživatelům testovat své automatizace v prostředí internetu věcí (IoT). Aby tohoto student dosáhl, prozkoumal nejprve oblast IoT a související zastřešující koncepty, jako jsou chytrá města (Smart Cities), komunikační technologie, architektury a případy použití takových zařízení. Pro lepší pochopení dostupných přístupů a interakcí pak student potřeboval prostudovat současné přístupy k vývoji pro koncové uživatele, od programování spouštěcích akcí až po vizuální techniky programování. Následovala analýza aktuálně využívaných přístupů k ladění a simulaci jak obecně, tak v oblasti IoT. Poté student analyzoval stávající editor a stanovil požadavky na simulátor i debugger. Student se musel seznámit s technologiemi TypeScript a Lit.js. Student poté navrhl a implementoval samostatnou knihovnu, která poskytuje API pro integraci jak s vybraným editorem, tak s jakýmkoliv jiným editorem implementujícím toto API a využívajícím stejnou verzi jazyka. Zadání hodnotím jako obtížnější a student úspěšně splnil všechny jeho body.
Práce byla dokončena s dostatečným předstihem, aby mohla být otestována a nasazena. Dále byla také prezentována v IoT společnosti Logimic.
Student vycházel z předchozího výzkumu a jeho práce poslouží jako podklad pro další výzkum a následnou vědeckou publikaci.
Student prostudoval doporučenou literaturu a aktivně vyhledával další zdroje.
Student komunikoval po celý akademický rok. Konzultace s vedoucím práce probíhaly online přibližně jednou za dva týdny. Student také často komunikoval prostřednictvím zpráv a informoval o pokroku. Student řádně plnil zadané úkoly a práce postupovala dobrým tempem.
Známka navržená vedoucím: A
Posudek oponentaIng. Jiří Hynek, Ph.D.
Diplomová práce je kvalitní jak po teoretické, tak po praktické stránce. Student významně rozšířil existující vizuální editor, čímž podstatně přispěl k výzkumnému projektu. Navrhuji hodnocení stupněm A.
Stupeň hodnocení: zadání splněno
Stupeň hodnocení: je v obvyklém rozmezí
Technická zpráva je členěna vhodně na teoretickou a praktickou část. Kapitoly na sebe navazují. Vytkl bych pouze nedostatečnou analýzu požadavků na nové řešení (bod zadání č. 3).
Práce je po jazykové a typografické stránce na vysoké úrovni. Obrázky jsou úhledné ve vektorech. Text obsahuje pouze některé zanedbatelné nedostatky (špatné uvozovky a pomlčky).
Student provedl nadprůměrnou rešerši odborných publikací týkajících se dané problematiky.
Realizační výstup je na vysoké úrovni. Byl implementovaný interpret jazyka Pocketix spolu s krokovacím nástrojem. Dále byl implementován simulátor událostí, přičemž všechny nástroje jsou uživatelsky vhodně integrované pro zlepšení použitelnosti celého prostředí, mimo jiné i pro mobilní telefony. Provedení hodnotím velmi kladně.
Výstupy jsou využitelné v rámci výzkumného projektu Pocketix.
Stupeň hodnocení: obtížnější zadání
Cílem práce bylo rozšířit vizuální editor projektu Pocketix o podporu krokování programů a simulací událostí vznikající na chytrých zařízeních. Student navázal na předchozí bakalářskou práci implementující základní vizuální editor [1] a významně ji rozšířil o interpret programů, debugger a simulátor. Pro tyto účely musel důkladně prostudovat principy tvorby takovýchto nástrojů. Rozšíření vizuálního editoru implementoval v jazyce TypeScript s využitím knihovny Lit. Zadání hodnotím jako obtížnější.
[1] PODVOJSKÝ, Lukáš. Vizuální programování IoT zařízení. Brno, 2024. Bakalářská práce. Vysoké učení technické v Brně, Fakulta informačních technologií. Vedoucí práce Ing. Jiří Hynek, Ph.D.
Známka navržená oponentem: A
Odpovědnost: Mgr. et Mgr. Hana Odstrčilová