170 likes | 345 Views
Thema 3: Metamodelle – MOF. 23.11.2005 Michél Rieser Prof. Dr.-Ing. habil. Georg Paul michel.rieser@student.uni-magdeburg.de paul@iti.cs.uni-magdeburg.de. Inhalt. Motivation Metamodellierung MOF Zusammenfassung Literaturangaben. Motivation. Erinnerung : MDSD-Ansatz
E N D
Thema 3: Metamodelle – MOF 23.11.2005 Michél Rieser Prof. Dr.-Ing. habil. Georg Paul michel.rieser@student.uni-magdeburg.de paul@iti.cs.uni-magdeburg.de
Inhalt • Motivation • Metamodellierung • MOF • Zusammenfassung • Literaturangaben Rieser / Paul
Motivation • Erinnerung : • MDSD-Ansatz • MDA als MDSD-Initiative der OMG • das Modell als zentrales Konzept • formales Modell als Ausgangspunkt für automatisierte Transformationen • Modellierer-Perspektive • Generierungs-Perspektive • die DSL • Domain Specific Language Rieser / Paul
Motivation II • Zweck einer DSL • Schlüsselattribute einer Domäne • formal ausdrückbar • also : Metamodell inkl. statischer Semantik • korrespondierende Syntax • dynamische Semantik Rieser / Paul
Motivation III • Semantik einer DSL • Modellierer • Bedeutung der verfügbaren Sprachmittel • Transformationen • automatische Transformationen auf den Modellen müssen die Semantik umsetzen Rieser / Paul
Metamodellierung • als Mittel um die Sprache, die dem Modellierer zur Verfügung steht, zu definieren • insbesondere • Definition der Modellierungsregeln • die diesbzgl. Validierung der konkreten Modelle • abstrakte Syntax • konkrete Syntax Rieser / Paul
Metamodellierung II • eine abstrakte Syntax kann verschiedene konkrete Syntaxformen besitzen • d.h. man kann das Metamodell einer Domäne in verschiedenen Notationen ausdrücken • Wie kann man die abstrakte Syntax bzw. das Metamodell einer Domäne konkret spezifizieren bzw. notieren ? • Meta-Metamodell(MOF, Ecore, MetaGME) Rieser / Paul
MOF • Meta Object Facility • Meta-Metamodell der OMG • UML 2, CWM, OCL sind in MOF definiert • basierend auf objektorientiertem Paradigma • intern : • leiht sich den Klassenkern der UML • Notationen : • graphisch : UML • textuell : DSTC's MODL language(Meta-Object Definition Language) Rieser / Paul
MOF II Rieser / Paul
Technologieabbildungen • MOF-to-IDL mapping • Erzeugung von Schnittstellenbeschreibungen für Softwarekomponenten aus MOF-Metamodellen • MOF-to-XML mapping • XMI zur Abbildung eines Metamodellsin XML DTD, XML Schema • transportiert beliebige MOF-Instanzen Rieser / Paul
Ausblick • Standardisierung von QVT • Sichten auf Modelle erstellen • Modelle nach Informationen abfragen • Transformationsdefinitionen schreiben Rieser / Paul
Zusammenfassung • Warum Metamodellierung • Konstruktion von domänenspezifischen Modellierungssprachen (DSL) • Modellvalidierung • Modell-zu-Modelltransformationen • Codegenerierung • Werkzeugintegration Rieser / Paul
Zusammenfassung II • MOF • Meta-Metamodell der OMG • dient der Definition von Modellierungssprachen(auf M2 Ebene des OMG-Modells) • oberhalb der MOF gibt es im OMG-Modell keine weitere Metaebene, damit beschreibt sich die MOF letztendlich selbst • definiert abstrakte Syntax (nicht konkrete Syntax) Rieser / Paul
Zusammenfassung III • Warum Meta-Metamodellierung • bessere Handhabbarkeit von Komplexität durch Abstraktion(domänenspezifische Sprachen für domänenspezifische Modelle) • Redundanzvermeidung • verbesserte Wartbarkeit • Handhabbarkeit von Technologiewandel • Softwarequalität(durch Einsatz automatisierter Transformationen u. formal definierter Modellierungssprachen) Rieser / Paul
Literaturangaben • Modellgetriebene SoftwareentwicklungTechniken, Engineering, Management, Thomas Stahl, Markus Völter • Softwareentwicklung mit der UML 2 Die neuen Entwurfstechniken UML 2, MOF 2 und MDA Marc Born, Eckhardt Holz und Olaf Kath • MOF Specification 2.0 Meta Object Facility(MOF) 2.0 Core Proposal • Meta-Object Facility Tutorial,http://www.dstc.edu.au/Research/Projects/MOF/Tutorial.html Rieser / Paul
Literaturangaben II • Modellgetriebene Softwareentwicklung,Marco Mosconi in OOSE – Gastvorlesung 4.7.2005 • Designermodelle,Bernhard Merkle in iX 5/2005 Rieser / Paul
Vielen Dank für Ihre Aufmerksamkeit • Fragen • Ergänzungen • Anmerkungen Rieser / Paul