People often imagine software development as just programming itself. In reality, however, a large part of the work happens beforehand — during planning, designing, and thinking through how the application should function. This is where so-called CASE tools come in, programs that help create diagrams describing a given system. The master’s thesis of Ing. Vojtěch Doležal focuses on how to create such a tool in a more modern and user-friendly way.
An analysis of current solutions and user experiences suggests that many of these tools appear outdated, unintuitive, and difficult to use. New users in particular often struggle to locate the necessary features, and even simple tasks can become unnecessarily complicated. As a result, a tool intended to simplify work may, in some situations, become more of an obstacle than a help.
The goal of the thesis was therefore to create a new tool (working title Nihonium) that would be simpler, clearer, and more pleasant to use. An important aspect is that the program always clearly indicates its internal state, so the user always understands what they are doing.
Another interesting aspect is the technology used. The tool is built in the modern programming language Rust, which is fast and reliable. The user interface uses the egui library, allowing the application to remain responsive and flexible. For everyday users, this means the application works not only natively on major desktop operating systems, but also as a web application running in a browser.
The resulting tool offers a number of features that are considered standard in modern applications — it allows users to undo changes, split the screen between multiple diagrams, and search within diagram contents. It can also, for example, warn users about errors in a diagram based on its type. In addition, users can customize the behavior of the application to suit their preferences, such as by modifying keyboard shortcuts.
“Part of my work also involved user testing, which showed that emphasizing simplicity and clarity is the right direction. This is precisely the area where older tools often fail,” says Vojtěch.
Looking ahead, Vojtěch plans further improvements. For example, the tool could automatically adjust diagram layouts or allow multiple people to collaborate on the same project online at the same time.