Abstract
We describe the semantics of statecharts as implemented in the current version of the Rhapsody tool. In its original 1996 version this was among the first executable semantics for object-oriented statecharts, and many of its fundamentals have been adopted in the Unified Modeling Language (UML). Due to the special challenges of object-oriented behavior, the semantics of statecharts in Rhapsody differs from the original semantics of statecharts in Statemate. Two of the main differences are: (i) in Rhapsody, changes made in a given step are to take effect in the current step and not in the next step; (ii) in Rhapsody, a step can take more than zero time. This paper constitutes the first description of the executable semantics of Rhapsody, highlighting the differences from the Statemate semantics and making an effort to explain the issues clearly but rigorously, including the motivation for some of the design decisions taken.
This research was supported in part by the John von Neumann Minerva Center for the Verification of Reactive Systems and by the European Commission project OMEGA (IST-2001-33522).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Booch, G.: Object Oriented Analysis and Design with Applications. Benjamin/Cummings, California (1994)
Borger, E., Cavarra, A., Riccobene, E.: Modeling the Dynamics of UML State Machines. In: Gurevich, Y., Kutter, P.W., Odersky, M., Thiele, L. (eds.) ASM 2000. LNCS, vol. 1912, pp. 223–241. Springer, Heidelberg (2000)
Damm, W., Josko, B., Pnueli, A., Votintseva, A.: Understanding UML: A Formal Semantics of Concurrency and Communication in Real-Time UML. In: de Boer, F.S., Bonsangue, M.M., Graf, S., de Roever, W.-P. (eds.) FMCO 2002. LNCS, vol. 2852, pp. 71–98. Springer, Heidelberg (2003)
Harel, D.: Statecharts: A visual formalism for complex systems. Science of Computer Programming 8, 231–274 (1987); (Preliminary version: Technical Report CS84-05, The Weizmann Institute of Science, Rehovot, Israel, February 1984)
Harel, D., Gery, E.: Executable Object Modeling with Statecharts. IEEE Computer 30(7), 31–42 (1997); (Also in Proc. 18th Int. Conf. Soft. Eng., Berlin, March 1996, pp. 246–257. IEEE Press, Los Alamitos (1996))
Harel, D., Naamad, A.: The statemate semantics of statecharts. ACM TRANS. Software Engineering and Methodology 5(4), 293–333 (1996)
Harel, D., Politi, M.: Modeling Reactive Systems with Statecharts: The STATEMATE Approach. McGraw-Hill, New York (1998)
Hooman, J., Van Der Zwaag, M.: A Semantics of Communicating Active Objects with Timing. In: Specification and Validation of UML Models for Real-Time and Embedded Systems, SVERTS 2003 (2003), Available from the European Project OMEGA homepage http://www-omega.imag.fr
I-logix,inc., products web page, http://www.ilogix.com/fs_prod.htm
Reggio, G., Astesiano, E., Choppy, C., Husmann, H.: Analysing UML active classes and associated statecharts - a lightweight formal approach. In: Maibaum, T. (ed.) FASE 2000. LNCS, vol. 1783, p. 127. Springer, Heidelberg (2000)
Rumbaugh, J., Blaha, M., Premerlani, W., Eddy, F., Lorensen, W.: Object Oriented Modeling and Design. Prentice-Hall, New York (1991)
Selic, B., Gullekson, G., Ward, P.: Real-Time Object-Oriented Modeling. John Wiley & Sons, New York (1994)
UML. Documentation of the unified modeling language (UML). Available from the Object Management Group (OMG), http://www.omg.org
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2004 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Harel, D., Kugler, H. (2004). The Rhapsody Semantics of Statecharts (or, On the Executable Core of the UML). In: Ehrig, H., et al. Integration of Software Specification Techniques for Applications in Engineering. Lecture Notes in Computer Science, vol 3147. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-27863-4_19
Download citation
DOI: https://doi.org/10.1007/978-3-540-27863-4_19
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-23135-6
Online ISBN: 978-3-540-27863-4
eBook Packages: Springer Book Archive