Skip to main content
Log in

Formalization of UML state machines using temporal logic

  • Regular paper
  • Published:
Software & Systems Modeling Aims and scope Submit manuscript

Abstract

The main purpose of this paper is to approach the use of formal methods in computing. In more specific terms, we use a temporal logic to formalize the most fundamental aspects of the semantics of UML state machines. We pay special attention to the dynamic aspects of the different operations associated with states and transitions, as well as the behaviour of transitions related with composite states. This, to the best of our knowledge, has not been done heretofore using temporal logic.

Our formalization is based on a temporal logic that combines points, intervals, and dates. Moreover this new temporal logic is built over an innovative and simple topological semantics, which simplifies the metatheory development.

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. 2U Consortium. UML 2 Submission, 2002. http://www.2uworks.org

  2. Allen, J.F.: Maintaining knowledge about temporal intervals. Communications of the ACM, 26(11): 832–843, 1983

  3. Allen, J.F.: Towards a general theory of action and time. Artificial Intelligence, 23(2): 123–154, 1984

  4. Anil Saldhana, J., Shatz, S.M.: UML diagrams to object Petri net models: An approach for modeling and analysis. In: Proceedings of the International Conference of Software and Knowledge Engineering SEKE’00, 2000, pp. 103–110

  5. Barroca, L.M., McDermid, J.A.: Formal methods: Use and relevance for the development of safety-critical systems. Computer Journal, 35(6): 579–599, 1992

  6. Bicarregui, J.C.: Exploiting formality in software engineering, 1999. Invited paper at SOFSEM’99, 26th Annual Conference on Current Trends in Theory and Practice of Informatics

  7. Booch, G.: Object-Oriented Analysis and Design with Applications. Addison Wesley, 1994

  8. Booch, G., Rumbaugh J., Jacobson I.: Unified Modeling Language User Guide. Addison-Wesley, 1999

  9. Börger, E., Cavarra, A., Riccobene, E.: Modeling the dynamics of UML statecharts. In: Proceedings of International Workshop on Abstract State Machines ASM’2000, 2000, pp. 223–241

  10. Chomicki, J., Saake, G. (eds.) Logics for database and information systems. Kluwer Academic Publishers, 1998

  11. de Guzmán, I.P., Rossi, C.: LNint: a temporal logic that combines points and intervals and the absolute and relative approaches. Journal of the IGPL, 3(5), 1995

  12. Derr, K.W.: Applying OMT. SIGS Books, 1995

  13. Diethers, K., Goltz, U., Huhn, M.: Model Checking UML Statecharts with Time. In: Jürjens, J., Cengarle, M.V., Fernandez, E.B., Rumpe, B., Sandner, R. (eds.) Wsh. Critical Systems Development with UML, Dresden, 2002, pp. 35–52. Technische Universität München, Institut für Informatik

  14. Enciso, M., de Guzmán, I.P., Rossi, C.: Using temporal logic to represent dynamic behaviour of UML statecharts. In: Hernández, J., Moreira, A. (eds.) ECOOP 2002 Workshop on Integration and Transformation of UML Models, Lecture Notes in Computer Science, vol. 2548. Springer-Verlag, 2002

  15. Gabbay, D.M.: The declarative past and imperative future, Lecture Notes in Computer Science, vol. 398. Springer Verlag, 1989

  16. Gnesi, S., Latella, D., Massink, M.: Modular semantics for a UML statechart diagrams kernel and their extension to multicharts and branching time model checking. The Journal of Logic and Algebraic Programming, 51(1): 43–75, 2002

  17. Gogolla, M., Presicce, F.P.: State diagrams in UML: a formal semantics using graph transformations. In: Proceedings of Workshop on Precise Semantics of Modeling Techniques PSMT’98, 1998, pp. 55–72

  18. Graw, G., Herrmann, P., Krumm, H.: Composing object-oriented specificactions and verifications with cTLA. In: Proceedings of Workshop on Semantics of Objects and Processes (SOAP’99). Lisboa, 1999, pp. 7–22

  19. Halpern, J., Shoham, Y.: A propositional modal logic of time intervals. Journal of the ACM, 38(4): 935–962, 1991

  20. Harel, D.: Statecharts: A visual formalism for complex systems. Science of Computer Programming, 5: 231–274, 1987

  21. Harel, D., Gery, E.: Executable object modeling with statecharts. Computer, 30(7): 31–42, 1997

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

  23. Hughes, G.E., Cresswell, M.J.: A New Introduction to Modal Logic. Routledge, 1996

  24. Jacobson, I., Christerson, M., Jonsson, P., Overgard, G.: Object-Oriented Software Engineering. A Use Case Driven Approach. Addison-Wesley, 1992

  25. Knapp, A., Merz, S., Rauh, C.: Model Checking Timed UML State Machines and Collaborations. In: Damm, W., Olderog, E.R. (eds.) Proc. 7th Int. Symp. Formal Techniques in Real-Time and Fault Tolerant Systems, Lect. Notes Comp. Sci., vol. 2469. Springer, Berlin, 2002, pp. 395–416

  26. Kroger, F.: Temporal logic of programs. Springer Verlag, 1987. In EATCS Monograph on Theoretical Computer Science

  27. Kutsia, T.: Unification with sequence variables and flexible arity symbols and its extension with pattern.terms. In: Artificial Intelligence, Automated Reasoning and Symbolic Computation. Proceedings of Joint AICS’2002 – Calculemos’2002 Conference, number 2385 in Lecture Notes in Artificial Intelligence. Springer-Verlag, 2002

  28. Lamport, L.: The temporal logic of actions. ACM Transactions on Programming Languages and Systems, 16(3): 872–923, 1994

  29. Lano, K.: Logical specification of reactive and real-time systems. Journal of Logic and Computation, 8(5): 679–711, 1998

  30. Lano, K., Bicarregui, J.C.: Formalising the UML in structured temporal theories. In: Proceedings of Second ECOOP Workshop on Precise Behavioral Semantics, Brussels, Belgium, 1998

  31. Latella, D., Majzik, I., Massink, M.: Automatic Verification of a Behavioural Subset of UML Statechart Diagrams Using the SPIN Model-Checker. Formal Aspects Comp., 11(6): 637–664, 1999

  32. Lavazza, L., Quaroni, G., Venturelli, M.: Combining UML and Formal Notations for Modelling Real-Time Systems. In: 8th Europ. Conf. Software Engineering, Wien, 2001

  33. Lilius, J., Porres, I.: The semantics of UML state machines. Technical report, Turku Centre for Computer Science, 1999

  34. Manna, Z., Pnueli, A.: Temporal verification of reactive systems: Safety. Springer-Verlag, 1995

  35. Object Management Group. Unified Modeling Language Specification, version 1.4, 2001

  36. Object Management Group. UML-Related Work In Progress, 2002. http://www.omg.org/uml

  37. Pnueli, A.: The temporal logic of programs. In: 18th Symposium on the foundations of Computer Science. IEEE, 1977

  38. Polle, T., Ripke, T., Schewe, K.D. (eds.) Fundamentals of information systems. Kluwer Academic Publishers, 1999

  39. Reggio, G.: Metamodelling behavioural aspects: the case of the UML state machines. Technical Report DISI-TR-02-3, Université di Genova, Italy, 2002

  40. Robertson, D., Agustí, J.: Software Blueprints: Lightweight Uses of Logic in Conceptual Modelling. Addison-Wesley, 1999

  41. Rossi, C.: Lógica Temporal de Intervalos. Formalización de Diagramas de Estados. PhD thesis, Universidad de Málaga, Spain, 2001

  42. Rumbaugh, J., Blaha, M., Premerlani, W., Eddy, F., Lorensen, W.: Object-Oriented Modeling and Design. Prentice Hall, 1991

  43. Schäfer, T., Knapp, A., Merz, S.: Model Checking UML State Machines and Collaborations. In: Stoller, S., Visser, W. (eds.) Proc. Wsh. Software Model Checking, Elect. Notes Theo. Comp. Sci., vol. 55(3). Paris, 2001

  44. Simons, A.J.: On the compositional properties of UML statechart diagrams. In: Clarke, A.N., Evans, A., Lano, K. (eds.) Proceedings of 3rd Conference on Rigourous Object-Oriented Methods, 2000, 2000, pp. 4.1–4.19

  45. Simons, A.J., Graham, I.: 30 things that go wrong in object modelling with UML. In: Kilov, H., Rumpe, B., Simmonds, I. (eds.) Precise Behavioral Specification of Businesses and Systems, chapter 17. Kluwer Academic Publishers, 1999

  46. Slotosch, O.: Overview over the project QUEST. In: Applied Formal Methods. Proceedings of FM-Trends 98, Boppard, Germany, Lecture Notes in Computer Science, vol. 1641. Springer Verlag, 1999, pp. 346–350

  47. U2 Partners. UML 2.0 Proposal, 2002. http://www.u2-partners.org

  48. von der Beeck, M.: A comparison of statechart variants. In: Formal Techniques in Real-Time and Fault-Tolerant Systems, in Lecture Notes in Computer Science, vol. 863. Springer-Verlag, 1994, pp. 128–148

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

Download references

Author information

Authors and Affiliations

Authors

Corresponding authors

Correspondence to Carlos Rossi, Manuel Enciso or Inmaculada P. de Guzmán.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Rossi, C., Enciso, M. & de Guzmán, I. Formalization of UML state machines using temporal logic. Softw Syst Model 3, 31–54 (2004). https://doi.org/10.1007/s10270-003-0029-7

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-003-0029-7

Keywords

Navigation