Model gestuurde ontwikkeling, in het Engels Model Driven Development ofwel MDD genoemd, wordt gedefinieerd als automatisering van software ontwikkeling door het gebruik van modellen.

Er is vaak verwarring over wat Model Driven Development wel en niet is en het wordt met name vaak verward met model gebaseerde ontwikkeling (Model Based development in het Engels). Er wordt een duidelijk verschil gemaakt tussen model gestuurde ontwikkeling en model gebaseerde ontwikkeling .

Model Gestuurde Ontwikkeling (MDD)

MDD is software ontwikkeling waarbij software automatisch afgeleid wordt van een of meer modellen. De essentie zit hem in deze automatische afleiding, de modellen sturen letterlijk de software ontwikkeling. Er zijn verschillende technieken om dit te bereiken.

* De eerste manier is het gebruik van code generatoren, waarbij source code gegenereerd wordt vanuit een model. 
  Dit resulteert in code die anders met de hand geschreven had moeten worden.
* De tweede manier is het interpreteren van modellen tijdens runtime.

Beide technieken hebben hun voor- en nadelen en de best keus hangt sterk af van de context waarin modellen gebruikt worden. Ook hybride varianten zijn goed mogelijk.

Model Gebaseerde Development (MBD)

MBD is software ontwikkeling waarbij modellen worden gebruikt, maar waarbij hieruit niet automatisch software afgeleid wordt. Modellen worden hier gebruikt voor documentatie, uitleg en communicatie. Ontwikkelaars gebruiken deze modellen als input schrijven de code met de hand.

Welke aanpak is het best ?

Het is geen zaak te kiezen tussen model gebaseerde of model gestuurde ontwikkeling. Ze hebben beide toegevoegde waarde, maar wel op een geheel ander vlak.

Bij OpenModeling hebben de focus op model gestuurde ontwikkeling. Op basis van onze eigen ervaring zijn we ervan overtuigd dat de voordelen van model driven development groot kunnen zijn, vele malen groten dan die van model gebaseerde ontwikkeling.

De voordelen van automatische software ontwikkeling zijn niet alleen groot, het is tegenwoordig ook mogelijk om deze met beperkte investering mogelijk te maken. De hulpmiddelen hiervoor zijn breed beschikbaar en maken het mogelijk om ik relatief korte tijd een model gestuurde omgeving op maat voor uw toepassingen op te zetten. Een goed voorbeeld hirvan ()maar niet het enige) is Eclipse waarin alle benodigde tools als open source beschikbaar zijn.