Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.
TechTalk: Model Driven Architecture  Frank Kautz, DLR Simulations- und Softwaretechnik 17.Juni.2008
Übersicht <ul><li>Einführung </li></ul><ul><li>Begriffe </li></ul><ul><li>UML-Profile </li></ul><ul><li>Object Constraint ...
Einführung <ul><li>Spezifikation der Object Management Group (OMG) </li></ul><ul><li>Modellgetriebene Softwareentwicklung ...
Begriffe <ul><li>Modell </li></ul><ul><ul><li>Formale Beschreibung eines Systems </li></ul></ul><ul><li>Metamodell </li></...
UML-Profile <ul><li>Erweitert das Standard-Metamodell der UML </li></ul><ul><ul><li>Domänenspezifische Stereotypen </li></...
Object Constraint Language (1/2) <ul><li>Entwickelt von IBM im Jahr 1995 </li></ul><ul><li>Formale Sprache </li></ul><ul><...
Object Constraint Language (2/2) <ul><li>Mindestalter für den Besitz eines Autos ist 18 Jahre </li></ul>context Person inv...
MDA-Modelle (1/2) <ul><li>Computation Independent Model (CIM) </li></ul><ul><ul><li>Berechnungs- und Plattformunabhäniges ...
MDA-Modelle (2/2) <ul><li>Platform Specific Model (PSM) </li></ul><ul><ul><li>Plattformspezifisches Modell (JAVA, .NET, C+...
Action  Semantics <ul><li>Bestandteil der UML 2 Superstructure </li></ul><ul><li>Ermöglicht das spezifizieren von Programm...
QVT (Query Views and Transformations) <ul><li>Modelltransformationssprache </li></ul><ul><li>Definition von Mappings </li>...
Transformationen 1/2 <ul><li>Modell zu Modell Transformationen </li></ul><ul><ul><li>Benötigt eine Transformationsvorschri...
Transformationen 2/2 Computation Independent Model Platform Independent Model  Platform Specific Model  Implementierung  a...
Fazit <ul><li>Vorteile: </li></ul><ul><ul><li>Plattformunabhänige Entwicklung </li></ul></ul><ul><ul><li>Einfachere Migrat...
Quellen <ul><li>http://www.omg.org/docs/omg/03-06-01.pdf </li></ul><ul><li>http://www.omg.org/docs/formal/03-03-01.pdf </l...
<ul><li>Noch Fragen? </li></ul>
Nächste SlideShare
Wird geladen in …5
×

Model Driven Architecture

817 Aufrufe

Veröffentlicht am

TechTalk von Frank Kautz (DLR Köln-Porz, 18.06.2008) über Model Driven Architecture.

Veröffentlicht in: Technologie
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Model Driven Architecture

  1. 1. TechTalk: Model Driven Architecture Frank Kautz, DLR Simulations- und Softwaretechnik 17.Juni.2008
  2. 2. Übersicht <ul><li>Einführung </li></ul><ul><li>Begriffe </li></ul><ul><li>UML-Profile </li></ul><ul><li>Object Constraint Language (OCL) </li></ul><ul><li>MDA-Modelle </li></ul><ul><li>Action Semantics </li></ul><ul><li>Transformationen </li></ul><ul><li>Fazit </li></ul>
  3. 3. Einführung <ul><li>Spezifikation der Object Management Group (OMG) </li></ul><ul><li>Modellgetriebene Softwareentwicklung </li></ul><ul><li>Wiederverwendung der Modelle </li></ul><ul><li>Generierung von Programmteilen aus Modellen </li></ul><ul><li>Modellierung mit der Unified Modeling Language (UML2) </li></ul><ul><li>Datenaustausch mit XML Metadata Interchange (XMI) </li></ul>
  4. 4. Begriffe <ul><li>Modell </li></ul><ul><ul><li>Formale Beschreibung eines Systems </li></ul></ul><ul><li>Metamodell </li></ul><ul><ul><li>Beschreibt die Elemente, die ein bestimmtes Modell enthalten kann </li></ul></ul><ul><li>Metametamodell </li></ul><ul><ul><li>Beschreibt die Element, die ein Metamodell enthalten kann </li></ul></ul><ul><li>Domain Specific Language (DSL) </li></ul><ul><ul><li>Spezielle Sprache für die Erstellung von Modellen, für eine bestimmte Anwendungsdomäne </li></ul></ul><ul><ul><li>XML-Dialekt </li></ul></ul><ul><ul><li>UML-Diagramme (Profile) </li></ul></ul>
  5. 5. UML-Profile <ul><li>Erweitert das Standard-Metamodell der UML </li></ul><ul><ul><li>Domänenspezifische Stereotypen </li></ul></ul><ul><ul><li>Constraints </li></ul></ul><ul><ul><li>Tagged Values </li></ul></ul>
  6. 6. Object Constraint Language (1/2) <ul><li>Entwickelt von IBM im Jahr 1995 </li></ul><ul><li>Formale Sprache </li></ul><ul><li>Unterstützt Spezifikationen </li></ul><ul><li>Verwendung in der UML </li></ul><ul><ul><li>Spezifizieren von Vor- und Nachbedingungen </li></ul></ul><ul><ul><li>Definieren von Constraints </li></ul></ul><ul><ul><li>Prüfen von Anfangswerten und abgeleiteten Werten </li></ul></ul>
  7. 7. Object Constraint Language (2/2) <ul><li>Mindestalter für den Besitz eines Autos ist 18 Jahre </li></ul>context Person inv volljaehrig: self.alter >= 18
  8. 8. MDA-Modelle (1/2) <ul><li>Computation Independent Model (CIM) </li></ul><ul><ul><li>Berechnungs- und Plattformunabhäniges Modell </li></ul></ul><ul><ul><li>Anforderungen an das System </li></ul></ul><ul><ul><li>Verwendung von DSL </li></ul></ul><ul><ul><li>z.B. Business Modell, Domänen Modell </li></ul></ul><ul><li>Platform Independent Model (PIM) </li></ul><ul><ul><li>Plattformunabhäniges Modell </li></ul></ul><ul><ul><li>Beschreibt den Aufbau und die Funktionalität eines Systems </li></ul></ul><ul><ul><li>Keine Implementierungsdetails </li></ul></ul><ul><ul><li>Verwendet Standard UML </li></ul></ul>
  9. 9. MDA-Modelle (2/2) <ul><li>Platform Specific Model (PSM) </li></ul><ul><ul><li>Plattformspezifisches Modell (JAVA, .NET, C++) </li></ul></ul><ul><ul><li>Enthält Implementierungsdetails </li></ul></ul><ul><ul><ul><li>Quellcode </li></ul></ul></ul><ul><ul><ul><li>Deployment Deskriptoren </li></ul></ul></ul><ul><ul><li>Verwendet UML mit speziellen Stereotypen (Profile) </li></ul></ul>
  10. 10. Action Semantics <ul><li>Bestandteil der UML 2 Superstructure </li></ul><ul><li>Ermöglicht das spezifizieren von Programmabläufen </li></ul><ul><li>Funktionsumfang von der OMG spezifiziert </li></ul><ul><li>Syntax wird vom MDA-Werkzeug Hersteller spezifiziert </li></ul><ul><ul><li>kein einheitlicher Standard </li></ul></ul>
  11. 11. QVT (Query Views and Transformations) <ul><li>Modelltransformationssprache </li></ul><ul><li>Definition von Mappings </li></ul><ul><ul><li>Wie die Elemente eines Modells in ein anderes Modell transformiert werden. </li></ul></ul><ul><li>2 Ansätze </li></ul><ul><ul><li>Deklarativ (Relation) </li></ul></ul><ul><ul><ul><li>Multi-direktional </li></ul></ul></ul><ul><ul><ul><li>Verwendet in der frühen Entwicklungsphase </li></ul></ul></ul><ul><ul><li>Operational (Mapping) </li></ul></ul><ul><ul><ul><li>Uni-direktional </li></ul></ul></ul><ul><ul><ul><li>Detaillierter Relationen </li></ul></ul></ul>
  12. 12. Transformationen 1/2 <ul><li>Modell zu Modell Transformationen </li></ul><ul><ul><li>Benötigt eine Transformationsvorschrift </li></ul></ul><ul><ul><li>Erzeugt ein weiteres Modell </li></ul></ul><ul><li>Modell zu Text Transformationen </li></ul><ul><ul><li>Einsatz von Generatoren </li></ul></ul><ul><ul><li>Erzeugt Quellcode </li></ul></ul>
  13. 13. Transformationen 2/2 Computation Independent Model Platform Independent Model Platform Specific Model Implementierung automatisiert automatisiert manuell/automatisiert Anforderungan an das System Plattformunabhänige Details Plattformspezifische Details + + +
  14. 14. Fazit <ul><li>Vorteile: </li></ul><ul><ul><li>Plattformunabhänige Entwicklung </li></ul></ul><ul><ul><li>Einfachere Migration </li></ul></ul><ul><li>Nachteile: </li></ul><ul><ul><li>Kein Round Trip Engineering </li></ul></ul><ul><ul><li>Hoher Aufwand in der Analysephase </li></ul></ul>
  15. 15. Quellen <ul><li>http://www.omg.org/docs/omg/03-06-01.pdf </li></ul><ul><li>http://www.omg.org/docs/formal/03-03-01.pdf </li></ul>
  16. 16. <ul><li>Noch Fragen? </li></ul>

×