Structure, Abstraction, and Direct Manipulation in Diagram Editors

  • Oliver Köth
  • Mark Minas
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2317)


Editors for visual languages should be as simple and convenient to use as possible; at the same time, programmers should be able to create such editors without prohibitive effort. We discuss the benefits that can be gained from combining the following aspects in an editorgenerator approach:
  • direct-manipulation editing (as in drawing programs)

  • structure-based editing (as in common diagram tools)

  • structural analysis and a common formal model

As a major practical example, we present an editor for UML class diagrams. We show that direct-manipulation editing capabilities can enhance the usability of such an editor in comparison to standard tools. A further improvement is obtained by including selective abstraction features similar to the well-known “fisheye-viewing” and “semantic zooming” paradigms. We show that the proposed generator architecture provides an excellent base for implementing such features. The resulting technique can be applied to a wide range of different diagram languages; in contrast to other general solutions, it takes into account the abstract structure and specific abstraction features of the individual languages.


Graph Transformation Direct Manipulation Editing Operation Visual Language Generalization Arrow 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    R. Bardohl. GenGEd: A generic graphical editor for visual languages based on algebraic graph grammars. In Proc. 1998 Symp. on Visual Languages (VL’98), pages 48–55, 1998.Google Scholar
  2. [2]
    B. Bederson and J. Hollan. Pad++: a zooming graphical interface for exploring alternate interface physics. In Proc. Symposium on User Interface Software and Technology 1994 (UIST’94), pages 17–26, 1994.Google Scholar
  3. [3]
    B. Bederson and B. McAlister. Jazz: an extensible 2d+zooming graphics toolkit in Java. HICL Technical Report 99-07, University of Maryland, 1999.Google Scholar
  4. [4]
    F. Brandenburg, M. Himsolt, and C. Rohrer. An experimental comparison of force-directed and randomized graph drawing algorithms. In Proc. Graph Drawing 1995 (GD’95), LNCS 1027, pages 76–87, 1995.Google Scholar
  5. [5]
    S. S. Chok and K. Marriott. Automatic construction of user interfaces pen-based computers. In Proc. 3rd Int. Workshop on Advanced Visual Interfaces, Gubbio, Italy, 1996.Google Scholar
  6. [6]
    J. Clark and S. DeRose. XML path language (XPath). W3C recommendation 16 November 1999, W3C, 1999.
  7. [7]
    G. Costagliola, A. De Lucia, S. Orefice, and G. Tortora. A parsing methodology for the implementation of visual systems. IEEE Transactions on Software Engineering, 23(12):777–799, Dec. 1997.CrossRefGoogle Scholar
  8. [8]
    J. Ebert, R. Süttenbach, and I. Uhe. Meta-CASE in practice: a case for KOGGE. In Advanced Information Systems Engineering, Proc. 9th Int. Conf. (CAiSE’97), LNCS 1250, pages 203–216. Springer, 1997.Google Scholar
  9. [9]
    G. W. Furnas. The fisheye view: a new look at structured files. Technical Memorandum #81-11221-9, Bell Laboratories, 1981.Google Scholar
  10. [10]
    T. A. Keahey and E. L. Robertson. Techniques for non-linear magnification transformations. In Proc. IEEE Symp. on Information Visualization, IEEE Visualization, pages 38–45, 1996.Google Scholar
  11. [11]
    O. Köth. Semantisches Zoomen in Diagrammeditoren am Beispiel von UML. Master thesis, University of Erlangen-Nuremberg, 2001. (in German).Google Scholar
  12. [12]
    O. Köth and M. Minas. Generating diagram editors providing free-hand editing as well as syntax-directed editing. InProc. International Workshop on Graph Transformation (GraTra 2000), Berlin, March 2000.Google Scholar
  13. [13]
    K. Marriott, S. S. Chok, and A. Finlay. A tableau based constraint solving toolkit for interactive graphical application. In 4th International Conference on Principles and Practice of Constraint Programming (CP’98), Pisa, Italy, pages 340–354, Oct. 1998.Google Scholar
  14. [14]
    M. Minas. Creating semantic representations of diagrams. In M. Nagl and A. Schürr, editors, Int. Workshop on Applications of Graph Transformations with Industrial Relevance (Agtive’99), Selected Papers, LNCS 1779, pages 209–224. Springer, Mar. 2000.Google Scholar
  15. [15]
    M. Minas. Specifying and Generating Graphical Diagram Editors [in German: Spezifikation und Generierung graphischer Diagrammeditoren]. Shaker-Verlag, Aachen, 2001.Google Scholar
  16. [16]
    M. Minas. Concepts and realization of a diagram editor generator based on hypergraph transformation. Appears in Journal of Science of Computer Programming (SCP), 2002.Google Scholar
  17. [17]
    K. Misue, P. Eades, W. Lai, and K. Sugiyama. Layout adjustment and the mental map. Journal of Visual Languages and Computing, 6:183–210, 1995.CrossRefGoogle Scholar
  18. [18]
    Object Management Group. Unified Modelling Langugage Specification.
  19. [19]
    S. Pook, E. Lecolinet, G. Vaysseix, and E. Barillot. Context and interaction in zoomable user interfaces. In Proc. Advanced Visual Interfaces 2000 (AVI’2000), pages 227–231, 2000.Google Scholar
  20. [20]
    J. Rekers and A. Schürr. A graph based framework for the implementation of visual environments. In Proc. 1996 Symp. on Visual Languages (VL’96), pages 148–155, 1996.Google Scholar
  21. [21]
    M. Sarkar and M. H. Brown. Graphical fisheye views of graphs. In Proc. Conference on Human Factors in Computing Systems 1992 (CHI’92), pages 83–91, 1992.Google Scholar
  22. [22]
    D. Schaffer, Z. Zuo, S. Greenberg, L. Bartram, J. Dill, S. Dubs, and M. Roseman. Navigating hierarchically clustered networks through fisheye and full-zoom methods. ACM Transactions on CHI, 3(2):162–188, 1996.Google Scholar
  23. [23]
    M. Sheelagh, T. Carpendale, D. Coperthwaite, and F. Fracchia. Making distortions comprehensible. In Proc. 1997 Symp. on Visual Languages (VL’97), pages 36–45, 1997.Google Scholar
  24. [24]
    D.-Q. Zhang and K. Zhang. VisPro: A visual language generation toolset. In Proc. 1998 Symp. on Visual Languages (VL’98), pages 195–201, 1998.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2002

Authors and Affiliations

  • Oliver Köth
    • 1
  • Mark Minas
    • 1
  1. 1.Lehrstuhl für ProgrammiersprachenUniversität Erlangen-NürnbergErlangenGermany

Personalised recommendations