Das Model Driven Development bezeichnet die modellgetriebene Anwendungsentwicklung auf Basis einer Abstraktion der Software-Anforderungen. Vorrangiges Ziel ist die Automatisierung der Development-Prozesse..
Für die Eclipse IDE gibt es einige MDD-Erweiterungen, darunter das Plug-in Actifsource.
Mit dem Einsatz modellgesteuerter Methoden zielen Softwareentwickler auf Automatisierung und damit einhergehende Produktivitätssteigerung ab. Weiterhin soll Model-driven Development (MDD) – auch Model-driven Software Development (MDSD) oder Model-driven Engineering (MDE) – Kosten senken, Komplexität reduzieren und letztlich die Software-Qualität verbessern.
Im Model Driven Development nehmen die Modelle eine Schlüsselrolle ein: sie dienen, anders als in der herkömmlichen Software-Entwicklung, nicht lediglich der Dokumentation oder der Analyse. Vielmehr handelt es sich bei den Modellen hier um primäre Entwicklungs-Ansätze, die das fertige Endprodukt oder System erst generieren.
Im Prozess der Modellierung werden Entwicklungs-Details mittels Modellen abstrahiert. Die Abstraktion bezieht sich auf solche Details, die für die technischen und fachlichen Domänen (Inhaltsbereiche) eines Projekts von geringerer Relevanz sind. Sie können auch im Nachgang von Generatoren noch automatisiert hinzugefügt werden. Damit reduziert sich im Gegensatz zu manueller Realisation der Erstellungsaufwand der Software erheblich.
Modell-verarbeitende Workflows und Generatoren ermöglichen eine Automatisierung, die sich positiv auf die Software-Qualität auswirkt. Beispielsweise lassen sich bestimmte Muster wiederholt durch Generatoren verwirklichen. Mögliche Fehler lassen sich in Generatoren beheben.
Komponenten und Begriffe im Model-driven Development
Im Rahmen der modellgetriebenen Softwareentwicklung spielen eine Reihe von Fachbegriffen und Termini eine wesentliche Rolle. Der Begriff der Domäne bezeichnet im MDD einen konkreten Aufgaben- oder Interessenbereich. Die Abgrenzung erfolgt beispielsweise fachlich oder technisch. Die Domäne ist derjenige Bereich, der durch das jeweilige Modell zu beschreiben ist.
Die formale Beschreibung der konkreten Struktur einer bestimmten Domäne erfolgt durch ein so genanntes Metamodell. Das Metamodell beschreibt somit indirekt gleichermaßen die Struktur der Modelle der Domäne. Das formale Modell stellt die Beschreibung der Domäne selbst dar. Die Struktur des formalen Modells wiederum ist durch ein Metamodell zu beschreiben.
Handelt es sich um eine formale Beschreibung des Modells einer Domäne, so ist von einem Meta-Metamodell die Rede. Im Model Driven Development liegt typischerweise eine Modellhierarchie vor, die sich aus drei Stufen zusammensetzt: dem Modell, dem Metamodell sowie dem Meta-Metamodell.
Hinsichtlich der MDD-Syntax ist zwischen abstrakter und konkreter Syntax zu unterscheiden. Die Beschreibung der Regeln zur präzisen und korrekten Modellkonstruktion auf Grundlage des Metamodells ist Aufgabe der abstrakten Syntax. Die konkrete Syntax dient der Festlegung konkreter Regeln der Repräsentation der zuvor beschriebenen abstrakten Syntax. Zu den Umsetzungsmöglichkeiten dieser Repräsentation gehören beispielsweise graphische oder textuelle Notationen. Auf deren Basis werden die Modelle letztlich realisiert.
Werkzeuge und Tools im Model Driven Development
Das MDD ist vom Einsatz zahlreicher Tools geprägt die bei der Modellierung und Automatisierung helfen. Dazu gehören beispielsweise graphische und textuelle Modellierungs-Werkzeuge. Rein graphische Modellierungs-Tools kommen zur rein graphischen Darstellung zum Einsatz. Sie unterstützen keine automatischen Transformationen.
Geht es um die Weiterverarbeitung eines Modells, muss dieses zunächst in ein Format wie XMI oder ein anderes textuelles Austausch-Format transformiert beziehungsweise exportiert werden. Anschließend lässt es sich mit gesonderten Transformatoren weiterverarbeiten.
Rein textuelle Modellierungs-Tools hingegen basieren auf Domain Specific Languages (domänenspezifische Sprachen). Damit unterstützen sie stets auch Transformationen (so etwa die Umwandlung in Dokumente oder in Quellcode).
Für die Modellierung in verschiedenen Domänen beziehungsweise Bereichen haben sich bestimmte Modellsprachen durchgesetzt. Durch die Nutzung einer Domain Specific Language (DSL) wird die Kommunikation zwischen den verschiedenen Fachbereichen sowie zwischen IT und Fachbereich verbessert. Die frei definierbaren und damit individuellen Sprachen lassen sich in DSL-Entwicklungs-Tools effizient umsetzen. Die einfache Meta-Modell-Struktur macht sie geeignet als Grundlage für Code-Generatoren (in Abgrenzung zu komplexeren Sprachen wie der Unified Modeling Language UML).
Zu unterscheiden sind textuelle und graphische Domain Specific Languages. Textuelle DSLs haben die Stärke, dass die Entwicklung und Versionierung mit den gleichen Standard-Tools wie der Quellcode vonstatten gehen. Damit entfällt der zusätzliche Zeitaufwand für die graphische Modellierung. Auf Basis der textuellen Modelle lassen sich zudem jederzeit graphische bedarfsgerechte und passgenaue Visualisierungen ableiten.
Stand: 08.12.2025
Es ist für uns eine Selbstverständlichkeit, dass wir verantwortungsvoll mit Ihren personenbezogenen Daten umgehen. Sofern wir personenbezogene Daten von Ihnen erheben, verarbeiten wir diese unter Beachtung der geltenden Datenschutzvorschriften. Detaillierte Informationen finden Sie in unserer Datenschutzerklärung.
Einwilligung in die Verwendung von Daten zu Werbezwecken
Ich bin damit einverstanden, dass die Vogel IT-Medien GmbH, Max-Josef-Metzger-Straße 21, 86157 Augsburg, einschließlich aller mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen (im weiteren: Vogel Communications Group) meine E-Mail-Adresse für die Zusendung von Newslettern und Werbung nutzt. Auflistungen der jeweils zugehörigen Unternehmen können hier abgerufen werden.
Der Newsletterinhalt erstreckt sich dabei auf Produkte und Dienstleistungen aller zuvor genannten Unternehmen, darunter beispielsweise Fachzeitschriften und Fachbücher, Veranstaltungen und Messen sowie veranstaltungsbezogene Produkte und Dienstleistungen, Print- und Digital-Mediaangebote und Services wie weitere (redaktionelle) Newsletter, Gewinnspiele, Lead-Kampagnen, Marktforschung im Online- und Offline-Bereich, fachspezifische Webportale und E-Learning-Angebote. Wenn auch meine persönliche Telefonnummer erhoben wurde, darf diese für die Unterbreitung von Angeboten der vorgenannten Produkte und Dienstleistungen der vorgenannten Unternehmen und Marktforschung genutzt werden.
Meine Einwilligung umfasst zudem die Verarbeitung meiner E-Mail-Adresse und Telefonnummer für den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern wie z.B. LinkedIN, Google und Meta. Hierfür darf die Vogel Communications Group die genannten Daten gehasht an Werbepartner übermitteln, die diese Daten dann nutzen, um feststellen zu können, ob ich ebenfalls Mitglied auf den besagten Werbepartnerportalen bin. Die Vogel Communications Group nutzt diese Funktion zu Zwecken des Retargeting (Upselling, Crossselling und Kundenbindung), der Generierung von sog. Lookalike Audiences zur Neukundengewinnung und als Ausschlussgrundlage für laufende Werbekampagnen. Weitere Informationen kann ich dem Abschnitt „Datenabgleich zu Marketingzwecken“ in der Datenschutzerklärung entnehmen.
Falls ich im Internet auf Portalen der Vogel Communications Group einschließlich deren mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen geschützte Inhalte abrufe, muss ich mich mit weiteren Daten für den Zugang zu diesen Inhalten registrieren. Im Gegenzug für diesen gebührenlosen Zugang zu redaktionellen Inhalten dürfen meine Daten im Sinne dieser Einwilligung für die hier genannten Zwecke verwendet werden. Dies gilt nicht für den Datenabgleich zu Marketingzwecken.
Recht auf Widerruf
Mir ist bewusst, dass ich diese Einwilligung jederzeit für die Zukunft widerrufen kann. Durch meinen Widerruf wird die Rechtmäßigkeit der aufgrund meiner Einwilligung bis zum Widerruf erfolgten Verarbeitung nicht berührt. Um meinen Widerruf zu erklären, kann ich als eine Möglichkeit das unter https://contact.vogel.de abrufbare Kontaktformular nutzen. Sofern ich einzelne von mir abonnierte Newsletter nicht mehr erhalten möchte, kann ich darüber hinaus auch den am Ende eines Newsletters eingebundenen Abmeldelink anklicken. Weitere Informationen zu meinem Widerrufsrecht und dessen Ausübung sowie zu den Folgen meines Widerrufs finde ich in der Datenschutzerklärung.
Modelltransformation
Eine weitere Gruppe von Werkzeugen im Model Driven Development sind die reinen Transformatoren. Deren einzige Aufgabe ist die Transformation der Modelle. Reine Transformatoren verfügen typischerweise nicht über graphische Modellierungs-Funktionen. Der Import der Modelle erfolgt in einem textuellen Austauschformat (meist XMI), bevor sie in ein internes Modell-Format transformiert werden. Im Anschluss lassen sie sich wieder exportieren.
Darüber hinaus gibt es auch integrierte Tools für das Model Driven Development. Diese bieten Funktionalitäten wie die Modellierung selbst, die Transformation und die Codegenerieung in nur einem Werkzeug. Dies vermeidet zusätzliche Arbeitsschritte wie etwa Export- und Import-Prozesse.
Ebenso entfallen bei integrierten MDD-Tools etwaige Probleme mit der Kompatibilität beim Datenaustausch. Weiterhin profitieren die Synchronisation zwischen dem technischen und fachlichen Modell sowie die Navigierbarkeit zwischen diesen Modellen von integrierten Tools.