Bachelor's Thesis

Creating a Visual Tool for Processing Incoming Messages from IoT Devices

Final Thesis 3.8 MB

Author of thesis: Danil Tasmassys

Acad. year: 2025/2026

Supervisor: Ing. Petr John

Reviewer: Maksim Aparovich

Abstract:

Processing incoming data from Internet of Things (IoT) devices requires algorithms that sometimes need to be written or modified in field conditions. Existing tools for these tasks were typically designed for desktop mouse-driven environments, which is why they face issues when used on mobile devices. The aim of the thesis is to design and develop a tool, optimized for mobile devices, that provides a visual abstraction, thereby lowering the barrier to entry into the IoT. The designed solution consists of a library and a host application. Architecturally, it is a progressive web app, which makes it platform-independent. It works offline and processes data on the client-side. This application allows users to create algorithms for processing incoming messages using a touchscreen. The proposed concept was implemented as a functional proof-of-concept prototype that generates syntactically valid JavaScript code from the visual program. User testing proved the usability of the chosen approach, despite a steep learning curve.

Keywords:

internet of things, IoT, end-user development, smart devices, web application, graphical editor, Mobile First, PWA, visual programming.

Date of defence

18.06.2026

Result of the defence

Defended (thesis was successfully defended)

znamkaBznamka

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 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

  1. V čem spočívá hlavní přínos a výhoda vašeho řešení ve srovnání s ostatními obdobnými systémy? 

Language of thesis

English

Faculty

Department

Study programme

Information Technology (BIT)

Composition of Committee

prof. Dr. Ing. Jan Černocký (předseda)
doc. Ing. Zdeněk Vašíček, Ph.D. (místopředseda)
Ing. Jiří Hynek, Ph.D. (člen)
RNDr. Marek Rychlý, Ph.D. (člen)
Ing. Vojtěch Havlena, Ph.D. (člen)

Supervisor’s report
Ing. Petr John

I consider this bachelor’s thesis to be successful. The student has mastered the necessary technologies and, based on this knowledge, has implemented a new visual editor. The results of his work demonstrate that visual programming languages can bridge the gap between non-programmers and the conversion process. I also view participation in Excel@FIT positively and recommend a grade of B.

Evaluation criteria Verbal classification
Informace k zadání

The goal of this thesis was to design and implement a user-facing visual editor primarily for creating programs that define the encoding and decoding processes required for the Internet of Things, IoT. These functions convert between the device-level message types and the digital twin representation. To achieve his goal, the student studied the fields of the IoT and end-user development, particularly visual programming languages. This allowed the student to analyze the shortcomings of the current solutions and the requirements for such a system. These findings were the basis for the design and later implementation. The student also performed a round of user testing based on his interaction scenario and tested the tool with potential users. I rate the assignment as moderately difficult, and from my perspective, it was fulfilled in its entirety. This work builds on and expands upon the findings from my PhD thesis proposal [1].

[1] John, Petr. Optimising processes in IoT. Brno, 2024. PhD thesis proposal. Brno University of Technology, Faculty of Information Technology.

Práce s literaturou

The student studied the recommended literature and actively sought out additional relevant sources on his own.

Aktivita během řešení, konzultace, komunikace

The student maintained regular communication throughout the academic year. Consultations with the thesis advisor took place online approximately once every two weeks. The student also frequently sent messages to report on new developments. The student duly completed the assigned tasks, and the work progressed at a good pace.

Aktivita při dokončování

The student completed the practical portion of his bachelor's thesis on time, which allowed him to test and implement the results. He also presented the results at the Excel@FIT student conference.

Publikační činnost, ocenění

The student presented the results at Excel@FIT student conference.

Points proposed by supervisor: 82

Grade proposed by supervisor: B

Reviewer’s report
Maksim Aparovich

The thesis delivers a working custom implementation with clear, well-motivated design decisions and the report states its own limitations directly. The main drawbacks are an informal user study, a thin needs analysis, recurring English errors, and the lack of automated tests or a deployment. Given the above-standard difficulty and these stated limitations, the result is above the level of comparable bachelor theses.

Evaluation criteria Verbal classification Points
Náročnost zadání

Evaluation level: obtížnější zadání

The assignment is above standard difficulty, covering two study areas (IoT and visual programming) and requiring a UI library, a host PWA and a custom code-generation engine validated by a user study. The author also chose to build the engine from scratch rather than reuse Blockly, which raised the bar further.

Prezentační úroveň technické zprávy

The structure is logical and easy to follow and a real strength is that the author repeatedly contrasts what was designed with what was actually built (e.g. drag-and-drop was planned but dropped and expression connectors were added only after testing). The main weakness is a thin, assertion-based needs analysis and a front-loaded IoT survey.

90
Formální úprava technické zprávy

Typesetting and figures are clean, but English errors recur often enough: e.g. "Futhermore" in the acknowledgements. A final proofreading pass would have caught most of them.

85
Realizační výstup

The software is a clean and documented proof of concept: a layered PWA with a custom flat-array-to-AST pipeline, justified framework choices and syntactic validation via Acorn with open-source libraries and disclosed AI assistance used appropriately. Work relies on usability testing without automated tests, the missing semantic checks and an unsandboxed "new Function" executor that the author flags himself.

95
Využitelnost výsledků

The work extends an existing direction rather than breaking new ground, so the contribution is incremental, but the mobile-first branching-and-panning interface is a genuinely novel angle. It delivers a reusable proof of concept that was presented at Excel@FIT and can be opensourced/extended toward production.

Rozsah splnění požadavků zadání

Evaluation level: zadání splněno

All six points are addressed and the core work is delivered. Within point 3, the "calculate derivable information" part stays mostly theoretical - the tool delivers decode/encode and basic math while cross-sensor derivation appears only as discussion. The point 5 evaluation is present but informal, with seven testers and averaged charts rather than raw metrics. The narrowing is reasonable for a bachelor's thesis.

Rozsah technické zprávy

Evaluation level: je v obvyklém rozmezí

From introduction to conclusion the text runs about forty-nine pages with many figures, which places it within the usual range. The content is relevant and information-rich, though the IoT theory in Chapter 2 is long relative to its payoff for the tool.

Práce s literaturou

The sources are relevant and match to the topic, AI-tool use is disclosed and borrowed material is clearly separated from the author's own work. A few entries lean on vendor or official pages and there is a duplicate footnote number on page 19 (two footnotes labelled 5), but the literature work is sound.

85
Points proposed by reviewer: 90

Grade proposed by reviewer: A

Responsibility: Mgr. et Mgr. Hana Odstrčilová