Lo sviluppo model-driven, o MDD, è un approccio alla creazione di programmi per computer. L’obiettivo di MDD è scrivere, testare e implementare il programma per computer il più rapidamente possibile. In generale, questo approccio di sviluppo basato su modello tenterà anche di completare l’attività nel modo più efficiente e con il minor costo possibile.
Una delle caratteristiche dello sviluppo basato su modello è che più sviluppatori possono essere impiegati per lavorare sullo stesso prodotto finale. Al fine di accelerare il processo di creazione dei programmi software, ogni sviluppatore del progetto può assumere compiti specifici associati alla scrittura del programma e al test dei risultati. Ciò può consentire a persone con specifiche aree di competenza di contribuire al progetto, lasciando compiti più banali ad altri membri del progetto che non hanno lo stesso livello di competenza o background. Produrre un prodotto finito attraverso questo metodo collaborativo è pensato per essere un uso più efficiente di tempo e risorse, poiché tutti i soggetti coinvolti svolgono compiti adatti alle proprie capacità.
Oltre a utilizzare al meglio le risorse disponibili, lo scopo dello sviluppo basato su modello è quello di portare il programma nelle mani degli utenti il più rapidamente possibile. In alcuni casi, questo senso di urgenza si basa sull’economia vecchio stile; prima il programma è pronto e può essere rilasciato al marcatore del consumatore, più velocemente il produttore inizierà a trarre profitto dalla vendita del programma. Altre volte, il desiderio di un rapido turnaround ha a che fare con la soddisfazione di un’esigenza specifica, come la creazione di un software di elaborazione degli ordini personalizzato per un’azienda che desidera aumentare drasticamente il processo di evasione degli ordini in un periodo di tempo molto breve.
A seconda dell’ambiente di lavoro, lo sviluppo basato su modello può essere conosciuto con un paio di altri nomi. Lo sviluppo di software basato su modelli, o MDSD, è spesso impiegato come identificazione per questo processo efficiente in termini di tempo e costi di creazione di nuovi programmi. Allo stesso modo, MDD può anche essere conosciuto come architettura model-driven o MDA, riferendosi al processo di progettazione e costruzione associato allo sforzo.