Software Engineering (version for Czech students)

Theses

Bachelor theses

HoloLens OCR capabilities for the chemical lab environment

Author
Petr Havel
Year
2024
Type
Bachelor thesis
Supervisor
Ing. Martin Dubec
Reviewers
Ing. Jiří Novák, Ph.D.
Summary
This thesis explores the potential of leveraging mixed reality for note taking in chemical laboratories, specifically using the HoloLens 2. We started by analyzing the existing market and related research. Through user engagement, we identified essential requirements and gained insights into their needs. After exploring possible implementation strategies, we designed use cases and the application's architecture. Our implementation, detailed within, was executed in Unity using C# and the .Net framework, and includes associated automated tests. The thesis concludes by outlining a strategy for real-world testing and a roadmap for the application's continued development.

Parametric modelling of hall structures

Author
Robin Blažek
Year
2024
Type
Bachelor thesis
Supervisor
Ing. Pavel Štěpán
Reviewers
Ing. Lukáš Hron, Ph.D.
Summary
This bachelor thesis deals with the design of an application for parametric modelling of hall structures in the engineering software Tekla Structures. In the theoretical part of the thesis a research of available applications that are designed for parametric creation of building models is made. The output of the thesis is a functional prototype of a desktop application that allows to generate the main grid of the building model directly in the 3D scene of Tekla Structures software based on the input data provided by the user. The proposed user interface contributes to speed up the work when entering the necessary parameters. The implementation uses the .NET Framework platform in combination with the MVVM architecture, thanks to which the application has the potential for future extensions in the form of connecting other structural modelling software. The connection to Tekla Structures is implemented using its public API.

Egidio - Disaster Management Platform

Author
Filip Ballek
Year
2023
Type
Bachelor thesis
Supervisor
Ing. Marek Sušický
Reviewers
Ing. Jaroslav Kuchař, Ph.D.
Summary
The reason to create this solution was an effort to help people who want to offer their help or ask for a help during one of many catastrophes that happen on Earth every year. Platform, that has potential to make offering a help and asking for a help more efficient than other solutions do, was created. Research of similiar solutions that are available on the Internet was done. Then the platform was designed, implemented and tested. As a part of test process, 23 test scenarios were created.

Rework and Extension of Web Development Environment for Karel Language

Author
Jan Jörka
Year
2023
Type
Bachelor thesis
Supervisor
Ing. Jan Blizničenko
Reviewers
Ing. Marek Suchánek, Ph.D. et Ph.D.
Summary
This bachelor thesis deals with the creation of a web development environment for the Karel educational programming language. The development environment allows advanced editing of the source code and the town in which the Karel robot moves, running the created programs, debugging them, saving them to the server, sharing them and creating automatically evaluated programming tasks (challenges). It builds on the karlbot.cz application, which is, however, very simple, unfinished and in poor technical condition. As part of the thesis, it is reworked from scratch. The thesis includes an analysis of the application and other applications with the same focus. Based on this analysis, the requirements for the new application are specified and its implementation is designed. The server part is implemented in ASP.NET Core framework and the client part in Angular framework. Among other things, the process of integrating a source code editor or automatic challenge evaluation is also described. Furthermore, the application is tested, documented and deployed. The result is a fully functional web application available to anyone on the karlbot.dev domain.

Visualization of the process of solving selected optimization problems using genetic algorithms

Author
Radek Horáček
Year
2023
Type
Bachelor thesis
Supervisor
Ing. Mgr. Ladislava Smítková Janků, Ph.D.
Reviewers
Ing. Jiří Novák, Ph.D.
Summary
This thesis describes the process of developing an interactive tool for visualization of the process of solving selected optimization problems using genetic algorithms. The theoretical part provides an introduction to the evolutionary algorithms, more specifically then focuses on genetic algorithms. This part also lists typical optimization problems that are commonly solved using genetic algorithms. The practical part describes all the important steps in creating new functional software. This includes the comparison of existing solutions, analysis of possibly suitable technologies and libraries, and software documentation. The implementation of the application, using the Blazor WebAssembly framework, is also described in this part. The interactive tool provides the visualizations of three typical optimization problems and the problem of 2D bitmap image generation. At the end, the thesis lists the techniques used for testing and documentation of the application. The final result of this thesis is a functional interactive web application.

Design and implementation of web interface for telerehabilitation

Author
Jan Petržílka
Year
2021
Type
Bachelor thesis
Supervisor
doc. Ing. Patrik Kutílek, MSc., Ph.D.
Reviewers
Ing. Jiří Mlejnek
Summary
The content of the work is the development of a web application for telerehabilitation according to the requirements of the thesis supervisor. The application allows a user with the administrator role to define templates, and a user with the client role can use these templates to enter information about a task. The template may contain a video recording. The application forwards the completed form with file attachments for processing to a related application, which is not the subject of this work, and displays information to the client about the result of processing. Users with the therapeutist role have assigned clients and they have access to the their tasks. In addition to the usual requirements, the application includes functionality for video recording based on Media Recording API and for transferring large files of size of hundreds of MB from a web browser to a server. A custom data flow control algorithm to avoid congestion collapse is used to transfer data to the server. The user interface is made in Czech and English with fully parameterized localization. The server part is implemented in Java, PostgreSQL is used as the database.

Artificial Intelligence Methods for Interior Design and Furnishing

Author
Eliška Svobodová
Year
2021
Type
Bachelor thesis
Supervisor
Ing. Mgr. Ladislava Smítková Janků, Ph.D.
Reviewers
prof. RNDr. Tomáš Skopal, Ph.D.
Summary
This thesis contributes to automated interior design research by designing and implementing a new system. The design process is divided into the planning of the functional zones using simulated annealing and arranging the furniture with a genetic algorithm. The system can fulfill the user's requirements on the room's shape, functions, and used furniture. The experiments show the ability of the system to design an interior of rooms with varying shapes and selection of furniture.

Mobile application Seznamovák

Author
Michaela Kučerová
Year
2021
Type
Bachelor thesis
Supervisor
Ing. Tomáš Nováček
Summary
The focus of this thesis is the development of the mobile application Seznamovák for Android operating system written in Kotlin programming language. The thesis includes an analysis of the original version of the application together with the definition of the requirements for the new solution, which is followed by the design and implementation of this solution. Finally, the thesis deals with the user testing of the application. The result of this thesis is a functional mobile application that will serve the participants and organizers of the introductory course of the Faculty of Information Technology of the Czech Technical University in Prague.

Support of creation and automatic correction of simplified relational notation on dbs.fit.cvut.cz

Author
Martin Šach
Year
2020
Type
Bachelor thesis
Supervisor
Ing. Jiří Hunka
Reviewers
Ing. Ivan Halaška
Summary
This bachelor thesis describes design, implementation and testing of the application for education portal of Database systems course. It is a tool intended for transformation of simplified relational notation to suitable data format which was written in programming language Kotlin. This tool also includes a text editor written in JavaScript with autocomplete function which allows easier entry of user input. The result of this thesis is application which is deployed and used on education portal of the course mentioned above.

Android mobile application for personal safety

Author
Bich Phuong Phamová
Year
2020
Type
Bachelor thesis
Supervisor
Ing. Eliška Šestáková
Reviewers
Ing. Marek Suchánek
Summary
This bachelor thesis deals with the design and implementation of a personal safety mobile application for Android operating system. The final prototype is carried out using standard development practices as well as modern technologies such as Google Maps and the Firebase platform. The application provides users with the ability to call immediate help in critical situations. In case a criminal offense is witnessed, it is possible to publish a report to raise awareness. This thesis contains an analysis of existing solutions, requirements specification, design of the application's architecture, implementation, and usability testing. Possibilities of further development are discussed at the end of the thesis.

ESP32 Based Platform Supporting Interactive Street Furniture

Author
Jakub Topič
Year
2020
Type
Bachelor thesis
Supervisor
Ing. Pavel Kubalík, Ph.D.
Reviewers
Ing. Vojtěch Miškovský, Ph.D.
Summary
This bachelor thesis focuses on design, implementation, and testing of a system supporting interactive street furniture. The main part of this system is an ESP32 based prototype control unit, which provides data collection and control of individual functions in the installed street furniture elements. The rest of the system consists of a companion web application, which can be used to remotely configure the control units, monitor their operation, and visualize the measured data. The server part is implemented using the Flask web development framework for Python and the client part was created using the Vue.js framework and TypeScript. During the development, the technique of continuous integration was used, which enabled automated validation and deployment of individual parts of the system.

A State Management in Multi-client Single Page Web Applications

Author
Tomáš Bydžovský
Year
2019
Type
Bachelor thesis
Supervisor
Ing. Marek Skotnica
Reviewers
Ing. David Šenkýř
Summary
The subject of this thesis is state management of web Single Page Applications (SPA) and its synchronization on multiple clients. In recent years the increasing complexity of modern web applications lead to the creation of new systems and design patterns, that deals with state management. However, concepts of state management are not yet widely known, and a wide range of existing solutions can be confusing. This thesis describes the concepts of state management and real-time data synchronization. The thesis contains a review of current solutions and techniques. The main focus is Redux design pattern with its implementation NgRx, as well as WebSocket protocol and its use in the SignalR library. In this thesis design of a state management system with real-time synchronization for web application similar to Google Drawings using Redux design pattern and SignalR library is proposed. To demonstrate new concepts and capability of such system proof of concept implementation based on the proposed design was created.

Web Remote Support

Author
Filip Dolník
Year
2019
Type
Bachelor thesis
Supervisor
Ing. Jiří Hunka
Reviewers
Ing. Filip Glazar
Summary
This thesis deals with remote administration of web applications. The aim of this thesis is to create a draft and a prototype based on it, which will allow the administrator to remotely control the web application. The main focus is on ensuring that no additional software is needed to be installed and used by the user. In the web environment, such remote administration is referred to as co-browsing. The theoretical part of this thesis describes the properties of co-browsing as well as various methods of how to realize it. I chose JavaScript engine output synchronization method. The main difference from other existing solutions is the use of partial peer-to-peer architecture to improve response time. The result of this thesis is a prototype allowing the administrator to control the user's website. The thesis describes the prototype architecture and the principles on which it works. There are also suggestions on how to solve its current limitations. This information can be used to create a full-featured remote web administration tool.

Application for CSOB employees

Author
Viktor Müller
Year
2019
Type
Bachelor thesis
Supervisor
Ing. Miroslav Balík, Ph.D.
Summary
This bachelor thesis describes software analysis, design and implementation of a mobile aplication for Android OS written in Kotlin. The thesis also examines technologies used for Android application development and testing. The result of this thesis is a mobile application for employees of Československá obchodní banka, a.s. The application provides a comfortable way to search for internal information throughout the bank's systems. The resulting application is ready for integration testing with real servers of the bank.

Texture extraction from photographs

Author
Danil Luzin
Year
2018
Type
Bachelor thesis
Supervisor
Ing. David Sedláček, Ph.D.
Reviewers
doc. Ing. Ivan Šimeček, Ph.D.
Summary
This bachelor's thesis describes the process of analysis, design and implementation of a texture extraction tool. Provided with a reconstructed 3D model, set of photographs and a camera calibration data, the tool is able to generate texture file/files for that 3D model. The work describes techniques, approaches and challenges present in the field of texture extraction. Couple new ways of solving some of those challenges are also described and implemented in the work. The result of the work is a fully functional tool written in C++.

Framework for evaluation of frequent sequences algorithms in Recommender Systems

Author
Michal Bajer
Year
2017
Type
Bachelor thesis
Supervisor
Ing. Tomáš Řehořek, Ph.D.
Reviewers
doc. Ing. Pavel Kordík, Ph.D.
Summary
This bachelor thesis deals with the analysis of sequential data, the search of frequent patterns in time-based data and its use for the recommendation of products to the customers of Internet shops based on their history of purchases. The aim of the thesis is to design and implement a framework that allows the processing of collected data, to find patterns and to determine the probable continuation of the customer purchase sequence. Another goal is to allow the evaluation of the success of several different algorithms and to choose the most suitable for a specific purpose. The result of the thesis is the design, discussion of options and implementation of a functional framework for product recommendation and success evaluation. At the end, the quality of the recommendations was analysed using the implemented algorithms. The implementation of the work was done in Java.

Functional Programming for Web Frontend

Author
Jan Luxemburk
Year
2017
Type
Bachelor thesis
Supervisor
doc. Ing. Robert Pergl, Ph.D.
Reviewers
Ing. Lukáš Janeček
Summary
Primary focus of this thesis is the programming language Elm. Elm is thoroughly investigated; on a theoretical level, in the context of functional programming concepts like function purity, side effects, and immutability. From a practical point of view, I review the quality of Elm's tooling and its libraries, and I compare them to JavaScript. A sample Elm application is also part of the thesis.

Project and infrastracture management of BI-DBS teaching portal

Author
Oldřich Malec
Year
2017
Type
Bachelor thesis
Supervisor
Ing. Jiří Hunka
Reviewers
Ing. Michal Valenta, Ph.D.
Summary
This thesis focuses on effective software project management, which aims to develop a supporting application for teaching BI-DBS at FIT CTU. Thesis describes issues with leading teams consisting of multiple people, deals with deployment, maintenance of deployed software and the development itself. The goal is to propose and start using procedures and tools, which will effectively combine a running system with its active development, while suppressing most of the bugs. The chosen software development methodology combines Extreme programming and Feature-driven development, the course of work is tracked in Redmine. Source code of the app is versioned and tested using Gitlab. The last chapter also includes samples of configuration for some services required to run the application. This work can be used as a base point for other projects with similar sizes or to continue in the process of managing the same project.

Retreaving data from logs application

Author
Michal Stejskal
Year
2017
Type
Bachelor thesis
Supervisor
Ing. Josef Vogel, CSc.
Reviewers
Ing. Tomáš Zahradnický, Ph.D.
Summary
In this bachelor thesis I am solving the design and development of a system for searching and aggregation of log files and generating events based on the data found. In the first part is described the architecture of this system, examples of use cases, requirements for this system, description of the system users and the selected technologies. Based on the results of the first part, the second part describes the process of implementation of the individual components of the system, the interface of their communication and a description of the search and processing of the results of the indexing tool. Developed components are the RESTful Java API that handles client application requests, creates search objects for an indexing tool, and generates events based on the data found. In addition, a client application was developed to interact with the user and process the results returned by the system's RESTful API. System RESTful API was implemented in Java, the client application in AngularJS 2. Elasticsearch was chosen as the indexing tool. Proces of the deployment of the system to the production or testing environment is described in Chapter 4. In this chapter is described how to containerize each component of the system with the Docker and link their communications. In the end, the future of the system and other possible extensions are discussed.

Web service for advanced text analysis

Author
Jan Švejda
Year
2017
Type
Bachelor thesis
Supervisor
doc. Ing. Pavel Kordík, Ph.D.
Reviewers
Ing. Karel Klouda, Ph.D.
Summary
Many statistical and machine learning models, which tackle the problems of natural language processing, have the potential to assist humans in various domains. In this thesis, an application is created, that gives access to these models applied to the field of Internet news through a web service and a website. This provides writers and editors of articles with more information, makes integration of such models with other systems possible and allows people interested in natural language processing to interactively experiment with them and learn about them, too. Both the web service and the website were successfully designed and implemented with security and scalability in mind. The application is designed in such a way, that extending it with new functionalities in the future will be easy.

Design and Implementation of Cellular Automaton Simulating Dynamic Recrystallization

Author
Jakub Tkáč
Year
2017
Type
Bachelor thesis
Reviewers
doc. Ing. Ivan Šimeček, Ph.D.
Summary
The aim of this bachelor thesis is to design, implement and visualize a cellular automaton simulating dynamic recrystallization. Implementation of the algorithm was based on scientific publications, doctoral thesis and existing code in CellLang. The graphical user interface is implemented in C++ using the Qt framework. The resulting application displays the microstructure and visualizes calculated results to the user: mechanical stress curve, mean grain size curve, dislocation density. The simulation results can be stored. It is possible to retrieve the initialization microstructure or to generate our own in the program based on defined parameters by pseudo-static recrystallization. Optional parameters guarantee simulation of material deformed under different conditions.

The person responsible for the content of this page: Ing. Zdeněk Muzikář, CSc.