Přístupnostní navigace
E-application
Search Search Close
Bachelor's Thesis
Author of thesis: Petr Nečas
Acad. year: 2025/2026
Supervisor: Ing. Petr John
Reviewer: Maksim Aparovich
In the contemporary landscape, Internet of Things platforms often allow users to create programs to automate interactions between smart devices. However, the simple combination of basic control logic and device-level functionalities is often insufficient for scenarios requiring the capabilities of the overarching management system, such as notifications or execution logging. This thesis addresses these limitations within the RIoT ecosystem through a programmatic abstraction designed to encapsulate complex system functions and present them as simplified components within a visual programming language. The implementation of a notification microservice and a program logging system demonstrates this approach. This architectural extension transforms complex backend functionalities into high-level, user-friendly blocks, enabling even non-technical users to create advanced automations. The work details the modifications to the RIoT architecture, the design of microservice communication via message queues, and the extension of the database schema for contact management. The results demonstrate that this abstraction layer enhances system modularity and scalability. Finally, the thesis concludes with an evaluation of the implemented solution and its impact on the extensibility of the RIoT ecosystem.
Internet of Things, IoT, visual programming, end-user development, program abstraction
Date of defence
17.06.2026
Result of the defence
Defended (thesis was successfully defended)
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 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 B.
Topics for thesis defence
Language of thesis
English
Faculty
Fakulta informačních technologií
Department
Department of Information Systems
Study programme
Information Technology (BIT)
Composition of Committee
doc. Ing. František Zbořil, CSc. (předseda) doc. Ing. Michal Španěl, Ph.D. (místopředseda) Ing. Jan Pluskal, Ph.D. (člen) Ing. Aleš Smrčka, Ph.D. (člen) Ing. Josef Strnadel, Ph.D. (člen)
Supervisor’s reportIng. Petr John
I consider this bachelor’s thesis to be successful. The student has mastered the necessary technologies and, based on this knowledge, has expanded the existing visual editor, the interpreter, and the RIoT platform. The results of this work demonstrate that the trio can be successfully used to demonstrate the selected approach of the editor’s program abstraction. I recommend a grade of B.
The goal of the thesis was to extend the existing visual editor, vpl-for-things, to support the functionality of any application that utilizes it, provided the required structures are supplied. In addition, the thesis aimed to extend the selected application, RIoT, to provide these necessary structures, as it was chosen as an example of such an application. To achieve this goal, the student needed to study the fields of IoT, smart cities, and current approaches to end-user development, primarily in the context of visual programming languages. This allowed the student to analyze the shortcomings of both the vpl-for-things editor and the canonical interpreter pocketix-go and RIoT. Based on his findings, the student proposed extending the canonical interpreter pocketix-go with the functionality already present in the base language of the vpl-for-things editor, fleshing out the abstraction layer in RIoT, and implementing new features, such as notifications and logging, in a new microservice and core responsibilities, respectively. To achieve this goal, the student needed to study both the aforementioned and complex systems, as well as tools such as the Go programming language, Lit.js, React.js, RabbitMQ, the browser notification API, and others. The student then implemented and tested the proposed extensions. This extension lies in improvements to pocketix-go and language construction in vpl-for-things, which enable dynamic injection of required structures. I consider the assignment to be fulfilled in its entirety. I rate the assignment's difficulty as slightly above average. 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.
The student studied the recommended literature and actively sought out additional relevant sources on his own.
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.
The student completed the practical portion of the bachelor’s thesis on time, enabling full integration of the solution into the existing project and deployment of the modified solution into production.
-
Grade proposed by supervisor: B
Reviewer’s reportMaksim Aparovich
This is a solid and well-written thesis, noticeably above the average of comparable work. The engineering is well integrated and validated, the report is clear and honest about its own design choices, and the deployment makes the result tangible. The minor caveats - some UML notation issues and a few formal slips - do not detract from the overall quality.
Evaluation level: obtížnější zadání
The assignment is above standard difficulty, spanning three separate codebases plus a user study. It does build on an existing platform rather than starting from scratch, but the cross-component coordination keeps it demanding.
The structure is logical and easy to follow (theory -> analysis -> proposal -> implementation -> testing), and the chapters connect well. A genuine strength is that the author explicitly contrasts what was proposed with what was actually implemented, which is honest and helps the reader. The only real caveat is some inaccuracy in the UML diagrams, where the notation is not strictly correct, though the intended meaning is clear.
Typesetting and figures are clean and the English reads well. There are a few leftover issues (e.g. a couple of typos) that a final proofing pass would have caught.
The software is strong: three working artifacts integrated cleanly, with the contribution traceable through diff files and validated by a scenario-based user study. The student also deployed the application and made the system available to try, which is a plus. The main limitations are that verification relies on usability testing without automated tests and only one delivery channel is implemented so far.
The work extends an existing direction (the RIoT platform and prior theses) rather than breaking new ground, so the contribution is incremental. That said, it delivers a working, reusable abstraction that the author argues can be extended to further services, and with a live deployment it has clear practical value.
Evaluation level: zadání splněno
All six points are addressed and the core of the work is solidly delivered. Point 4 is met only in part: of the shortcomings the author identifies, notifications and logging were implemented while the others were left out and notifications currently work over a single channel (WebPush). The narrowing is reasonable for a bachelor's thesis and the author is open about it.
Evaluation level: splňuje pouze minimální požadavky
The body text, from introduction to conclusion, sits at the lower end of the acceptable range, around the 40-page minimum once the many figures are counted. The content is relevant and information-rich, so the modest length is not a problem.
The sources are relevant and well matched to the topic, tool use is disclosed and borrowed material is properly distinguished from the author's own work. A small number of entries lean on blog or vendor pages and one citation is malformed, but overall the literature work is sound.
Grade proposed by reviewer: A
Responsibility: Mgr. et Mgr. Hana Odstrčilová