Skip to main content
Log in

A compositional semantics of UML-RSDS

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

Abstract

This paper provides a semantics for the UML-RSDS (Reactive System Development Support) subset of UML, using the real-time action logic (RAL) formalism. We show how this semantics can be used to resolve some ambiguities and omissions in UML semantics, and to support reasoning about specifications using the B formal method and tools. We use ‘semantic profiles’ to provide precise semantics for different semantic variation points of UML. We also show how RAL can be used to give a semantics to notations for real-time specification in UML. Unlike other approaches to UML semantics, which concentrate on the class diagram notation, our semantic representation has behaviour as a central element, and can be used to define semantics for use cases, state machines and interactions, in addition to class diagrams.

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.

Institutional subscriptions

Similar content being viewed by others

References

  1. Abrial J.-R. (1996). The B Book: Assigning Programs to Meanings. Cambridge University Press, Cambridge

    MATH  Google Scholar 

  2. Androutsopoulos, K.: Verification of reactive system specifications using model checking. Ph.D. thesis, King’s College, London (2004)

  3. Aruchamy, G., Kim Cheng, A.M.: Translating real-time UML timing constraints into real-time logic formulas. Technical Report UH-CS-06-07, University of Houston, Houston (2006)

  4. B4Free (2006) B4Free, http://www.b4free.com

  5. Bicarregui, J.C., Lano, K.C., Maibaum, T.S.E.: Objects, associations and subsystems: a hierarchical approach to encapsulation. In: ECOOP 97, LNCS. Springer, Heidelberg (1997)

  6. Bicarregui, J.C., Lano, K.C., Maibaum, T.S.E.: Towards a compositional interpretation of object diagrams. In: Proceedings of IFIP TC2 Working Conference on Algorithmic Languages and Calculi, February, 1997

  7. Bowen, J., Hinchey, M.: Ten commandments ten years on: An assessment of formal methods usage. In: Eleftherakis, M. (ed.) SEEFM05: 2nd South-East European Workshop on Formal Methods, pp. 1–16 (2006)

  8. Broy, M., Cengarle, M., Rumpe, B.: Towards a system model for UML. UML Semantics Project document 06.06.04 System Model Part 1 (2006)

  9. B-Core UK Ltd. The BToolkit (2005)

  10. Chiaradia, J.M., Pons, C.: Improving the OCL semantics definition by applying dynamic meta modelling and design patterns. In: OCL for (Meta-) Models in Multiple Application Domains. TUD-FI06-04 (2006)

  11. Clark, T., Evans, A., Kent, S., Sammut, P.: The MMF approach to engineering object-oriented design languages. In: Workshop on Language Descriptions, Tools and Applications, LDTA (2001)

  12. Damm W., Josko B., Pnueli A., Votintseva A.: A discrete-time UML semantics for concurrency and communication in safety-itical applications. Sci. Comput. Program. 55, 81–115 (2005)

    Article  MATH  MathSciNet  Google Scholar 

  13. Dierks, H.: Comparing model-checking and logical reasoning for real-time systems. In: ESSLLI ’98, Workshop proceedings, pp. 13–22 (1998)

  14. Evans, A., Kent, S.: Core meta-modelling semantics of UML: The pUML approach. In: UML ’99, pp. 140–155 (1999)

  15. Fecher, H., Schonborn, J., Kyas, M., de Roever, W.-P.: 29 new unclarities in the semantics of UML 2.0 state machines. In: Formal Methods and Software Engineering ICFEM 2005, vol. 3785, LNCS, pp. 52–65. Springer, Heidelberg (2005)

  16. Fiadeiro, J., Maibaum, T.: Describing, structuring and implementing objects. In: Foundations of Object Oriented languages, vol. 489 of LNCS. Springer, Heidelberg (1991)

  17. Fiadeiro, J., Maibaum, T.: Sometimes “tomorrow” is “sometime”. In: Temporal Logic, vol. 827 of Lecture Notes in Artificial Intelligence, pp. 48–66. Springer, Heidelberg (1994)

  18. Fowler M. (2000). Refactoring: Improving the Design of Existing Code. Addison-Wesley, Reading

    Google Scholar 

  19. Gamma E., Helm R., Johnson R. and Vlissides J. (1995). Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, Reading

    Google Scholar 

  20. Glinz, M.: Problems and deficiencies of UML as a requirements specification language. In: Proceedings of 10th International Workshop on Software Specification and Design (IWSSD-10), pp. 11–22 (2000)

  21. Gogolla M., Radfelder O. and Richters M. (1999). A UML Semantics FAQ: The View From Bremen. University of Bremen, Bremen

    Google Scholar 

  22. Goldsack, S., Lano, K., Sanchez, A.: Transforming continuous into discrete specifications with VDM++. In: IEE C8 colloquim digest on hybrid control for real-time systems. IEE (1996)

  23. Graf, S., Ober, I., Ober, I.: Timed annotations with UML. In: SVERTS ’03 (2003)

  24. Grand M. (1998). Patterns in Java, vol. 1. Wiley, London

    Google Scholar 

  25. Jahanian F. and Mok A.K. (1986). Safety analysis of timing properties in real-time systems. IEEE Trans. Softw. Eng. SE-12: 890–904

    Google Scholar 

  26. Knapp, A., Wuttke, J.: Model checking of UML 2.0 interactions. In: 5th International Workshop CSDUML (2006)

  27. Kyas, M., Fecher, H., de Boer, F., Jacob, J., Hooman, J., van der Kwaag, M., Arons, T., Kugler, H.: Formalizing UML models and OCL constraints in PVS. In: SFEDL ’04 (2004)

  28. Lamport, L.: The temporal logic of actions. Technical Report 79, Digital Equipment Corporation, Systems Research Center, December, 1991

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

    Article  MATH  MathSciNet  Google Scholar 

  30. Lano, K.: UML to B: Formal verification of object-oriented models. In: IFM ’04 (2004)

  31. Lano, K., Androutsopolous, K.: Automated synthesis of high-integrity systems using model-driven development. In: 5th International Workshop CSDUML (2006)

  32. Lano, K., Androutsopolous, K., Clark, D.: Concurrency specification in UML-RSDS. In: MARTES ’06, MODELS Conference (2006)

  33. Lano, K., Clark, D., Androutsopolous, K.: From implicit specifications to explicit designs in reactive system development. In: IFM ’02 (2002)

  34. Lano, K., Clark, D., Androutsopolous, K., Kan, P.: Invariant-based synthesis of fault-tolerant systems. In: FTRTFT. Springer, Heidelberg (2000)

  35. Lano K., Clark D. and Androutsopolous K. (2003). RSDS: A subset of UML with precise semantics. L’Objet 9(4): 53–73

    Google Scholar 

  36. Lano, K., Evans, A.: Rigorous development in UML. In: FASE ’99, vol. 1577 of Lecture Notes in Computer Science, pp. 129–144. Springer, Heidelberg (1999)

  37. Liskov, B., Wing, J.: Specifications and their use in defining subtypes. In: ZUM ’95 Proceedings, vol. 967 of LNCS. Springer, Heidelberg (1995)

  38. Meyer B. (1997). Object-Oriented Software Construction. Prentice Hall, Englewood

    MATH  Google Scholar 

  39. Monk J.D. (1976). Mathematical Logic. Springer, Heidelberg

    MATH  Google Scholar 

  40. Naumenko, A., Wegmann, A.: Triune continuum paradigm and problems of UML semantics. icwww.epfl.ch/publications/documents/ IC_TECH_REPORT_200344.pdf (2003)

  41. OMG. UML profile for schedulability, performance and time. Version 1.1 (2005)

  42. OMG. UML superstructure, version 2.0. OMG document formal/05-07-04 (2005)

  43. OMG. UML OCL 2.0 specification, final/06-05-01 (2006)

  44. Ostroff J.S. (1989). Temporal Logic for Real-Time Systems. Wiley, London

    Google Scholar 

  45. Pnueli, A.: Applications of temporal logic to the specification and verification of reactive systems: A survey of current trends. In: Current Trends in Concurrency, vol. 224 of LNCS. Springer, Heidelberg (1986)

  46. Richters, M.: OCL semantics. Annex A of [43] (2005)

  47. Ryan, M., Fiadeiro, J., Maibaum, T.S.E.: Sharing actions and attributes in modal action logic. In: Proceedings of International Conference on Theoretical Aspects of Computer Science (TACS ’91). Springer, Heidelberg (1991)

  48. Simons A. (2003). The theory of classification, part 8: Classification and inheritance. J. Object Technol. 2(4): 55–64

    MathSciNet  Google Scholar 

  49. Smith, J., DeLoach, S., Kokar, M., Baclawski, K.: Category theoretic approaches of representing precise UML semantics. In: Proceedings ECOOP Workshop on Defining Precise Semantics for UML (2000)

  50. Sunyé, G., Le Guennec, A., Jézéquel, J.M.: Design patterns application in UML. In: ECOOP 2000, number 1850 in Lecture Notes in Computer Science, pp. 44–62. Springer, Heidelberg (2000)

  51. Verhoef M., Larsen P. and Hooman J. (2006). Modelling and Validating Distributed Embedded Systems with VDM++. Engineering College of Aarhus, Denmark

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to K. Lano.

Additional information

Communicated by Prof. Jean-Marc Jezequel.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Lano, K. A compositional semantics of UML-RSDS. Softw Syst Model 8, 85–116 (2009). https://doi.org/10.1007/s10270-007-0064-x

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-007-0064-x

Keywords

Navigation