UML Vs. Classical Vs. Rhapsody Statecharts: Not All Models Are Created Equal

  • Michelle L. Crane
  • Juergen Dingel
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3713)


State machines, represented by statecharts or statechart diagrams, are an important formalism for behavioural modelling. According to the research literature, the most popular statechart formalisms appear to be Classical, UML, and that implemented by Rhapsody. These three formalisms seem to be very similar; however, there are several key syntactic and semantic differences. These differences are enough that a model written in one formalism could be ill-formed in another formalism. Worse, a model from one formalism might actually be well-formed in another, but be interpreted differently due to the semantic differences. This paper summarizes the results of a comparative study of these three formalisms with the help of several illustrative examples. Then, we present a classification of the differences together with a comprehensive overview.


State Machine Semantic Concept Static Choice Object Management Group Outgoing Transition 
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.
    Berry, G., Gonthier, G.: The ESTEREL synchronous programming language: design, semantics, implementation. Science of Comp. Prog. 19, 87–152 (1992)zbMATHCrossRefGoogle Scholar
  2. 2.
    Booch, G., Rumbaugh, J., Jacobson, I.: The Unified Modeling Language User Guide. Addison-Wesley, Reading (1999)Google Scholar
  3. 3.
    Douglass, B.P.: Real Time UML, 3rd edn. Object Technology Series. Addison-Wesley, Reading (2004)Google Scholar
  4. 4.
    Gogolla, M., Parisi-Presicce, F.: State diagrams in UML: A formal semantics using graph transformations. In: Proc. Workshop on Precise Semantics for Modelling Techniques, Technische Universität München, TUM-I9803, pp. 55–72 (1998)Google Scholar
  5. 5.
    Harel, D.: Statecharts: A visual formalism for complex systems. Science of Computer Programming 8(3), 231–274 (1987)zbMATHCrossRefMathSciNetGoogle Scholar
  6. 6.
    Harel, D.: Some thoughts on statecharts, 13 years later. In: Grumberg, O. (ed.) CAV 1997. LNCS, vol. 1254, pp. 226–231. Springer, Heidelberg (1997)Google Scholar
  7. 7.
    Harel, D., Gery, E.: Executable object modeling with statecharts. Computer 30(7), 31–42 (1997)CrossRefGoogle Scholar
  8. 8.
    Harel, D., Kugler, H.: The RHAPSODY semantics of statecharts (on, on the executable core of the UML) (preliminary version). In: Ehrig, H., Damm, W., Desel, J., Große-Rhode, M., Reif, W., Schnieder, E., Westkämper, E. (eds.) INT 2004. LNCS, vol. 3147, pp. 325–354. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  9. 9.
    Harel, D., Naamad, A.: The STATEMATE semantics of statecharts. ACM Transactions on Software Engineering and Methodology 5(4), 293–333 (1996)CrossRefGoogle Scholar
  10. 10.
    Harel, D., Pnueli, A., Schmidt, J.P., Sherman, R.: On the formal semantics of statecharts. In: Proc. of the 2nd IEEE Symposium on Logic in Computer Science, pp. 54–64. Computer Society Press of the IEEE, Los Alamitos (1987)Google Scholar
  11. 11.
    Harel, D., Politi, M.: Modeling Reactive Systems with Statecharts: the STATEMATE Approach. McGraw-Hill, New York (1998)Google Scholar
  12. 12.
    I-Logix. Rhapsody 6.0 User GuideGoogle Scholar
  13. 13.
    I-Logix. Tutorial for Rhapsody in J, Release 4.1 MR2 (2003)Google Scholar
  14. 14.
    Lüttgen, G., von der Beeck, M., Cleaveland, R.: A compositional approach to statecharts semantics. In: Proc.8th ACM SIGSOFT Int’ll Symposium on Foundations of Software Engineering, pp. 120–129. ACM Press, New York (2000)Google Scholar
  15. 15.
    Mikk, E.: Semantics and Verification of Statecharts. PhD thesis, Christian- Albrechts University of Kiel, 2000. Bericht Nr (2011)Google Scholar
  16. 16.
    OMG. OMG Unified Modeling Language specification. Adopted Formal Specification formal/03-03-01, Object Management Group, 2003. Version 1.5 (2003) Google Scholar
  17. 17.
    OMG. UML 2.0 infrastructure specification. Technical Report ptc/03-09-15, Object Management Group (2004)Google Scholar
  18. 18.
    OMG. UML 2.0 superstructure specification. Technical Report ptc/04-10-02, Object Management Group (2004) Google Scholar
  19. 19.
    Pnueli, A., Shalev, M.: What is in a step: On the semantics of statecharts. In: Ito, T., Meyer, A.R. (eds.) TACS 1991. LNCS, vol. 526, pp. 244–264. Springer, Heidelberg (1991)Google Scholar
  20. 20.
    Selic, B.: The pragmatics of model-driven development. IEEE Software 20(5), 19–25 (2003)CrossRefGoogle Scholar
  21. 21.
    Selic, B.: Personal Communication (March 2005)Google Scholar
  22. 22.
    von der Beeck, M.: A comparison of statecharts variants. In: Langmaack, H., de Roever, W.-P., Vytopil, J. (eds.) FTRTFT 1994 and ProCoS 1994. LNCS, vol. 863, pp. 128–148. Springer, Heidelberg (1994)Google Scholar
  23. 23.
    von der Beeck, M.: A structured operational semantics for UML-statecharts. Software and Systems Modeling 1(2), 130–141 (2002)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Michelle L. Crane
    • 1
  • Juergen Dingel
    • 1
  1. 1.School of ComputingQueen’s UniversityKingstonCanada

Personalised recommendations