Skip to main content
Log in

A method for describing the syntax and semantics of UML statecharts

  • Special section on graph transformations and visual modeling techniques
  • Published:
Software & Systems Modeling Aims and scope Submit manuscript

Abstract

In this article we present a method for describing the language of UML statecharts. Statecharts are syntactically defined as attributed graphs, with well-formedness rules specified by a set of first-order predicates over the abstract syntax of the graphs. The dynamic semantics of statecharts is defined by Abstract State Machines parameterized with syntactically-correct attributed graphs. The presented approach covers many important constructs of UML statecharts, including internal, completion, interlevel and compound transitions as well as history pseudostates. It also contains strategies to handle state entry/exit actions, state activities, synch states and choice pseudostates.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Moses project (1997) Computer Engineering and Communications Laboratory, ETH Zurich. http://www.tik.ee.ethz.ch/∼moses

  2. Bardohl R, Taentzer G, Minas M, Schürr A (1999) Application of graph transformation to visual languages. In: [8]

  3. Börger E, Cavarra A, Riccobene E (2000) Modeling the dynamics of UML state machines. In: Proc. Abstract state machines, LNCS, vol 1912, pp 223–241

  4. Börger E, Cavarra A, Riccobene E (2001) Solving conflicts in UML state machine concurrent states. In: Workshop on Concurrency Issues in UML, UML’01, pp 4–7

  5. Börger E, Cavarra A, Riccobene E (2003) Modeling the meaning of transitions from and to concurrent states in UML state machines. In: ACM Symposium on Applied Computing, pp 1086–1091

  6. Compton K, Huggins J, Shen W (2000) A semantic model for the state machine in the Unified Modeling Language. In: Workshop on Dynamic Behavior in UML Models: Semantic Questions, UML’00, pp 25–31

  7. Ebert J, Winter A, Dahm P, Franzke A, Süttenbach R (1996) Graph based modeling and implementation with EER/GRAL. In: Proc. Conceptual Modeling, LNCS, vol 1157. Springer, pp 163–178

  8. Ehrig H, Engels G, Kreowski H-J, Rozenberg G (editors) (1999) Handbook of Graph Grammars and Computing by Graph Transformation, Volume 2: Applications, Languages and Tools. World Scientific

  9. Eshuis R, Wieringa R (2000) Requirements level semantics for UML statecharts. In: Proc. Formal Methods for Open Object-Based Distributed Systems. Kluwer, pp 121–140

  10. Esser R, Janneck JW (2001) Moses – a tool suite for visual modelling of discrete-event systems. In: IEEE Symposium on Visual/Multimedia Approaches to Programming and Software Engineering, HCC’01

  11. Gogolla M, Parisi-Presicce F (1998) State diagrams in UML – a formal semantics using graph transformation. In: Workshop on Precise Semantics of Modeling Techniques, ICSE’98, pp 55–72

  12. Gurevich Y (1994) Evolving algebras. In: IFIP 13th World Computer Congress, Volumn I: Technology/Foundations, pp 423–427

  13. Harel D, Naamad A (1996) The STATEMATE semantics of satecharts. ACM Transactions on Software Engineering and Methodology 5(4):293–333

    Article  Google Scholar 

  14. Harel D, Pnueli A, Schmidt JP, Sherman R (1987) On the formal semantics of statecharts. In: IEEE Symposium on Logic in Computer Science, pp 54–64

  15. Holzmann GJ (1997) The model checker SPIN. IEEE Transactions on Software Engineering 23(5):279–295

    Article  Google Scholar 

  16. Honeywell, Inc. (2000) DOME Guide. Version 5.2.2.

  17. Institute for Software Integrated Systems (2001) GME 2000 Users Manual. Version 1.1. Vanderbilt University

  18. Janneck JW (1998) Graph Type Definition Language (GTDL) – Specification. In [1]

  19. Janneck JW (2000) Syntax and semantics of graphs – An approach to the specification of visual notations for discrete-event systems. PhD thesis, ETH Zurich

  20. Janneck JW, Esser R (2001) A predicate-based approach to defining visual language syntax. In: Symposium on Visual Languages and Formal Methods, HCC’01

  21. Janneck JW, Kutter PW (1998) Mapping automata – simple abstract state machines. Technical Report 49, Computer Engineering and Networks Laboratory, ETH Zurich

  22. Jin Y, Esser R, Janneck JW (2002) Describing the syntax and semantics of UML statecharts in a heterogeneous modelling environment. In: Proc. Diagrammatic Representation and Inference, LNAI, vol 2317. Springer, pp 320–334

  23. Jin Y, Esser R, Lakos C (2003) Lightweight consistency analysis of dataflow process networks. In: Proc. Australasian Computer Science Conference, pp 291–300

  24. Jin Y, Esser R, Lakos C, Janneck JW (2003) Modular analysis of dataflow process networks. In: Proc. Fundamental Approaches to Software Engineering, LNCS, vol 2621, pp 184–199

  25. Jürjens J (2002) A UML statecharts semantics with message-passing. In: ACM Symposium on Applied Computing. ACM Press, pp 1009–1013

  26. Kuske S (2001) A formal semantics of UML state machines based on structured graph transformation. In: Proc. The Unified Modeling Language, LNCS, vol 2185, pp 241–256

  27. Kwon G (2000) Rewrite rules and operational semantics for model checking UML statecharts. In: Proc. The Unified Modeling Language, LNCS, vol 1939. Springer, pp 528–540

  28. Latella D, Majzik I, Massink M (1999) Towards a formal operational semantics of UML statechart diagrams. In: Proc. Formal Methods for Open Object-Based Distributed Systems. Kluwer, pp 331–347

  29. Lilius J, Paltor IP (1999) Formalising UML state machines for model checking. In: Proc. The Unified Modeling Language, LNCS, vol 1723. Springer, pp 430–445

  30. Minas M (2003) XML-based specification of diagram editors. In: Workshop on Uniform Approaches to Graphical Process Specification Techniques, ETAPS’03, ENTCS 82(7). Elsevier

  31. Object Management Group (2003) OMG Unified Modeling Language Specification. Version 1.5, http://www.omg.org

  32. Schäfer T, Knapp A, Merz S (2001) Model checking UML state machines and collaborations. In: Workshop on Software Model Checking, CAV’01, ENTCS 55(3). Elsevier Science B.V., pp 1–13

  33. Taentzer G, Ermel C, Rudolf M (1999) The AGG approach: Language and tool environment. In: [8], pp 551–603

  34. Varró D (2002) A formal semantics of UML statecharts by model transition systems. In: Proc. Graph Transformation, LNCS, vol 2505, pp 378–392

  35. von der Beeck M (2002) A structured operational semantics for UML-statecharts. Software and System Modeling 1(2):130–141

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Yan Jin.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Jin, Y., Esser, R. & Janneck, J. A method for describing the syntax and semantics of UML statecharts. Softw Syst Model 3, 150–163 (2004). https://doi.org/10.1007/s10270-003-0046-6

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-003-0046-6

Keywords

Navigation