Multilevel Modeling

Domain-specific modeling languages (DSMLs) promise clear advantages over general-purpose modeling languages. However, their design poses a fundamental challenge. While economies of scale advocate the development of DSMLs that can be used in a wide range of cases, modeling productivity demands more specific language concepts tuned to individual requirements. Inspired by the actual use of technical languages (German: “Fachsprachen”), this paper presents a novel multilevel modeling approach to conceptual modeling and to the design of information systems. Unlike traditional language architectures such as Meta Object Facility (MOF), it features a recursive architecture that allows for an arbitrary number of classification levels and, hence, for the design of hierarchies of DSMLs ranging from reference DSMLs to “local” DSMLs. It can not only diminish the conflict inherent in designing DSMLs, but enables the reuse and integration of software artifacts in general. It also helps reduce modeling complexity by relaxing the rigid dichotomy between specialization and instantiation. Furthermore, it integrates a meta-modeling language with a metamodel of a reflective meta-programming language, thereby allowing for executable models. The specification of the language architecture is supplemented by the description of use scenarios that illustrate the potential of multilevel modeling and a critical discussion of its peculiarities.

[1]  Thomas Kühne,et al.  Matters of (Meta-) Modeling , 2006, Software & Systems Modeling.

[2]  Manfred A. Jeusfeld,et al.  Metamodeling and method engineering with ConceptBase , 2009 .

[3]  Colin Atkinson,et al.  The Essence of Multilevel Metamodeling , 2001, UML.

[4]  Ulrich Frank Integration - Reflections on a Pivotal Concept for Designing and Evaluating Information Systems , 2008, UNISCON.

[5]  Bernd Neumayr,et al.  Multi-Level Domain Modeling with M-Objects and M-Relationships , 2009, APCCM.

[6]  Daniel Schreiber,et al.  Can programming be liberated from the two-level style: multi-level programming with deepjava , 2007, OOPSLA.

[7]  Brian Henderson-Sellers,et al.  Random Thoughts on Multi-level Conceptual Modelling , 2008, The Evolution of Conceptual Modeling.

[8]  Dimitris Karagiannis,et al.  On the Conceptualisation of Modelling Methods Using the ADOxx Meta Modelling Platform , 2013, Enterp. Model. Inf. Syst. Archit. Int. J. Concept. Model..

[9]  Ulrich Frank,et al.  Multi-perspective enterprise modelling: Background and terminological foundation , 2011 .

[10]  D. Hofstadter,et al.  Godel, Escher, Bach: An Eternal Golden Braid , 1979 .

[11]  Alain Pirotte,et al.  Materialization and Its Metaclass Implementation , 2002, IEEE Trans. Knowl. Data Eng..

[12]  Juha-Pekka Tolvanen,et al.  Domain-Specific Modeling: Enabling Full Code Generation , 2008 .

[13]  Brice Morin,et al.  Models@ Run.time to Support Dynamic Adaptation , 2009, Computer.

[14]  Matthias Jarke,et al.  Telos: representing knowledge about information systems , 1990, TOIS.

[15]  Anneke Kleppe,et al.  Software Language Engineering: Creating Domain-Specific Languages Using Metamodels , 2008 .

[16]  Reinhard Schütte,et al.  Grundsätze ordnungsmäßiger Referenzmodellierung , 1998 .

[17]  Ulrich Frank Thoughts on classification / instantiation and generalisation / specialisation , 2012 .

[18]  Eelco Visser,et al.  DSL Engineering - Designing, Implementing and Using Domain-Specific Languages , 2013 .

[19]  Benjamin Z Bryan Reference Modeling for Business Systems Analysis , 2014 .

[20]  John Krogstie,et al.  Modelling of the People, by the People, for the People , 2007 .

[21]  James Odell,et al.  Power Types , 1994, J. Object Oriented Program..

[22]  Martin Fowler,et al.  Domain-Specific Languages , 2010, The Addison-Wesley signature series.

[23]  Bernhard Volz Werkzeugunterstützung für methodenneutrale Metamodellierung , 2011 .

[24]  Ulrich Frank,et al.  The MEMO Meta Modelling Language (MML) and Language Architecture: 2nd Edition , 2018 .

[25]  Colin Atkinson,et al.  A Flexible Infrastructure for Multilevel Language Engineering , 2009, IEEE Transactions on Software Engineering.

[26]  Aniruddha S. Gokhale,et al.  Domain-Specific Modeling , 2008, Handbook of Dynamic System Modeling.

[27]  Jeannette M. Wing,et al.  A behavioral notion of subtyping , 1994, TOPL.

[28]  Tony Clark,et al.  Superlanguages: developing languages and applications with XMF. , 2008 .

[29]  Colin Atkinson,et al.  Reducing accidental complexity in domain models , 2008, Software & Systems Modeling.

[30]  Bernd Mahr,et al.  Die Informatik und die Logik der Modelle , 2009, Informatik-Spektrum.

[31]  MorinBrice,et al.  Models@ Run.time to Support Dynamic Adaptation , 2009 .

[32]  Matthias Jarke,et al.  ConceptBase — A deductive object base for meta data management , 1995, Journal of Intelligent Information Systems.

[33]  Tony Clark,et al.  Applied Metamodelling: A Foundation for Language Driven Development (Third Edition) , 2015, ArXiv.

[34]  Kalle Lyytinen,et al.  MetaEdit+: A Fully Configurable Multi-User and Multi-Tool CASE and CAME Environment , 1996, CAiSE.

[35]  Ulrich Frank Specialisation in business process modelling: Motivation, approaches and limitations , 2012 .

[36]  Steffen Staab,et al.  An ontology-based framework for domain-specific modeling , 2014, Software & Systems Modeling.

[37]  Bertrand Meyer,et al.  Programs That Test Themselves , 2009, Computer.

[38]  Ulrich Frank,et al.  Modeling Products for Versatile E-commerce Platforms - Essential Requirements and Generic Design Alternatives , 2001, ER.

[39]  Kalle Lyytinen,et al.  MetaEdit+: A Fully Configurable Multi-User and Multi-Tool CASE and CAME Environment , 1996, CAiSE.