Keywords dynamic instantiation, multi-level meta-modeling, algebraic formalism, modular meta-modeling, meta-modeling lifecycle
IntroductionMetamodeling has become a well-established software engineering methodology that has standardized the way software architects build practical models for various complex software intensive applications on industrial scale. The models may serve many purposes, but the most important thereof are the different domain specific analyses, congruent model transformations and almost full-automatic code generation. Although modeling tools have matured a lot and the Eclipse Modeling Framework (EMF) [1] started to dominate the technology, the core paradigm still relies on the four level semantics of OMG's MOF [2]. Nevertheless, the number of meta-levels turned out to become rather limited. In theory, three meta-levels are available for modeling, taken for granted that level M3 is fixed by the OMG. However, in practice, only level M2 and M1 are freely available in design-time and only M0 is used in run-time explicitly. Moreover, the separation between design-time and run-time modeling is kept quite rigid; there is no automatic mechanism available that validates M0 models against their M1 meta-model. Obviously, specific deployments, for example highly configurable adaptive systems may allow case-bycase application of such solutions; however, these are merely exceptions rather than the deployment of state-of-the-art technologies. In summary, one may claim that EMF provides, by default, only two modeling levels implemented in a single threaded design environment.Taken into account that concurrent model manipulation is also needed at run-time, Models@runtime solutions resurfaced to solve the challenge of run-time concurrent model management. Nevertheless, these technologies do not facilitate standard modeling tools such as model transformation or flexible code generation. Hence, a unified multi-level modelling framework for both design-and run-time applicability is still missing. This paper focuses on the fundamentals of a solution capable of fixing the aforementioned shortcomings of current modeling approaches.Since instantiation is the real essence of any metamodeling discipline, the best way to start formalizing a multi-level metamodeling approach is through a semi-formal definition of the
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.