Abstract. Sugiyama's algorithmic framework for layered graph drawing is commonly used in practical software. The extensive use of dummy vertices to break long edges between non-adjacent layers often leads to unsatisfactorial performance. The worst-case running-time of Sugiyama's approach is O(|V ||E| log |E|) requiring O(|V ||E|) memory, which makes it unusable for the visualization of large graphs. By a conceptually simple new technique we are able to keep the number of dummy vertices and edges linear in the size of the graph and hence reduce the worst-case time complexity of Sugiyama's approach by an order of magnitude to O((|V | + |E|) log |E|) requiring O(|V | + |E|) space.
Unified modelling language (UML) diagrams have become increasingly important in engineering and re-engineering processes for software systems. Of particular interest are UML class diagrams whose purpose is to display generalizations, associations, aggregations, and compositions in one picture. The combination of directed and undirected relations poses a special challenge to a graph layout tool. Current approaches for the automatic layout of class diagrams are based on the layered graph drawing paradigm. These algorithms produce good results for class diagrams with large and deep structural information, that is, diagrams with a large and deep inheritance hierarchy. However, they do not perform satisfactorily in absence of this information. We suggest to use the topology-shape-metrics paradigm for automatic layout of class diagrams, which has been used very successfully for drawing undirected graphs in orthogonal style. Moreover, we introduce the algorithms UML-Kandinsky and GoVisual fitting into this paradigm. Both algorithms work for class diagrams with rich structural information as well as for class diagrams with few or no structural information. Therefore, they improve the existing algorithms significantly.
Class diagrams are among the most popular visualizations for object oriented software systems and have a broad range of applications. In many settings it is desirable that the placement of the diagram elements is determined automatically, especially when the diagrams are generated automatically which is usually the case in reverse engineering. For this reason the automatic layout of class diagram gained importance in the last years. Current approaches for the automatic layout of class diagrams are based on the hierarchic graph drawing paradigm. These algorithms produce good results for class diagrams with large and deep structural information, i.e., diagrams with a large and deep inheritance hierarchy. However, they do not perform satisfactorily in absence of this information. We propose in this work a new algorithm for automatic layout of class diagram which is based on the topology-shape-metrics approach. The algorithm is an adaption of sophisticated graph drawing algorithms which have proven their effectiveness in many applications. The algorithm works as well for class diagrams with rich structural information as for class diagrams with few or no structural information. It improves therefore the existing algorithms significantly. An implementation of the algorithm is used in the reverse engineering tool JarInspector.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.