Understanding metamodeling

  • Authors:
  • Thomas Kühne

  • Affiliations:
  • Darmstadt University of Technology, Darmstadt, Germany

  • Venue:
  • Proceedings of the 27th international conference on Software engineering
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

Metamodeling not only directly underpins the specification of modeling languages such as the UML, but is also the foundation for making the OMG's MDA vision come true. This tutorial starts by motivating metamodeling as an advanced way of creating software and then goes on to explore its fundamental principles. In particular, important new metamodeling concepts such as the distinction between ontological and linguistic instance-of relationships, the unification of class and object facets and deep instantiation are introduced. A metamodeling framework suitable for MDA is constructed step-by-step and then used to explain and critique the OMG's various metamodeling technologies. This information furnishes modelers with the heuristics they need to more effectively utilize OMG metamodeling technology and to know when metamodeling concepts are suitable and when they are not. The tutorial ends with some methodological advice on how to model in the presence of more than two modeling levels (objects & classes).