×

zbMATH — the first resource for mathematics

A formalisation of deep metamodelling. (English) Zbl 1342.68098
Summary: Metamodelling is one of the pillars of model-driven engineering, used for language engineering and domain modelling. Even though metamodelling is traditionally based on a two-metalevel approach, several researchers have pointed out limitations of this solution and proposed an alternative deep (also called multi-level) approach to obtain simpler system specifications. However, this approach currently lacks a formalisation that can be used to explain fundamental concepts such as deep characterisation, double linguistic/ontological typing and linguistic extension. This paper provides such a formalisation based on the Diagram Predicate Framework, and discusses its practical realisation in the metaDepth tool.

MSC:
68N30 Mathematical aspects of software engineering (specification, verification, metrics, requirements, etc.)
68Q60 Specification and verification (program logics, model checking, etc.)
Software:
Maude
PDF BibTeX XML Cite
Full Text: DOI
References:
[1] Aschauer T, Dauenhauer G, Pree W (2009) Multi-level modeling for industrial automation systems. In: Proceedings of EUROMICRO 2009: 35\^{th} EUROMICRO conference on software engineering and advanced applications, IEEE Computer Society, pp 490-496
[2] Atkinson, C; Gutheil, M; Kennel, B, A flexible infrastructure for multilevel language engineering, IEEE Trans Softw Eng, 35, 742-755, (2009)
[3] Atkinson C, Gerbig R, Kennel B (2012) On-the-fly emendation of multi-level models. In: Vallecillo A, Tolvanen J-P, Kindler E, Störrle H, and Dimitrios S. Kolovos, editors, Proceedings of ECMFA 2012: 8\^{th} European conference on modelling foundations and applications, volume 7349 of lecture notes in computer science, pp 194-209. Springer, Berlin
[4] Atkinson, C; Kühne, T, Profiles in a strict metamodeling framework, Sci Comput Program, 44, 5-22, (2002) · Zbl 1002.68734
[5] Atkinson, C; Kühne, T, Rearchitecting the UML infrastructure, ACM Trans Model Comput Simul, 12, 290-321, (2002)
[6] Atkinson, C; Kühne, T, Reducing accidental complexity in domain models, Softw Syst Model, 7, 345-359, (2008)
[7] Asikainen, T; Männistö, T, Nivel: a metamodelling language with a formal semantics, Softw Syst Model, 8, 521-549, (2009)
[8] Bézivin J, Gerbé O (2001) Towards a precise definition of the OMG/MDA framework. In: Proceedings of ASE 2001: 16\^{th} IEEE international conference on automated software engineering, pp 273-280
[9] Boronat A, Meseguer J (2009) Algebraic semantics of OCL-constrained metamodel specifications. In: Oriol M, Meyer B, Aalst W, Mylopoulos J, Rosemann M, Shaw MJ, Szyperski C (eds) Proceedings of TOOLS 2009: 47th international conference on objects, components, models and patterns, volume 33 of lecture notes in business information processing, pp 96-115. Springer, Berlin
[10] Barr M, Wells C (1955) Category theory for computing science, 2nd edn. Prentice Hall, New Jersey · Zbl 0714.18001
[11] Clavel M, Durán F, Eker S, Lincoln P, Martí-Oliet N, Meseguer J, Talcott CL (eds.) (2007) All about maude—a high-performance logical framework, how to specify, program and verify systems in rewriting logic, volume 4350 of lecture notes in computer science. Springer, Berlin · Zbl 1115.68046
[12] Clark T, Sammut P, Willans J (2008) Applied metamodelling: a foundation for language driven development, 2nd edn. Ceteva, Kenilworth
[13] de Lara J, Guerra E (2010) Deep meta-modelling with metadepth. In: Vitek J (ed) Proceedings of TOOLS 2010: 48th international conference on objects, components, models and patterns, volume 6141 of lecture notes in computer science, pp 1-20. Springer, Berlin
[14] Lara, J; Guerra, E; Cobos, R; Moreno-Llorena, J, Extending deep meta-modelling for practical model-driven engineering, Comput J., 57, 36-58, (2014)
[15] Diskin Z (1996) Databases as diagram algebras: specifying queries and views via the graph-based logic of sketches. Technical Report 9602, Frame Inform Systems/LDBD, Riga, Latvia · Zbl 1002.68734
[16] Diskin Z (1997) Towards algebraic graph-based model theory for computer science. In: Logic colloquium 1995: European summer meeting of the association for symbolic logic. Bull Symb Logic 3(1):144-145
[17] Diskin Z (2002) Visualization vs. specification in diagrammatic notations: a case study with the UML. In: Hegarty M, Meyer B, Narayanan NH (eds) Proceedings of diagrams 2002: 2nd international conference on diagrammatic representation and inference, volume 2317 of lecture notes in computer science, pp 112-115. Springer, Berlin · Zbl 1049.68680
[18] Diskin Z (2003) Practical foundations of business system specifications, chapter Mathematics of UML: Making the Odysseys of UML less dramatic, pp 145-178. Springer, Berlin
[19] Diskin Z (2005) Encyclopedia of database technologies and applications, chapter mathematics of generic specifications for model management I and II, pp 351-366. Information Science Reference · Zbl 1002.68734
[20] Diskin, Z; Kadish, B, Variable set semantics for keyed generalized sketches: formal semantics for object ideny and abstract syntax for conceptual modeling, Data Knowl Eng, 47, 1-59, (2003)
[21] Diskin Z, Kadish B (2005) Encyclopedia of database technologies and applications, chapter generic model management, pp 258-265. Information Science Reference
[22] Diskin Z, Kadish B, Piessens F, Johnson M (2000) Universal arrow foundations for visual modeling. In: Anderson M, Cheng P, Haarslev V (eds) Proceedings of diagrams 2000: 1st international conference on diagrammatic representation and inference, volume 1889 of lecture notes in computer science, pp 345-360. Springer, Berlin · Zbl 0973.68576
[23] Demuth A, Lopez-Herrejon RE, Egyed A (2011) Cross-layer modeler: a tool for flexible multilevel modeling with consistency checking. In: Gyimóthy T, Zeller A (eds) Proceedings of SIGSOFT/FSE 2011: 19th ACM SIGSOFT symposium on the foundations of software engineering, pp 452-455. ACM
[24] Diskin Z, Wolter U (2008) A diagrammatic logic for object-oriented visual modeling. In: Proceedings of ACCAT 2007: 2nd workshop on applied and computational category theory, volume 203/6 of electronic notes in theoretical computer science, pp 19-41. Elsevier, Amsterdam · Zbl 1277.68055
[25] Eclipse Modeling Framework. Project Web Site. http://www.eclipse.org/emf.
[26] Ehrig H, Engels G, Kreowski H-J, Rozenberg G (1999) Handbook of graph grammars and computing by graph transformations, volume 2: applications, languages, and tools. World Scientific Publishing Company, Singapore · Zbl 0998.68001
[27] Ehrig H, Ehrig K, Prange U, Taentzer G (2006) Fundamentals of algebraic graph transformation. Springer, Berlin · Zbl 1095.68047
[28] Ehrig H, Prange U, Taentzer G (2004) Fundamental theory for typed attributed graph transformation. In: Ehrig H, Engels G, Parisi-Presicce F, Rozenberg G (eds) Proceedings of ICGT 2004: 2nd international conference on graph transformations, volume 3256 of lecture notes in computer science, pp 161-177. Springer, Berlin · Zbl 1116.68481
[29] Luiz Fiadeiro J (2004) Categories for software engineering. Springer, Berlin · Zbl 1138.68365
[30] Gutheil M, Kennel B, Atkinson C (2008) A systematic approach to connectors in a multi-level modeling environment. In: Czarnecki K, Ober I, Bruel J-M, Uhl A, Völter M (eds) Proceedings of MoDELS 2008: 11th international conference on model driven engineering languages and systems, volume 5301 of lecture notes in computer science, pp 843-857. Springer, Berlin · Zbl 1246.68098
[31] Gitzel, R; Ott, I; Schader, M, Ontological extension to the MOF metamodel as a basis for code generation, Comput J, 50, 93-115, (2007)
[32] Gonzalez-Perez, C; Henderson-Sellers, B, A powertype-based metamodelling framework, Softw Syst Model, 5, 72-90, (2006)
[33] Jarke, M; Gallersdörfer, R; Jeusfeld, MA; Staudt, M, Conceptbase—A deductive object base for meta data management, J Intell Inf Syst., 4, 167-192, (1995)
[34] Kolovos DS, Paige RF, Polack F (2006) The Epsilon object language (EOL). In: Rensink A, Warmer J (eds) Proceedings of ECMDA-FA 2006: 2nd European conference on model-driven architecture foundations and applications, volume 4066 of lecture notes in computer science, pp 128-142. Springer, Berlin
[35] Kühne T, Schreiber D (2007) Can programming be liberated from the two-level style? Multi-level programming with DeepJava. In: Gabriel RP, Bacon DF, Videira Lopes C, Steele GL Jr., (eds) Proceedings of OOPSLA 2007: 22nd annual ACM SIGPLAN conference on object-oriented programming, systems, languages and applications, pp 229-244.
[36] Mylopoulos, J; Borgida, A; Jarke, M; Koubarakis, M, Telos: representing knowledge about information systems, ACM Trans Inf Syst., 8, 325-362, (1990)
[37] Object Management Group. Web site. http://www.omg.org.
[38] Object Management Group. Meta-Object Facility Specification, January 2006. http://www.omg.org/spec/MOF/2.0/.
[39] Object Management Group. Object Constraint Language Specification, February 2010. http://www.omg.org/spec/OCL/2.2/.
[40] Object Management Group. Unified Modeling Language Specification, May 2010. http://www.omg.org/spec/UML/2.3/.
[41] Odell, J, Power types, J Object-Oriented Program, 7, 8-12, (1994)
[42] Poernomo I (2006) A type theoretic framework for formal metamodelling. In: International seminar on architecting systems with trustworthy components, volume 3938 of lecture notes in computer science, pp 262-298. Springer, Berlin
[43] Rossini A, de Lara J, Guerra E, Rutle A, Lamo Y (2012) A graph transformation-based semantics for deep metamodelling. In: Schürr A, Varró D, Varró G (eds) Proceedings of AGTIVE 2011: 4th international symposium on applications of graph transformations with industrial relevance, volume 7233 of lecture notes in computer science, pp 19-34. Springer, Berlin
[44] Rossini A (2011) Diagram predicate framework meets model versioning and deep metamodelling. PhD thesis, Department of Informatics, University of Bergen, Norway, December
[45] Rutle A, Rossini A, Lamo Y, Wolter U (2009) A category-theoretical approach to the formalisation of version control in MDE. In: Chechik M, Wirsing M (eds) Proceedings of FASE 2009: 12th international conference on fundamental approaches to software engineering, volume 5503 of lecture notes in computer science, pp 64-78. Springer, Berlin · Zbl 1204.68075
[46] Rutle A, Rossini A, Lamo Y, Wolter U (2009) A diagrammatic formalisation of MOF-based modelling languages. In: Oriol M, Meyer B, Aalst W, Mylopoulos J, Rosemann M, Shaw MJ, Szyperski C (eds) Proceedings of TOOLS 2009: 47th international conference on objects, components, models and patterns, volume 33 of lecture notes in business information processing, pp 37-56. Springer, Berlin
[47] Rossini A, Rutle A, Lamo Y, Wolter U (2010) A formalisation of the copy-modify-merge approach to version control in MDE. J Logic Algebraic Program. 79(7):636-658, 2010. · Zbl 1204.68075
[48] Rutle A, Rossini A, Lamo Y, Wolter U (2010) A formalisation of constraint-aware model transformations. In: Rosenblum D, Taentzer D (eds) Proceedings of FASE 2010: 13th international conference on fundamental approaches to software engineering, volume 6013 of lecture notes in computer science, pp 13-28. Springer, Berlin · Zbl 1204.68075
[49] Rutle, A; Rossini, A; Lamo, Y; Wolter, U, A formal approach to the specification and transformation of constraints in MDE, J Logic Algebraic Program, 81, 422-457, (2012) · Zbl 1246.68098
[50] Rossini A, Rutle A, Mughal KA, Lamo Y, Wolter U (2011) A formal approach to data validation constraints in MDE. In: Kyas M, Meng S, Stolz V (eds) Proceedings of TTSS 2011: 5th international workshop on harnessing theories for tool support in software, pp 65-76
[51] Rutle A (2010) Diagram predicate framework: a formal approach to MDE. PhD thesis, Department of Informatics, University of Bergen, Norway, November 2010
[52] Steinberg D, Budinsky F, Paternostro M, Merks Ed (2008) EMF: eclipse modeling framework 2.0, 2nd edn. Addison-Wesley Professional, Reading
This reference list is based on information provided by the publisher or from digital mathematics libraries. Its items are heuristically matched to zbMATH identifiers and may contain data conversion errors. It attempts to reflect the references listed in the original paper as accurately as possible without claiming the completeness or perfect precision of the matching.