Metamodelling for Grammarware Researchers
Abstract
A metamodel is variously defined as a model of a model, a definition of a language, a description of abstract syntax, and a description of a domain. It is all of these things and more. Metamodels can be confusing, and explaining why they are constructed, what you can do with them, and how they are built can be challenging, especially when trying to bridge the gap between the modelware and grammarware communities. In this example-driven mini-tutorial, we introduce the key concepts and ideas behind metamodelling and explain why metamodels are useful, and particularly how they differ from grammar-based approaches to language development. We give some tips on how grammarware researchers can explain what they do to modelware researchers, and vice versa, in the spirit of interdisciplinarity and improving collaboration.
Keywords
Object Constraint Language Abstract Syntax Work Package Object Management Group Concrete SyntaxPreview
Unable to display preview. Download preview PDF.
References
- 1.Atkinson, C., Kühne, T.: Model-driven development: A metamodeling foundation. IEEE Software 20(5), 36–41 (2003)CrossRefGoogle Scholar
- 2.Bézivin, J.: Model engineering for software modernization. In: WCRE, p. 4 (2004)Google Scholar
- 3.Bézivin, J.: On the unification power of models. Software and System Modeling 4(2), 171–188 (2005)CrossRefGoogle Scholar
- 4.Bézivin, J., Bouzitouna, S., Del Fabro, M.D., Gervais, M.-P., Jouault, F., Kolovos, D.S., Kurtev, I., Paige, R.F.: A Canonical Scheme for Model Composition. In: Rensink, A., Warmer, J. (eds.) ECMDA-FA 2006. LNCS, vol. 4066, pp. 346–360. Springer, Heidelberg (2006)CrossRefGoogle Scholar
- 5.Clark, T., Sammut, P., Willans, J.: Applied metamodelling: a foundation for language driven development, 2nd edn. (2004), http://eprints.mdx.ac.uk/6060/1/Clark-Applied_Metamodelling_%28Second_Edition%29%5B1%5D.pdf
- 6.de Lara, J., Guerra, E.: Deep Meta-modelling with MetaDepth. In: Vitek, J. (ed.) TOOLS 2010. LNCS, vol. 6141, pp. 1–20. Springer, Heidelberg (2010)CrossRefGoogle Scholar
- 7.Object Management Group. Human-Usable Textual Notation (HUTN) Specification (2004), http://www.omg.org/technology/documents/formal/hutn.html
- 8.Object Management Group. A proposal for an MDA foundation model (April 01, 2005), http://www.omg.org/cgi-bin/doc?ormsc/05-04-01
- 9.Object Management Group. Meta-object facility 2.0 core specification (2006), http://www.omg.org/spec/MOF/2.0/
- 10.Object Management Group. Unified Modelling Language (UML) 2.2 Specification (2009), http://www.omg.org/spec/UML/2.2/
- 11.Object Management Group. Diagram definition v1.0 ftf specification (2011), http://www.omg.org/cgi-bin/doc?ptc/2011-07-13
- 12.ISO. ISO/IEC 14977:1996 Extended BNF (1996), http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=26153
- 13.Meyer, B.: Object-Oriented Software Construction, 2nd edn. Prentice-Hall (1997)Google Scholar
- 14.Zaytsev, V.: BNF WAS HERE: What Have We Done About the Unnecessary Diversity of Notation for Syntactic Definitions. In: Mernik, M., Bryant, B. (eds.) Programming Languages Track, Proceedings of the 27th ACM Symposium on Applied Computing, SAC 2012, Riva del Garda, Trento, Italy, vol. II, pp. 1910–1915. ACM (March 2012)Google Scholar