Modellgetriebene Softwareentwicklung ist konzeptionell nichts grundlegend neues, hat jedoch durch die MDA-Initiative der OMG schlagartig an Bedeutung gewonnen. Ziel ist es dabei, aus abstrakten Modellen ausführbaren Code zu generieren. Im Rahmen der MDA sind die Modelle typischerweise UML Diagramme - das muß aber nicht immer so sein. Bei der Beschäftigung mit modellgetriebener Entwicklung ist ein wichtiger Aspekt die Frage, ab wann es sich lohnt Modelle zu entwickeln und in eine Generatorinfrastruktur zu investieren: das Konzept der Softwaresystemfamilien spielt dabei eine wichtige Rolle.
Um Modelle effizient und semantisch wohl definiert erstellen und diese dann auch in Code transformieren zu können, sind Kenntnisse der Metamodellierung nötig. Zur Umsetzung der Transformations- und Generierungsschritte gibt es eine Reihe gängiger Techniken, ein Überblick über die vorhandenen Techniken und die Beherrschung der für das konkrete Problem geeigneten Technik sind Voraussetzung für eine effiziente Anwendung modellgetriebener Entwicklung. Zu guter Letzt muss man sich auch noch Gedanken machen, wie sich ein solches Vorgehen mit Softwareprozessen, insbesondere iterativen, agilen Vorgehensmodellen, vereinbaren lässt.
In diesem Seminar werden die die wichtigsten Konzepte modellgetriebener Entwicklung und der MDA erläutert und aufgezeigt, wo und wie man modellgetriebene Entwicklung wirtschaftlich und technisch sinnvoll einsetzen kann und welche Vorteile ein solches Vorgehen haben kann. An Beispielen aus der Enterprise und der Embedded Welt werden die Dinge verdeutlich. Das Seminar geht auch auf gängige Konzepte zur Codegenerierung und der Modell-zu-Modelltransformation ein, praktische Übungen mit dem Open Source Werkzeug openArchitectureWare runden die Theorie ab und verfestigen das Gelernte.
Folgende Themen werden im Einzelnen behandelt:
- Metamodelle mit mehreren Viewpoints
- Synergien zwischen MDSD und komponentenbasierter Entwicklung
- Modell-zu-Modelltransformationen und Modellmodifikationen
- Modularisierung von Generatoren, Variantenbildung
- Die Verwendung von MDSD im Zusammenhang mit Produktlinien
- Sinnvolle Verwendung der UML
- Die Erstellung grafischer und textueller Editoren
- Erstellung von Generatormodulen ("Cartridges")
Seminarinhalte:
- Domänenmodell der modellgetriebenen Entwicklung
- Begriffsdefinitionen im Rahmen der MDAli
- Abgrenzung der verschiedenen "Geschmacksrichtungen" MDSD, MDA, Software Factories, Model-Integrated Computing, Language-Oriented Programming
- Softwaresystemfamilien und Variabilitätsanalyse
- Wirtschaftliche Aspekte modellgetriebener Entwicklung
- Definition konsistenter Architekturen als Basis für modellgetriebene
- Entwicklung, insbesondere Komponentenbasierter Entwicklung
- Metamodellierung und Anpassung der UML an bestimmte Domänen (Profiles)
- Integration von generiertem und nicht generiertem Code
- Kaskadierte Modellgetriebene Entwicklung und Modell-zu
- Modelltransformationen
- Codegenerierung
- Modellgetriebene Entwicklung und der Softwareentwicklungsprozess
- Werkzeuge: openArchitectureWare, Eclipse, EMF
Der Referent: Markus Völter, freiberuflicher Berater.
Termin: 6. Dez. 2010 - 7. Dez. 2010
Veranstaltungsort: München
Preis:EUR 1590.00 zzgl. MwSt