80 likes | 189 Views
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
E N D
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 eineModellierungssprache,sowie die Beziehungendazwischen. • 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 MetaObjectFacility (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