Statecharts is a well-known specification language for modeling system behavior. Its intuitive graphical appeal for specifying hierarchical, concurrent state machines conceals the difficulties in formalizing its semantics. The causes are in Statecharts’ two-level semantics when demanding compositionality, as is necessary in order to obtain easy comprehensibility and modularity of system specifications. This paper suggests a compositional approach for formalizing the Statecharts semantics directly on sequences of micro steps using labeled transition systems as semantical domain. Though we consider causality, global consistency, as well as the synchrony hypothesis, our approach results in a very short and concise semantics definition of Statecharts.


Statecharts operational semantics compositionality 


  1. [1]
    G. Berry and G. Gonthier. The ESTEREL synchronous programming language: Design, semantics, implementation. Science of Computer Programming, 19 (2): 87–152, 1992.CrossRefMATHGoogle Scholar
  2. [2]
    G. Booch, J. Rumbaugh, and I. Jacobson. The Unified Modeling Language User Guide. Addison-Wesley, 1999.Google Scholar
  3. [3]
    W. Damm, B. Josko, H. Hungar, and A. Pnueli. A compositional real-time semantics of STATEMATE designs. In W.-P. de Roever, H. Langmaack, and A. Pnueli, editors, Compositionality: The Significant Difference, volume 1536 of Lecture Notes in Computer Science, pages 186–238. Springer-Verlag, September 1997.Google Scholar
  4. [4]
    D. Harel. Statecharts: A visual formalism for complex systems. Science of Computer Programming, 8: 231–274, 1987.MathSciNetCrossRefMATHGoogle Scholar
  5. [5]
    D. Harel and A. Naamad The STATEMATE semantics of State-charts. ACM Transactions on Software Engineering, 5 (4): 293–333, October 1996.CrossRefGoogle Scholar
  6. [6]
    D. Harel, A. Pnueli, J Schmidt, and R. Sherman. On the formal semantics of Statecharts. In Symposium on Logic in Computer Science (LICS ‘87), pages 56–64, Ithaca, NY, USA, June 1987. IEEE Computer Society Press.Google Scholar
  7. [7]
    C. Huizing and R. Gerth. On the semantics of reactive systems. Technical report, Eindhoven University of Technology, 1990.Google Scholar
  8. [8]
    D. Latella, I. Majzik, and M. Massink. Towards a formal operational semantics of UML Statechart diagrams. In Formal Methods for Open Object-based Distributed Systems. Chapman & Hall, 1999.Google Scholar
  9. [9]
    F. Levi. Verification of Temporal and Real-Time Properties of Statecharts. PhD thesis, University of Pisa-Genova-Udine, Pisa, Italy, February 1997.Google Scholar
  10. [10]
    G. Lüttgen, M. von der Beeck, and R. Cleaveland. A Compositional Approach to Statecharts Semantics. submitted for publication.Google Scholar
  11. [11]
    G. Lüttgen, M. von der Beeck, and R. Cleaveland. Statecharts via process algebra. In J. C. M. Baeten and S. Mauw, editors, Concurrency Theory (CONCUR ‘89), volume 1664 of Lecture Notes in Computer Science, Eindhoven, The Netherlands, August 1999. Springer-Verlag.Google Scholar
  12. [12]
    A. Maggiolo-Schettini, A. Peron, and S. Tini. Equivalences of Statecharts In U. Montanari and V. Sassone, editors, CONCUR ‘86 (Concurrency Theory), volume 1119 of Lecture Notes in Computer Science, pages 687–702, Pisa, Italy, August 1996. Springer-Verlag.Google Scholar
  13. [13]
    F. Maraninchi. Operational and compositional semantics of synchronous automaton compositions. In R. Cleaveland, editor, CONCUR ‘82 (Concurrency Theory), volume 630 of Lecture Notes in Computer Science, pages 550–564, Stony Brook, NY, USA, August 1992. Springer-Verlag.Google Scholar
  14. [14]
    E. Mikk, Y. Lakhnech, and M. Siegel. Hierarchical automata as model for Statecharts In Proceedings of Asian Computing Science Conference (ASIAN ‘87), volume 1345 of Lecture Notes in Computer Science. Springer-Verlag, December 1997.Google Scholar
  15. [15]
    I. Paltor and J. Lilius. Formalising UML state machines for model checking. In R. France and B. Rumpe, editors, UML’99 - The Unified Modeling Language. Beyond the Standard., volume 1723 of LNCS. Springer, 1999.Google Scholar
  16. [16]
    G. Plotkin. A structural approach to operational semantics. Technical Report DAIMI-FN-19, Computer Science Department, Aarhus University, Denmark, 1981.Google Scholar
  17. [17]
    A. Pnueli and M. Shalev. What is in a step: On the semantics of Statecharts. In T. Ito and A. Meyer, editors, Theoretical Aspects of Computer Software (TACS ‘81), volume 526 of Lecture Notes in Computer Science, pages 244–264, Sendai, Japan, September 1991. Springer-Verlag.CrossRefGoogle Scholar
  18. [18]
    P. Scholz. Design of Reactive Systems and their Distributed Implementation with Statecharts. PhD thesis, Munich University of Technology, Munich, Germany, August 1998.Google Scholar
  19. [19]
    B. Selic, G. Gullekson, and P. Ward. Real-time Object Oriented Modeling and Design. J. Wiley, 1994.Google Scholar
  20. [20]
    A. Uselton and S. Smolka. A compositional semantics for State-charts using labeled transition systems. In B. Jonsson and J. Par-row, editors, CONCUR ‘84 (Concurrency Theory), volume 836 of Lecture Notes in Computer Science, pages 2–17, Uppsala, Sweden, August 1994. Springer-Verlag.Google Scholar
  21. [21]
    A. Uselton and S. Smolka. A process-algebraic semantics for Statecharts via state refinement. In Proceedings of PROCOMET ‘84. North Holland/Elsevier, 1994.Google Scholar
  22. [22]
    M. von der Beeck. A comparison of Statecharts variants. In H. Langmaack, W. Roever, and J. Vytopil, editors, Formal Techniques in Real-Time and Fault-Tolerant Systems (FTRTFT ‘84), volume 863 of Lecture Notes in Computer Science, pages 128–148, Lübeck, Germany, September 1994. Springer-Verlag.CrossRefGoogle Scholar

Copyright information

© IFIP International Federation for Information Processing 2000

Authors and Affiliations

  • Michael von der Beeck
    • 1
  1. 1.Department of Computer ScienceMunich University of TechnologyMünchenGermany

Personalised recommendations