MDA – Model Driven Architecture

Slides:



Advertisements
Ähnliche Präsentationen
Projektmeeting Stufe I Kick-Off Stufe II
Advertisements

Persistente Domänenmodelle mit JPA 2.0 und Bean Validation
1 Referenzmodelle für HISinOne Dr. Uwe Hübner, 02. Juli 2009.
Integrations- und Funktionstests im Rahmen des V-Modelles
Submodell Softwareentwicklung (SE)
Dokumentation von Software Architekturen unter Berücksichtigung von IEEE 1471 Vortrag an der FH Regensburg © Dr. Ulrich Margull, 2004 Dr. Ulrich.
Vortrag im Rahmen des Seminars Modellgetriebene Softwareentwicklung
Das „Vorgehensmodell“
WS 04/05 wiss. Übung: Systemanalyse und Softwaredesign
Vorstellung von PaderWAVE Generierung von Web-Anwendungen aus visuellen Spezifikationen, SS04 Projektgruppe der AG Kastens.
Vorstellung von PaderWAVE Generierung von Web-Anwendungen aus visuellen Spezifikationen Projektgruppe aus der Arbeitsgruppe Programmiersprachen & Übersetzer.
Stefanie Selzer - Pascal Busch - Michael Kropiwoda
Agenda Einführung Haskell QuickCheck Zusammenfassung
Christian Kästner Modellgetriebene Softwareentwicklung Eclipse Modelling Framework.
Seminar Modellgetriebene Softwareentwicklung Einführung Seminar modellgetriebene Softwareentwicklung WS 05/06 Dipl.-Inf. Nadine Fröhlich Prof. Dr.-Ing.
XDoclet ETIS SS05.
Modellierung komplexer Realität mit Objekten
GROOVE Graphs for Object-Oriented Verification Seminar: SEFSIS Sommersemester 2006 Basil Becker
Introducing the .NET Framework
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 5. Test-First Prinzip Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse.
Software Engineering Seminar Metamodellierung
1 Dipl.-Inform. Christian Fuß Lehrstuhl für Informatik 3 an der RWTH Aachen 2. Übungsblatt Änderungen am ersten Entwurf und Entwurfsparadigmen 4. Mai 2006.
Objektorientierte Analyse und Design mit der Unified Modelling Language (UML) Sandra Meißl
UML Begleitdokumentation des Projekts
Werkzeugunterstützte Softwareadaption mit Inject/J
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 5. Test-First Prinzip Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse.
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 5. Test-First Prinzip Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse.
Visualisierung objektrelationaler Datenbanken
Spezifikation von Anforderungen
Prof. Dr. Gerhard Schmidt pres. by H.-J. Steffens Software Engineering SS 2009Folie 1 Weitere Vorgehensmodelle Der Rational Unified Process RUP –bei IBM.
12. Vorlesung: Aktivitätsdiagramme
Fünf-Fünf-Zwei der 3. Vorlesung/Übung Requirements Engineering WS 10/11 Marin Zec.
Präsentation einer Codegenerator Softwarelösung objectiF.
Letzter Tag Spaeter Zeitpunkt letzte Lied hoert man weiter.
Unified Modeling Language Repetition / Einführung zu UML
MDA – Framework AndroMDA
Grundlagen vernetzt-kooperativer Planungsprozesse für Komplettbau mit Stahlbau, Holzbau, Metallbau und Glasbau Projekt im DFG-SPP 1103 Bergische Universität.
Vorstellung des Projektergebnisses. Agenda I. Bla II. Änderungen beim Design III. Zeitliche Aufwände IV. Komplexität V. Produktpräsentation VI. Mögliche.
Einführung Modellgetriebene Softwareentwicklung, Metamodellierung Stephan Hildebrandt.
OOP-Begriffe Abstraktion Modellieren Klasse Objekt Attribute Methoden
Software-Technik „Zielorientierte Bereitstellung und systematische Verwendung von Prinzipien, Methoden und Werkzeugen für die arbeitsteilige, ingenieurmäßige.
UML-Kurzüberblick Peter Brusten.
UML Modellierung des Verhaltens von Klassen und Objekten
Paradigmenwechsel in der Unternehmensmodellierung Prof. Dr. Wolfgang Voigt Dipl.-Ing. Päd. Alexander Huwaldt UML Extrakt UML Seminar, Chemnitz
Vom Geschäftsprozess zum Quellcode
Projektmanagement Ziel und Umfang eines Softwareprojektes definieren
Enterprise Achitect (Sparx Systems) Marius Rudolf
Von UML 1.4 zu UML 2.0 InfoPoint vom Mittwoch
22. Oktober 2007Martin Feldmann, 1 Bachelor-Thesis Entwicklung einer automatisierten Dokumentation von LabVIEW Quellcode für das Rahmenwerk.
Untersuchungen zur Erstellung eines
Software Engineering Grundlagen
UML 2.0 und MDA: Neues Paradigma für die Softwareentwicklung?
Generative Softwareentwicklung in der Praxis Olaf Kaus, „Java User Group“, Hannover 6.Oktober 2003.
Unified Modeling Language UML
OOP-Begriffe Abstraktion Modellieren Klasse Objekt Attribute Methoden
Vortrag - Diplomarbeiten (HS I)
Inhalt Einordnung und Funktion der lexikalische Analyse Grundlagen
WebComposition & WCML Ein Vortrag von Michael Capper & Lars Völker.
Kurze Rekapitulation aus der Einführungsvorlesung Stunde VII: Planen und Realisieren Manfred Thaller, Universität zu Köln Köln 20. Oktober 2011.
OOSE nach Jacobson Sebastian Pohl/ST7 Betreuer: Prof. Dr. Kahlbrandt.
Seminar Modellgetriebene Softwareentwicklung XMI - XML Metadata Interchange Vortrag im Rahmen des Seminar Modellgetriebene Softwareentwicklung Mirko Otto.
XUML - executable UML Vortrag im Rahmen des Seminars zum Thema Modellgetriebene Softwareentwicklung René Heilmann.
Seminar Modellgetriebene Softwareentwicklung Thema 3: Metamodelle – MOF Michél Rieser Prof. Dr.-Ing. habil. Georg Paul
BA Stuttgart, Technische Informatik, SW-Engineering, Objektorientierter Entwurf April 2007 Seite 1 Objektorientierter Entwurf (OOD) Beispiel: Generator.
Objektorientierte (OO) Programmierung
Christoph Wirtz | Seminarvortrag EBC | Lehrstuhl für Gebäude- und Raumklimatechnik Ein Tool zum automatisierten Erstellen von Conversion Scripts.
© WZL/Fraunhofer IPT Entwicklung einer Profilbörse für Konfigurationen von Smartphones Vortrag der Seminararbeit von Patrick Posor Aachen, den
Technische Universität München, Informatik XI Angewandte Informatik / Kooperative Systeme Verteilte Anwendungen: Entwurf Dr. Wolfgang Wörndl
 Präsentation transkript:

MDA – Model Driven Architecture Vortrag im Rahmen des Seminar Modellgetriebene Softwareentwicklung Thomas Böhm

Inhalt MDA Grobkonzept & Ziele Begriffe Aufbau und Technik der MDA Ablauf der Softwareentwicklung mit MDA Zusammenfassung Ausblick Thomas Böhm Model Driven Architecture

MDA Grobkonzept & Ziele Automation durch Formalisierung Generatoren im Zusammenspiel mit formal eindeutigen Modellen automatische Generierung von Code Ziele: Handhabbarkeit von Komplexität durch Abstraktion gleichbleibende Softwarequalität Erhöhung der Wartbarkeit Erhöhung der Wiederverwendbarkeit Thomas Böhm Model Driven Architecture

Begriffe Modell Architektur SE ist model-driven vereinfachter Ausschnitt der Realität durch Abstraktion Konzentration auf wesentliche Eigenschaften Ausblenden irrelevanter Details Architektur beschreibt Teile eines Systems und ihr zusammenwirken SE ist model-driven weil Modelle die Richtung von Entwurf, Implementierung, Einführung, Wartung und Änderung durchgängig vorgeben Wie Schritt von Assembler zu prozeduralen Sprachen Thomas Böhm Model Driven Architecture

Aufbau und Technik der MDA I Model Driven Architecture gibt Modelle vor, deren Einsatz und deren Verhalten untereinander Unterteilung in drei Ebenen von Modellen Computation Independent Model (CIM) Platform Independent Model (PIM) Platform Specific Model (PSM) neu: Metamodelle und Transformationen nicht fix Thomas Böhm Model Driven Architecture

Aufbau und Technik der MDA II Umfeld & Anforderungen CIM Ablauflogik PIM Modell-Modell-Transformation CORBA Modell J2EE Modell XML Modell PSM Modell-Code-Transformation CORBA Code J2EE Code XML Code Implementierung Thomas Böhm Model Driven Architecture

Aufbau und Technik der MDA III Computation Independent Modell Konzentration auf Umfeld und Anforderung an das System keine Details über Aufbau oder Ablauf des Systems nutzt Vokabular der Anwender oft reine verbale Beschreibung Brücke zwischen Fachexperten der Anwender und Modellierer der Systemanforderungen Thomas Böhm Model Driven Architecture

Aufbau und Technik der MDA IV Platform Independent Model Konzentration auf Aufbau und Ablauf des Systems Ausblenden implementierungsspezifischer Details wie Betriebssystem, Programmiersprache, Datenverwaltungssystem ect. benutzt generelle Modellierungssprache wie UML MOF Thomas Böhm Model Driven Architecture

Aufbau und Technik der MDA V Platform Specific Model erweitert PIM um plattformspezifische Details und Konzepte enthält alle Informationen um ausführbaren Code zu erzeugen letzte Modellierungsebene vor der Implementierung Thomas Böhm Model Driven Architecture

Aufbau und Technik der MDA VI Transformation automatisierte Erzeugung eines Modells aus einem Modell höherer Ebene übersetzten eines Models in ein Modell auf der gleichen Ebene Thomas Böhm Model Driven Architecture

Ablauf der Softwareentwicklung mit MDA I Erstellung des CIM meist Übergabe von Anforderungen in Form einer Spezifikation Nutzung vorhandener Informationen wie Geschäftsprozessmodelle denkbar z.B. UML Use Case- oder Aktivitätsdiagramme Grundlage für Rücksprache mit dem Kunden und/oder Projektleiter Verstehen des Problems vordergründig Thomas Böhm Model Driven Architecture

Ablauf der Softwareentwicklung mit MDA II Erstellung des PIM Modellierung des Verhaltens des Systems durch Zustände und Ereignisse mögliche Verwendung von Zustandsdiagrammen der UML möglicher Einsatz von Klassendiagrammen benötigt eine formal eindeutige Designsprache (UML-Profil, MOF) Thomas Böhm Model Driven Architecture

Ablauf der Softwareentwicklung mit MDA III Mapping (heute noch nötig) zusätzliche Spezifikation für die Transformation vom PIM zum PSM  abhängig von Zielplattform Möglichkeit Markierungen festzulegen, um weiteres Transformationsverhalten zu steuern Einflechtung von Templates möglich Festlegung von Regeln bei der Transformation Thomas Böhm Model Driven Architecture

Ablauf der Softwareentwicklung mit MDA IV Transformation Erzeugen des PSM aus PIM und Mappinginformationen PIM Transformation Marks marked PIM Mapping Plattform- information PSM Thomas Böhm Model Driven Architecture

Ablauf der Softwareentwicklung mit MDA V Ergebnis <<BusinessEntity>> Customer <<EJBEntityBean>> Customer <<UniqueId>> +id:String +lastName:String ... <<PrimaryKeyField>> +id:String +lastName:String ... J2EE Transformation <<Query>> +findbylastName() <<EJBFinderMethod>> +findbylastName() PIM PSM Thomas Böhm Model Driven Architecture

Ablauf der Softwareentwicklung mit MDA VI Weiterverwendung PSM erzeugter PSM etwa auf Niveau bisheriger Modelle z.B. UML Klassendiagramm für JAVA mit entspr. Attributen, Methoden, Variabeln Transformation in Quellcode Thomas Böhm Model Driven Architecture

Ablauf der Softwareentwicklung mit MDA VII Änderungen im Programm werden am PIM durchgeführt  in allen darunter liegenden Transformationen übernommen  dauerhafte Konsistenz zw. Modelle und Quellcode Änderung der Technik (Plattform, Programmiersprache...) fließen in Transformation bzw. Mapping ein Thomas Böhm Model Driven Architecture

Zusammenfassung Code ist übersichtlicher Fehler besser identifizierbar, behebbar verbesserte Wartbarkeit durch stabile Code-Qualität einfacheres Programmieren durch Standardisierung und Automatisierung Wiederverwendbarkeit Thomas Böhm Model Driven Architecture

Ausblick Weiterentwicklung von Tools zur Unterstützung der Modellierungsebenen um Modellierungsvorschriften auf Metaebene festzulegen und überprüfen zu lassen zur besseren Transformation (XMI) Weiterentwicklung der Modellierungssprachen Verbreitung der Idee und ihr Anwendung direkt ausführbare Modelle auf PIM-Ebene denkbar und wünschenswert bedarf Entwicklung von fähigen Compilern, Interpreter Thomas Böhm Model Driven Architecture

Quellen: http://www.omg.org/mda/ MDA Guide Version 1.0.1 Javamagazin 9.2003 Thomas Böhm Model Driven Architecture