Multi-level modeling, i.e., the explicit use of multiple lev-els of classification in modeling, is a conservative extension of the well-established, traditional two-level object-oriented paradigm. Two-level object-oriented technology has been tremendously successful in both modeling (e.g., UML) and programming (e.g., Java). However, it has been shown that attempting to capture certain domains or systems with only two classification levels (i.e., objects and their types) results in accidental complexity that stems from an impedance mismatch between the subject at hand and the solution tech-nology used to capture it [2]. Examples for domains that can be much more elegantly captured using multiple clas-sification levels are biological taxonomies, process (meta-) modeling, enforced software architectures, and systems with dynamic type levels [4]. In particular, two-level technologies suffer from a simplis-tic type/instance dichotomy. Modeling elements must either play the role of a type or the role of an instance but not both. This means that types themselves cannot be treated as first class citizens of a system, i.e., as instances of (meta-) types, and thus cannot themselves be added dynamically to a system in a type-safe way.
CITATION STYLE
Atkinson, C., Kühne, T., & de Lara, J. (2018). Editorial to the theme issue on multi-level modeling. Software & Systems Modeling, 17(1), 163–165. https://doi.org/10.1007/s10270-016-0565-6
Mendeley helps you to discover research relevant for your work.