Advertisement

xMOF: Executable DSMLs Based on fUML

  • Tanja Mayerhofer
  • Philip Langer
  • Manuel Wimmer
  • Gerti Kappel
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8225)

Abstract

The basic ingredients of a domain-specific modeling language (DSML) are its syntax and semantics. For defining the abstract syntax in terms of metamodels, MOF constitutes a standardized language. For specifying the behavioral semantics, however, no standardized language exists, which hampers the emergence of model execution facilities, such as debugging and simulation support. The contribution of this paper is an integrated approach for specifying the abstract syntax and behavioral semantics of DSMLs based exclusively on standardized modeling languages. In particular, we integrate fUML, a standardized executable subset of UML, with MOF leading to a new metamodeling language xMOF. Moreover, we propose a methodology for developing executable DSMLs fostering the separation of abstract syntax and behavioral semantics. To evaluate our approach, we provide an EMF-based implementation and report on lessons learned from performing three case studies in which we implemented executable DSMLs using xMOF.

Keywords

Operational Semantic Abstract Syntax Model Execution Model Interpreter Action Language 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Bryant, B.R., Gray, J., Mernik, M., Clarke, P.J., France, R.B., Karsai, G.: Challenges and directions in formalizing the semantics of modeling languages. Computer Science and Information Systems 8(2), 225–253 (2011)CrossRefGoogle Scholar
  2. 2.
    Chen, K., Sztipanovits, J., Abdelwalhed, S., Jackson, E.: Semantic anchoring with model transformations. In: Hartman, A., Kreische, D. (eds.) ECMDA-FA 2005. LNCS, vol. 3748, pp. 115–129. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  3. 3.
    Clark, T., Evans, A., Sammut, P., Willans, J.: Applied Metamodelling: A Foundation for Language Driven Development. Ceteva, Sheffield (2004)Google Scholar
  4. 4.
    Ducasse, S., Gîrba, T.: Using Smalltalk as a Reflective Executable Meta-language. In: Wang, J., Whittle, J., Harel, D., Reggio, G. (eds.) MoDELS 2006. LNCS, vol. 4199, pp. 604–618. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  5. 5.
    Engels, G., Hausmann, J.H., Heckel, R., Sauer, S.: Dynamic Meta Modeling: A Graphical Approach to the Operational Semantics of Behavioral Diagrams in UML. In: Evans, A., Caskurlu, B., Selic, B. (eds.) UML 2000. LNCS, vol. 1939, pp. 323–337. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  6. 6.
    Grönniger, H., Ringert, J.O., Rumpe, B.: System Model-Based Definition of Modeling Language Semantics. In: Lee, D., Lopes, A., Poetzsch-Heffter, A. (eds.) FMOODS 2009. LNCS, vol. 5522, pp. 152–166. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  7. 7.
    Kats, L.C.L., Visser, E.: The Spoofax language workbench. In: Companion to the 25th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), pp. 237–238. ACM (2010)Google Scholar
  8. 8.
    Kolovos, D.S., Paige, R.F., Polack, F.A.C.: The Epsilon Object Language (EOL). In: Rensink, A., Warmer, J. (eds.) ECMDA-FA 2006. LNCS, vol. 4066, pp. 128–142. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  9. 9.
    Kühne, T.: Matters of (Meta-)Modeling. Software and System Modeling 5(4), 369–385 (2006)CrossRefGoogle Scholar
  10. 10.
    Kühne, T., Mezei, G., Syriani, E., Vangheluwe, H., Wimmer, M.: Explicit Transformation Modeling. In: Ghosh, S. (ed.) MODELS 2009. LNCS, vol. 6002, pp. 240–255. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  11. 11.
    Kurtev, I., Bézivin, J., Aksit, M.: Technological Spaces: An Initial Appraisal. In: Proceedings of the International Symposium on Distributed Objects and Applications, DOA (2002)Google Scholar
  12. 12.
    Lai, Q., Carpenter, A.: Defining and verifying behaviour of domain specific language with fUML. In: Proceedings of the 4th Workshop on Behaviour Modeling - Foundations and Applications (BM-FA) @ ECMFA 2012, pp. 1–7. ACM (2012)Google Scholar
  13. 13.
    Langer, P., Wieland, K., Wimmer, M., Cabot, J.: EMF Profiles: A Lightweight Extension Approach for EMF Models. Journal of Object Technology 11(1), 1–29 (2012)CrossRefGoogle Scholar
  14. 14.
    Mayerhofer, T., Langer, P., Kappel, G.: A runtime model for fUML. In: Proceedings of the 7th Workshop on Models@run.time (MRT) @ MoDELS 2012, pp. 53–58. ACM (2012)Google Scholar
  15. 15.
    Mayerhofer, T., Langer, P., Wimmer, M.: Towards xMOF: Executable DSMLs based on fUML. In: Proceedings of the 12th Workshop on Domain-Specific Modeling (DSM) @ SPLASH 2012, pp. 1–6. ACM (2012)Google Scholar
  16. 16.
    Mernik, M., Heering, J., Sloane, A.M.: When and how to develop domain-specific languages. ACM Computing Surveys 37(4), 316–344 (2005)CrossRefGoogle Scholar
  17. 17.
    Muller, P.-A., Fleurey, F., Jézéquel, J.-M.: Weaving Executability into Object-Oriented Meta-languages. In: Briand, L.C., Williams, C. (eds.) MoDELS 2005. LNCS, vol. 3713, pp. 264–278. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  18. 18.
    Object Management Group. Action Language for Foundational UML (Alf), Version Beta 1 (October 2010), http://www.omg.org/spec/ALF/1.0/Beta1
  19. 19.
    Object Management Group. OMG Meta Object Facility (MOF) Core Specification, Version 2.4.1 (August 2011), http://www.omg.org/spec/MOF/2.4.1
  20. 20.
    Object Management Group. Semantics of a Foundational Subset for Executable UML Models (fUML), Version 1.0 (February 2011), http://www.omg.org/spec/FUML/1.0
  21. 21.
    Paige, R., Brooke, P., Ostroff, J.: Specification-driven development of an executable metamodel in Eiffel. In: Proceedings of the 3rd Workshop in Software Model Engineering (WiSME) @ UML 2004 (2004)Google Scholar
  22. 22.
    Rivera, J.E., Durán, F., Vallecillo, A.: On the Behavioral Semantics of Real-Time Domain Specific Visual Languages. In: Ölveczky, P.C. (ed.) WRLA 2010. LNCS, vol. 6381, pp. 174–190. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  23. 23.
    Scheidgen, M., Fischer, J.: Human Comprehensible and Machine Processable Specifications of Operational Semantics. In: Akehurst, D.H., Vogel, R., Paige, R.F. (eds.) ECMDA-FA. LNCS, vol. 4530, pp. 157–171. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  24. 24.
    Soden, M., Eichler, H.: Towards a model execution framework for Eclipse. In: Proceedings of the 1st Workshop on Behaviour Modeling - Foundations and Applications (BM-FA) @ ECMFA 2009, pp. 1–7. ACM (2009)Google Scholar
  25. 25.
    Sprinkle, J., Rumpe, B., Vangheluwe, H., Karsai, G.: Metamodelling - State of the Art and Research Challenges. In: Giese, H., Karsai, G., Lee, E., Rumpe, B., Schätz, B. (eds.) Model-Based Engineering of Embedded Real-Time Systems. LNCS, vol. 6100, pp. 57–76. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  26. 26.
    Steinberg, D., Budinsky, F., Paternostro, M., Merks, E.: EMF: Eclipse Modeling Framework, 2nd edn. Addison-Wesley Professional (2008)Google Scholar
  27. 27.
    Strembeck, M., Zdun, U.: An approach for the systematic development of domain-specific languages. Software: Practice and Experience 39(15), 1253–1292 (2009)CrossRefGoogle Scholar
  28. 28.
    Sunyé, G., Guennec, A.L., Jézéquel, J.-M.: Using UML Action Semantics for model execution and transformation. Information Systems 27(6), 445–457 (2002)CrossRefzbMATHGoogle Scholar
  29. 29.
    Sunyé, G., Pennaneac’h, F., Ho, W.-M., Le Guennec, A., Jézéquel, J.-M.: Using UML Action Semantics for Executable Modeling and Beyond. In: Dittrich, K.R., Geppert, A., Norrie, M. (eds.) CAiSE 2001. LNCS, vol. 2068, pp. 433–447. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  30. 30.
    van den Bos, J., Hills, M., Klint, P., van der Storm, T., Vinju, J.J.: Rascal: From Algebraic Specification to Meta-Programming. In: Proceedings of the 2nd International Workshop on Algebraic Methods in Model-based Software Engineering (AMMSE). EPTCS, vol. 56, pp. 15–32 (2011)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2013

Authors and Affiliations

  • Tanja Mayerhofer
    • 1
  • Philip Langer
    • 1
  • Manuel Wimmer
    • 1
  • Gerti Kappel
    • 1
  1. 1.Business Informatics GroupVienna University of TechnologyAustria

Personalised recommendations