Skip to main content

A Lightweight Approach for Defining the Formal Semantics of a Modeling Language

  • Conference paper
Model Driven Engineering Languages and Systems (MODELS 2008)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 5301))

Abstract

To define the formal semantics of a modeling language, one normally starts from the abstract syntax and then defines the static semantics and dynamic semantics. Having a formal semantics is important for reasoning about the language but also for building tools for the language. In this paper we propose a novel approach for this task based on the Alloy language. With the help of a concrete example language, we contrast this approach with traditional methods based on formal languages, type checking, meta-modeling and operational semantics. Although both Alloy and traditional techniques yield a formal semantics of the language, the Alloy-based approach has two key advantages: a uniform notation, and immediate automatic analyzability using the Alloy analyzer. Together with the simplicity of Alloy, our approach offers the prospect of making formal definitions easier, hopefully paving the way for a wider adoption of formal techniques in the definition of modeling languages.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 149.00
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Broy, M., Crane, M., Dingel, J., Hartman, A., Rumpe, B., Selic, B.: 2nd UML 2 semantics symposium: Formal semantics for UML. In: Kühne, T. (ed.) MoDELS 2006. LNCS, vol. 4364, pp. 318–323. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  2. Gogolla, M., Büttner, F., Richters, M.: USE: A UML-based specification environment for validating UML and OCL. Sci. Comput. Program 69(1-3), 27–34 (2007)

    Article  MATH  Google Scholar 

  3. Green, T.R.G.: Cognitive dimensions of notations. In: Proceedings of 5th conference of the British Computer Society, Human-Computer Interaction Specialist Group on People and computers V, pp. 443–460 (1989)

    Google Scholar 

  4. Jackson, D.: Software Abstractions: Logic, Language, and Analysis. MIT Press, Cambridge (2006)

    Google Scholar 

  5. Jackson, D., Wing, J.: Lightweight formal methods. IEEE Computer 29(4), 16–30 (1996)

    Google Scholar 

  6. Kelsen, P.: A declarative executable model for object-based systems based on functional decomposition. In: Proceedings of the 1st International Conference on Software and Data Technologies, pp. 63–71 (2006)

    Google Scholar 

  7. Kelsen, P., Ma, Q.: A formal definition of the EP language. Technical Report TR-LASSY-08-03, Laboratory for Advanced Software Systems, University of Luxembourg (May 2008)

    Google Scholar 

  8. Kelsen, P., Pulvermueller, E., Glodt, C.: Specifying executable platform-independent models using OCL. In: ECEASST (2008)(9)

    Google Scholar 

  9. Mosses, P.D.: Theory and practice of action semantics. In: Proceedings of 21st Int. Symp. on Mathematical Foundations of Computer Science, pp. 37–61 (1996)

    Google Scholar 

  10. Mosses, P.D.: The varieties of programming language semantics. In: Proceedings of 4th International Andrei Ershov Memorial Conference on Perspectives of System Informatics, pp. 165–190 (2001)

    Google Scholar 

  11. OMG. Unified modeling language superstructure specification 2.0 (November 2005)

    Google Scholar 

  12. OMG. Object Constraint Language 2.0 (May 2006)

    Google Scholar 

  13. Winskel, G.: The formal semantics of programming languages: an introduction. MIT Press, Cambridge (1993)

    MATH  Google Scholar 

  14. Zhang, Y., Xu, B.: A survey of semantic description frameworks for programming languages. SIGPLAN Not. 39(3), 14–30 (2004)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Krzysztof Czarnecki Ileana Ober Jean-Michel Bruel Axel Uhl Markus Völter

Rights and permissions

Reprints and permissions

Copyright information

© 2008 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Kelsen, P., Ma, Q. (2008). A Lightweight Approach for Defining the Formal Semantics of a Modeling Language. In: Czarnecki, K., Ober, I., Bruel, JM., Uhl, A., Völter, M. (eds) Model Driven Engineering Languages and Systems. MODELS 2008. Lecture Notes in Computer Science, vol 5301. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-87875-9_48

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-87875-9_48

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-87874-2

  • Online ISBN: 978-3-540-87875-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics