{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,5,3]],"date-time":"2026-05-03T03:20:39Z","timestamp":1777778439810,"version":"3.51.4"},"reference-count":61,"publisher":"SAGE Publications","issue":"3","license":[{"start":{"date-parts":[[2004,9,1]],"date-time":"2004-09-01T00:00:00Z","timestamp":1093996800000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/journals.sagepub.com\/page\/policies\/text-and-data-mining-license"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Information Visualization"],"published-print":{"date-parts":[[2004,9]]},"abstract":"<jats:p>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\u2014metrics 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.<\/jats:p>","DOI":"10.1057\/palgrave.ivs.9500078","type":"journal-article","created":{"date-parts":[[2004,7,22]],"date-time":"2004-07-22T05:15:30Z","timestamp":1090473330000},"page":"189-208","source":"Crossref","is-referenced-by-count":22,"title":["Automatic Layout of UML Class Diagrams in Orthogonal Style"],"prefix":"10.1177","volume":"3","author":[{"given":"Markus","family":"Eiglsperger","sequence":"first","affiliation":[{"name":"Universit\u00e4t T\u00fcbingen, Germany"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Carsten","family":"Gutwenger","sequence":"additional","affiliation":[{"name":"Research Center Caesar, Bonn, Germany"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Michael","family":"Kaufmann","sequence":"additional","affiliation":[{"name":"Universit\u00e4t T\u00fcbingen, Germany"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Joachim","family":"Kupke","sequence":"additional","affiliation":[{"name":"Research Center Caesar, Bonn, Germany"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Michael","family":"J\u00fcnger","sequence":"additional","affiliation":[{"name":"University of Cologne, Germany"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Sebastian","family":"Leipert","sequence":"additional","affiliation":[{"name":"Research Center Caesar, Bonn, Germany"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Karsten","family":"Klein","sequence":"additional","affiliation":[{"name":"Research Center Caesar, Bonn, Germany"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Petra","family":"Mutzel","sequence":"additional","affiliation":[{"name":"Vienna University of Technology, Vienna, Austria"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Martin","family":"Siebenhaller","sequence":"additional","affiliation":[{"name":"Universit\u00e4t T\u00fcbingen, Germany"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"179","published-online":{"date-parts":[[2004,9,1]]},"reference":[{"key":"bibr1-palgrave.ivs.9500078","volume-title":"Unified Modeling Language User Guide","author":"Booch G","year":"1999"},{"key":"bibr2-palgrave.ivs.9500078","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-44541-2_2"},{"key":"bibr3-palgrave.ivs.9500078","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-63938-1_67"},{"key":"bibr4-palgrave.ivs.9500078","doi-asserted-by":"publisher","DOI":"10.1145\/264216.264222"},{"key":"bibr5-palgrave.ivs.9500078","doi-asserted-by":"publisher","DOI":"10.1109\/VISSOF.2002.1019791"},{"key":"bibr6-palgrave.ivs.9500078","unstructured":"Rational Software Corporation Rational Rose, Rational XDE, 2002."},{"key":"bibr7-palgrave.ivs.9500078","unstructured":"TogetherSoft Corporation Together Control Center. 2002."},{"key":"bibr8-palgrave.ivs.9500078","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-63938-1_86"},{"key":"bibr9-palgrave.ivs.9500078","doi-asserted-by":"publisher","DOI":"10.1109\/TSMC.1981.4308636"},{"key":"bibr10-palgrave.ivs.9500078","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-45848-4_49"},{"key":"bibr11-palgrave.ivs.9500078","unstructured":"Eichelberger H. Entwicklung eines Frameworks zum automatischen Zeichnen von Software-Entwurfsdiagrammen. Master's thesis, Universit\u00e4t W\u00fczburg, 1999."},{"key":"bibr12-palgrave.ivs.9500078","volume-title":"Design Patterns","author":"Gamma E","year":"1995"},{"key":"bibr13-palgrave.ivs.9500078","volume-title":"Object Oriented Design and Analysis","author":"Booch G.","year":"1994"},{"key":"bibr14-palgrave.ivs.9500078","doi-asserted-by":"publisher","DOI":"10.1109\/32.295895"},{"key":"bibr15-palgrave.ivs.9500078","volume-title":"Graph Theory","author":"Harary F.","year":"1972"},{"key":"bibr16-palgrave.ivs.9500078","volume-title":"Graph Drawing","author":"Di Battista G","year":"1998"},{"key":"bibr17-palgrave.ivs.9500078","doi-asserted-by":"crossref","first-page":"61","DOI":"10.1109\/21.87055","volume":"18","author":"Tamassia R","year":"1998","journal-title":"IEEE Transations on System, Man and Cybernetics"},{"key":"bibr18-palgrave.ivs.9500078","unstructured":"Lempel A, Even S, Cederbaum I. An algorithm for planarity testing of graphs. In: Theory of Graphs: International Symposium (Rome). Gordon and Breach: New York, 1967; 215\u2013232."},{"key":"bibr19-palgrave.ivs.9500078","doi-asserted-by":"publisher","DOI":"10.1016\/S0022-0000(76)80045-1"},{"key":"bibr20-palgrave.ivs.9500078","doi-asserted-by":"publisher","DOI":"10.1145\/321850.321852"},{"key":"bibr21-palgrave.ivs.9500078","doi-asserted-by":"publisher","DOI":"10.1016\/0022-0000(85)90004-2"},{"key":"bibr22-palgrave.ivs.9500078","doi-asserted-by":"publisher","DOI":"10.1007\/BF01940648"},{"key":"bibr23-palgrave.ivs.9500078","unstructured":"Liu PC, Geldmacher RC. On the deletion of nonplanar edges of a graph. In: Proceedings of the 10th Southeastern Conference on Combinatorics, Graph Theory, and Computing, 1977; 727\u2013738."},{"key":"bibr24-palgrave.ivs.9500078","first-page":"33","volume":"16","author":"J\u00fcnger M","year":"1996","journal-title":"Algorithmica, Special Issue on Graph Drawing"},{"key":"bibr25-palgrave.ivs.9500078","doi-asserted-by":"publisher","DOI":"10.1137\/0222068"},{"key":"bibr26-palgrave.ivs.9500078","doi-asserted-by":"publisher","DOI":"10.1109\/43.709399"},{"key":"bibr27-palgrave.ivs.9500078","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-540-24595-7_2"},{"key":"bibr28-palgrave.ivs.9500078","doi-asserted-by":"publisher","DOI":"10.1137\/0216030"},{"key":"bibr29-palgrave.ivs.9500078","doi-asserted-by":"crossref","unstructured":"Garg A, Tamassia R. On the complexity of upward and rectilinear planarity testing. In: Proceedings of the 2nd International Symposium on Graph Drawing (GD1994). Lecture Notes in Computer Science, Vol. 894, Springer: Berlin, 1995; 286\u2013297.","DOI":"10.1007\/3-540-58950-3_384"},{"key":"bibr30-palgrave.ivs.9500078","doi-asserted-by":"crossref","unstructured":"F\u00f6ssmeier U, Kaufmann M. Drawing high degree graphs with low bend numbers. In: Brandenburg FJ (Ed), Proceedings of the 3rd International Symposium on Graph Drawing (GD1995). Vol. 1027, Springer: Berlin, 1996; 254\u2013266.","DOI":"10.1007\/BFb0021809"},{"key":"bibr31-palgrave.ivs.9500078","doi-asserted-by":"publisher","DOI":"10.1109\/12.868028"},{"key":"bibr32-palgrave.ivs.9500078","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-44968-X_10"},{"key":"bibr33-palgrave.ivs.9500078","unstructured":"Patrignani M. On the complexity of orthogonal compaction. Technical. Report. RT-DIA-39\u201399, Dipartimento di Informatica e Automazione, Universit\u00e0 degli Studi di Roma Tre, January, 1999."},{"key":"bibr34-palgrave.ivs.9500078","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-44541-2_5"},{"key":"bibr35-palgrave.ivs.9500078","doi-asserted-by":"crossref","unstructured":"Di Battista G, Didimo W, Patrignani M, Pizzonia M. Orthogonal and quasi-upward drawings with vertices of prescribed size. In: Proceedings of the 7th International Symposium on Graph Drawing (GD1999). Lecture Notes in Computer Science, Kratochvil J (Ed), Vol. 1731, Springer: Berlin, 1999; 297\u2013310.","DOI":"10.1007\/3-540-46648-7_31"},{"key":"bibr36-palgrave.ivs.9500078","doi-asserted-by":"crossref","unstructured":"Eiglsperger M, Kaufmann M. Fast compaction for orthogonal drawings with vertices of prescribed size. In: Proceedings of the 9th International Symposium on Graph Drawing (GD192001). Vol. 2265, Springer: Berlin, 2001; 124\u2013138.","DOI":"10.1007\/3-540-45848-4_11"},{"key":"bibr37-palgrave.ivs.9500078","doi-asserted-by":"publisher","DOI":"10.1137\/S0097539794279626"},{"key":"bibr38-palgrave.ivs.9500078","doi-asserted-by":"publisher","DOI":"10.1007\/s00453-001-0083-x"},{"key":"bibr39-palgrave.ivs.9500078","doi-asserted-by":"publisher","DOI":"10.7155\/jgaa.00067"},{"key":"bibr40-palgrave.ivs.9500078","unstructured":"Eiglsperger M, Foessmeier U, Kaufmann M. Orthogonal graph drawing with constraints. In: Proceedings of the 11th ACM-SIAM Symposium on Discrete Algorithms, 2000; 3\u201311."},{"key":"bibr41-palgrave.ivs.9500078","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-37623-2_24"},{"key":"bibr42-palgrave.ivs.9500078","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-44968-X_34"},{"key":"bibr43-palgrave.ivs.9500078","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-46648-7_3"},{"key":"bibr44-palgrave.ivs.9500078","doi-asserted-by":"crossref","unstructured":"Binucci C, Didimo W, Liotta G, Nonato M. Labeling heuristics for orthogonal drawings. In: Proceedings of the 9th International Symposium on Graph Drawing (GD192001), Lecture Notes in Computer Science. Vol. 2275, Springer: Berlin, 2001; 139\u2013153.","DOI":"10.1007\/3-540-45848-4_12"},{"key":"bibr45-palgrave.ivs.9500078","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-36151-0_7"},{"key":"bibr46-palgrave.ivs.9500078","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-60313-1_145"},{"key":"bibr47-palgrave.ivs.9500078","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-36151-0_21"},{"key":"bibr48-palgrave.ivs.9500078","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-45848-4_5"},{"key":"bibr49-palgrave.ivs.9500078","volume-title":"Knickminimales Zeichnen 4-planarer Clustergraphen","author":"L\u00fctke-H\u00fcttemann D.","year":"1977"},{"key":"bibr50-palgrave.ivs.9500078","doi-asserted-by":"crossref","unstructured":"Eiglsperger M, Kaufmann M, Siebenhaller M. A topology-shapemetrics approach for the automatic layout of uml class diagrams. In: Proceedings of The ACM 2003 Symposium on Software Visualization. ACM:New York, 2003; 189\u2013198.","DOI":"10.1145\/774833.774860"},{"key":"bibr51-palgrave.ivs.9500078","unstructured":"OMG. Unified Modeling Language v1.4. http:\/\/www.omg.org\/technology\/documents\/formal\/uml.htm, 2001."},{"key":"bibr52-palgrave.ivs.9500078","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-322-92106-2"},{"key":"bibr53-palgrave.ivs.9500078","doi-asserted-by":"crossref","unstructured":"Freiwalds K, Dogrusoz U, Kikusts P. Disconnected graph layout and the polyomino packing approach. In: Proceedings of the 9th International Symposium on Graph Drawing (GD192001). Lecture Notes in Computer science, Vol. 2265, Springer: Berlin, 2001; 378\u2013391.","DOI":"10.1007\/3-540-45848-4_30"},{"key":"bibr54-palgrave.ivs.9500078","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-36151-0_1"},{"key":"bibr55-palgrave.ivs.9500078","doi-asserted-by":"crossref","unstructured":"Wiese R, Eiglsperger M, Kaufmann M. yfiles: visualization and automatic layout of graphs. In: Proceedings of the 9th International Symposium on Graph Drawing (GD1901). Lecture Notes in Computer Science, Springer: Berlin, 2001; 453\u2013454.","DOI":"10.1007\/3-540-45848-4_42"},{"key":"bibr56-palgrave.ivs.9500078","first-page":"89","volume":"21","author":"Eades P","year":"1986","journal-title":"Ars Combinatoria"},{"key":"bibr57-palgrave.ivs.9500078","doi-asserted-by":"publisher","DOI":"10.1109\/32.221135"},{"key":"bibr58-palgrave.ivs.9500078","first-page":"1","volume":"1","author":"J\u00fcnger M","year":"1996","journal-title":"Journal of Graph Algorithms and Applications (JGAA)"},{"key":"bibr59-palgrave.ivs.9500078","unstructured":"Klau GW, Mutzel P. Quasi-orthogonal drawing of planar graphs. Technical. Report. MPI-I-98\u20131\u2013013, Max-Planck-Institut f\u00fcr Informatik, Saarbr\u00fccken. 1998."},{"key":"bibr60-palgrave.ivs.9500078","unstructured":"Gutwenger C, Klein K, Kupke J, Leipert S, J\u00fcnger M, Mutzel P. Govisual software tools. http:\/\/www.oreas.de, 2002."},{"key":"bibr61-palgrave.ivs.9500078","doi-asserted-by":"crossref","unstructured":"Gutwenger C, Junger M, Klein K, Kupka J, Leiperh S, Mutzel P. A new approach for visualizing uml class diagrams. In: Proceedings of the ACM 2003 Symposium on Software Visualization. ACM: New York, 2003; 179\u2013188.","DOI":"10.1145\/774833.774859"}],"container-title":["Information Visualization"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/journals.sagepub.com\/doi\/pdf\/10.1057\/palgrave.ivs.9500078","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/journals.sagepub.com\/doi\/pdf\/10.1057\/palgrave.ivs.9500078","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2026,4,29]],"date-time":"2026-04-29T19:19:31Z","timestamp":1777490371000},"score":1,"resource":{"primary":{"URL":"https:\/\/journals.sagepub.com\/doi\/10.1057\/palgrave.ivs.9500078"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2004,9]]},"references-count":61,"journal-issue":{"issue":"3","published-print":{"date-parts":[[2004,9]]}},"alternative-id":["10.1057\/palgrave.ivs.9500078"],"URL":"https:\/\/doi.org\/10.1057\/palgrave.ivs.9500078","relation":{},"ISSN":["1473-8716","1473-8724"],"issn-type":[{"value":"1473-8716","type":"print"},{"value":"1473-8724","type":"electronic"}],"subject":[],"published":{"date-parts":[[2004,9]]}}}