An Algorithmic Framework for Visualizing Statecharts

  • R. Castelló
  • R. Mili
  • I. G. Tollis
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1984)

Abstract

Statecharts [9] are widely used for the requirements specification of reactive systems. In this paper, we present a framework for the automatic generation of layouts of statechart diagrams. Our framework is based on several techniques that include hierarchical drawing, labeling, and floorplanning, designed to work in a cooperative environment. Therefore, the resulting drawings enjoy several important properties: they emphasize the natural hierarchical decomposition of states into substates; they have a low number of edge crossings; they have good aspect ratio; and require a small area. We have implemented our framework and obtained drawings for several statechart examples. The preliminary drawings are very encouraging.

References

  1. 1.
    G. Di Battista, P. Eades, R. Tamassia, and I. G. Tollis. Algorithms for drawing graphs: an annotated bibliography. Comput. Geom. Theory Appl., (4):235–282, 1994.MATHGoogle Scholar
  2. 2.
    G. Di Battista, P. Eades, R. Tamassia, and I. G. Tollis. Graph Drawing: Algorithms for the Visualization of Graphs. Prentice Hall, 1999.Google Scholar
  3. 3.
    G. Booch, I. Jacobson, and J. Rumbaugh. The Unified Modeling Language User Guide. Addison-Wesley, 1998.Google Scholar
  4. 4.
    R. Castelló, R. Mili, and I. G. Tollis. Automatic layout of statecharts. Technical Report UTD-04-00, University of Texas at Dallas, 2000.Google Scholar
  5. 5.
    P. Eades and Q. Feng. Drawing clustered graphs on an orthogonal grid. In G. Di Battista, editor, Graph Drawing (Proceedings GD’97), pages 146–157. Springer-Verlag, 1997. Lecture Notes in Computer Science 1353.Google Scholar
  6. 6.
    P. Eades, Q. Feng, and X. Lin. Straight-line drawing algorithms for hierarchical graphs and clustered graphs. In S. North, editor, Graph Drawing (Proceedings GD’96), pages 113–128. Springer-Verlag, 1997. Lecture Notes in Computer Science 1190.Google Scholar
  7. 7.
    E.R.G., E. Koutsofios, S.C. North, and K. Vo. A technique for drawing directed graphs. IEEE Transactions on Software Engineering, 19(32):214–230, March 1993.Google Scholar
  8. 8.
    E. R. Gansner, S. C. North, and K. P. Vo. Dag-a program that draws directed graphs. Software Practice and Experience, 18(11):1047–1062, November 1988.MATHCrossRefGoogle Scholar
  9. 9.
    D. Harel. Statecharts: A visual formalism for complex systems. Science of Computer Programming, 8(3):231–274, June 1987.MATHCrossRefMathSciNetGoogle Scholar
  10. 10.
    D. Harel, H. Lachover, A. Naamad, A. Pnueli, M. Politi, R. Sherman, A. Shtull-Trauring, and M. Trakhtenbrot. Statemate: A working environment for the development of complex reactive systems. IEEE Transactions on Software Engineering, 16(4):403–414, May 1990.CrossRefGoogle Scholar
  11. 11.
    D. Harel and G. Yashchin. An algorithm for blob hierarchy layout. In Proceedings of International Conference on Advanced Visual Interfaces, AVI’2000, Palermo, Italy, May 1990.Google Scholar
  12. 12.
    E. Imhof. Positioning names on maps. The American Cartographer, 2(2):128–144, 1975.CrossRefGoogle Scholar
  13. 13.
    K. G. Kakoulis and I. G. Tollis. An algorithm for labeling edges of hierarchical drawings. In G. Di Battista, editor, Graph Drawing (Proceedings GD’97), pages 169–180. Springer-Verlag, 1997. Lecture Notes in Computer Science 1353.Google Scholar
  14. 14.
    K. G. Kakoulis and I. G. Tollis. On the edge label placement problem. In S. North, editor, Graph Drawing (Proceedings GD’96), pages 241–256. Springer-Verlag, 1997. Lecture Notes in Computer Science 1190.Google Scholar
  15. 15.
    E. S. Kuh and T. Ohtsuki. Recent advances in VLSI layout. Proceedings of the IEEE, 78(2):237–263, 1990.Google Scholar
  16. 16.
    T. Lengauer. Combinatorial Algorithms for Integrated Circuit Layout. John Wiley & Sons, 1990.Google Scholar
  17. 17.
    E. B. Messinger, L. A. Rowe, and R. R. Henry. A divide-an-conquer algorithm for the automatic layout of large graphs. IEEE Transactions on Systems, Man, and Cybernetics, 21(1):1–11, February 1991.CrossRefMathSciNetGoogle Scholar
  18. 18.
    R. O’Donnel, B. Waldt, and J. Bergstrand. Automatic code for embedded systems based on formal methods. Available from Telelogic over the Internet. http://www.Telelogic.se/solution/techpap.asp. Accessed on April 1999.
  19. 19.
    J. Peterson. Overcoming the crisis in real-time software development. Available from Objectime over the Internet. http://www.Objectime.on.ca/otl/technical/crisis.pdf. Accessed on April 1999.
  20. 20.
    H. Purchase. Which aesthetic has the greatest effect on human understanding. In G. Di Battista, editor, Graph Drawing (Proceedings GD’97), pages 248–261. Springer-Verlag, 1997. Lecture Notes in Computer Science 1353.Google Scholar
  21. 22.
    L. A. Rowe, M. Davis, E. Messinger, and C. Meyer. A bowser for directed graphs. Software Practice and Experience, 17(1):61–76, January 1987.CrossRefGoogle Scholar
  22. 23.
    J. Seeman. Extending the sugiyama algorithm for drawing UML class diagrams: Towards automatic layout of object-oriented software diagrams. In G. Di Battista, editor, Graph Drawing (Proceedings GD’97), pages 415–424. Springer-Verlag, 1997. Lecture Notes in Computer Science 1353.Google Scholar
  23. 24.
    L. Stockmeyer. Optimal orientations of cells in slicing floorplan designs. Information and Control, (57):91–101, 1983.MATHCrossRefMathSciNetGoogle Scholar
  24. 25.
    K. Sugiyama, S. Tagawa, and M. Toda. Methods for visual understanding of hierarchical system structures. IEEE Transactions on Systems, Man, and Cybernetics, 11(2):109–125, February 1981.CrossRefMathSciNetGoogle Scholar
  25. 27.
    S. Wimer, I. Koren, and I. Cederbaum. Floorplans, planar graphs and layout. IEEE Transactions on Circuits and Systems, pages 267–278, 1988.Google Scholar
  26. 28.
    P. Yoeli. The logic of automated map lettering. The Cartographic Journal, 9(2):99–108, 1972.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2001

Authors and Affiliations

  • R. Castelló
    • 1
  • R. Mili
    • 1
  • I. G. Tollis
    • 1
  1. 1.Department of Computer ScienceThe University of Texas at DallasRichardsonUSA

Personalised recommendations