Einführung Modellgetriebene Softwareentwicklung, Metamodellierung Stephan Hildebrandt
Modellgetriebene Softwareentwicklung Modelle sind zentrale Artefakte des Entwicklungsprozesses Höherer Abstraktionsgrad durch Modelle Generierung von Code, Testfällen, Dokumentationen, etc. aus Modellen Verringerung von Entwicklungskosten, Erhöhung der Qualität durch Automatisierung Modelle müssen formal genug sein
Modellierungssprachen Wodurch wird eine Modellierungssprache definiert?
Metamodell Definiert die Elemente eine Modellierungssprache, sowie die Beziehungen dazwischen. Definiert die abstrakte Syntax.
Abstrakte Konkrete Syntax Abstrakte Syntax Konkrete Syntax
Metametamodell Definiert die Elemente und Beziehungen eines Metamodells
Meta-Ebenen OMG definiert 4 Meta-Ebenen
Eclipse Modeling Framework OMG definiert Meta Object Facility (MOF) als Metametamodell Eclipse Modeling Framework bietet: Ecore Metametamodell, Teilweise Implementierung von MOF Generierung von Code für Metamodellelement, einfacher Editor für Modelle der definierten Sprache Standard-Serialisierung nach XMI (XML Metadata Interchange) Reflektive API Erlaubt Zugriff auf Modelle im Code ohne strikte Abhängigkeiten zum Metamodellcode Erlaubt Zugriff auf Modelle, für deren Metamodelle es gar keinen Code gibt