CleanGraph - Graph viewing and editing for family trees and UML class diagrams - António Alexandre de Almeida Martins (2021)
Traditionally, different types of diagrams are used to represent varying types of data in a fast and easy way to read. Their usage includes describing systems, understanding their features and presenting how different parts are interconnected, making them useful for many applications. Unfortunately, as the complexity of the data showed increases, so does the complexity of the diagram, making it more difficult to read and interpret. Since interactions are usually limited to panning and zooming, there is room for improvement with more interaction and different input methods. The goal is to tackle these issues in two types of diagrams -- Family Trees (FT) and Universal Modeling Language (UML) class diagrams. To achieve this, a new platform will be created, capable of generating diagrams and displaying them in a way where overlapping and unrelated data is minimised alongside having better methods for interacting with and manipulating information. These diagrams will prioritise visual clarity by grouping together elements with relevant or important information, as well as having new ways of interaction, such as selecting elements to receive more information and manually grouping them to better explore the data. Guaranteeing the viability of the solution will require two main issues to be addressed: (1) Defining a fitting diagram disposition and why it is the more advantageous; (2) Understanding the best way to create interactions with diagrams while making it intuitive and keeping them readable. Finding the best platform for the solution to reach its intended audience while providing the desired ease of use is one of the priorities. The evaluation of this work will be attained through previously defined metrics, to ensure that the generated diagram is adequate. The quality of the diagrams will be defined by characteristics such as overlapping connections between elements, related or unrelated data of adjacent elements to the selected one and the amount of displayed data at once. The result of the proposal aims to give a better tool to users seeking improved methods to view their ancestry data, as well as software architects, project managers and system analysts, who would benefit from a better platform for system representation. The developed features can help them convey their ideas easily to developers or anyone interested in the data represented, improving simplicity, workflow and potentially bringing new and improved methods of viewing and displaying information in these areas.