The goal of the research is to discover and create a means to convert a text representation of UML class diagrams into its corresponding visual form. UML class diagrams describe the design of a software system and are widely used throughout industry and academics.
The text representation of UML used here is called yUML. The approach translates yUML to a graph representation language, called dot, which is then rendered via the graphical rendering engine Graphviz. Each component of yUML must be parsed and translated into the corresponding graph component in dot. A parser generator, ANTLR, is used to develop the necessary software to parse yUML and convert it into dot. An ANTLR grammar for yUML is created for this process.
The research is realized as a software tool that takes yUML as input and generates the dot representation. Then, Graphviz is used to graphically render the diagram. The yUML is automatically generated from an existing software system that leverages the srcML infrastructure. srcML is an infrastructure to support the analysis and exploration of source code. The results of this research allow the ability to recover a visual UML class diagram for any given software system. A current prototype has been developed and it is being evaluated for accuracy and scalability.
Future work consists of adding different layout algorithms and evaluating their comprehensibility. The resulting tool will be an effective and useful means to assist programmers in understanding large software systems.