Abstract
The aim of this work is to provide a formal foundation for the unambiguous description of real-time, reactive, embedded systems in UML. For this application domain, we define the meaning of basic class diagrams where the behavior of objects is described by state machines. These reactive objects may communicate by means of asynchronous signals and synchronous operation calls. The notion of a thread of control is captured by a so-called activity group, i.e., a set of objects which contains exactly one active object and where at most one object may be executing. Explicit timing is realized via local clocks and an urgency predicate on transitions. We define a formal semantics for this kernel language, list a number of questions that arose, and discuss the decisions taken. The resulting semantics has been defined in the typed logic of the interactive theorem prover PVS, thus enabling formal verification based on this semantics.
Similar content being viewed by others
References
Abadi, M., Lamport, L.: An old-fashioned recipe for real time. ACM Trans. Progr. Lang. Syst. 16, 1543–1571 (1994)
Alur, R., Dill, D.L.: A theory of timed automata. Theor. Comput. Sci. 126, 183–235 (1994)
Arons, T., Hooman, J., Kugler, H., Pnueli, A., van der Zwaag, M.: Deductive verification of UML models in TLPVS. In: Proceedings of the UML 2004, LNCS 3273, pp. 335–349. Springer, Berlin Heidelberg New York (2004)
Bornot, S., Sifakis, J.: Relating time progress and deadlines in hybrid systems. In: Proceedings of the International Workshop, HART'97, Grenoble, LNCS 1201, pp. 286–300. Spinger, Berlin Heidelberg New York (1997)
Damm, W., Josko, B., Pnueli, A., Votintseva, A.: Understanding UML: a formal semantics of concurrency and communication in real-time UML. In: Proceedings of the Symposium on Formal Methods for Objects and Components (FMCO 2002), LNCS 2852, pp. 71–98. Springer, Berlin Heidelberg New York (2003)
Damm, W., Josko, B., Votintseva, A., Pnueli, A.: A formal semantics for a UML kernel language. Available via http://www-omega.imag.fr/ Part I of IST/33522/WP1.1/D1.1.2, Omega Deliverable (2003)
de Boer, F.S.: A proof rule for process creation. In: Proceedings of the Third IFIP WG 2.2 Working Conference (Formal Description of Programming Concepts 3) (1987)
Graf, S., Ober, I.: A real-time profile for UML and how to adapt it to SDL. In: Proceedings of the SDL 2003: System Design, SDL Forum, LNCS 2708, pp. 55–76 (2003)
Harel, D., Gery, E.: Executable object modeling with statecharts. IEEE Comput. 30, 31–42 (1997)
Harel, D., Kupfermann, O.: On the behavioral inheritance of state-based objects. In: Proceedings of the 34th International Conference on Component and Object Technology. IEEE Computer Society, Washington, DC (2000)
Hooman, J., van der Zwaag, M.B.: UML semantics in PVS. http://www.cs.ru.nl/∼hooman/STTTpvs.html
IBM/Rational. Rose RealTime. http://www.ibm.com/
Ilogix. Rhapsody. http://www.ilogix.com/
Lilius, J., Paltor, I.P.: Formalising UML state machines for model checking. In: Proceedings of the UML 1999, LNCS 1723, pp. 430–444. Springer, Berlin Heidelberg New York (1999)
Owre, S., Rushby, J., Shankar, N.: PVS: a prototype verification system. In: Proceedings of the 11th Conference on Automated Deduction. Lecture Notes in Artificial Intelligence, vol. 607, pp. 748–752. Springer, Berlin Heidelberg New York (1992)
Pnueli, A., Arons, T.: TLPVS: a PVS-based LTL verification system. In: Proceedings of the Symposium on Verification: (Theory and Practice), LNCS 2772, pp. 598–625. Springer, Berlin Heidelberg New York (2003)
Reggio, G., Astesiano, E., Choppy, C., Hußmann, H.: Analysing UML active classes and associated statecharts—a lightweight formal approach. In: Proceedings of the FASE 2000–Fundamental Approaches to Software Engineering, LNCS 1783, pp. 127–146. Springer, Berlin Heidelberg New York (2000)
Selic, B., Gullekson, G., Ward, P.T.: Real-time object-oriented modeling. Wiley, New York (1994)
UML: Documentation of the unified modeling language (uml). Available from the Object Management Group (OMG), http://www.uml.org/
Uppaal: http://www.uppaal.com/
Author information
Authors and Affiliations
Corresponding author
Additional information
This work has been supported by EU-project IST 33522—Omega “Correct Development of Real-Time Embedded Systems.” For more information, see http://www-omega.imag.fr/.
Rights and permissions
About this article
Cite this article
Hooman, J., van der Zwaag, M.B. A semantics of communicating reactive objects with timing. Int J Softw Tools Technol Transfer 8, 97–112 (2006). https://doi.org/10.1007/s10009-005-0207-8
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10009-005-0207-8