Could someone explain what's the key difference among those concepts (MDD vs MDA vs MDE)?
Model driven development vs model driven architecture vs model driven engineering
4.4k views Asked by Asterisk AtThere are 3 answers
Model-driven engineering (MDE) is an approach to software development where models rather than programs are the principal outputs of the development process. The programs that execute on a hardware/software platform are then generated automatically from the models.
Model-driven architecture (MDA) was the precursor of more general model-driven engineering MDA is a model-focused approach to software design and implementation that uses a subset of UML models to describe a system.
Sommerville 9th Edition chapter 5
Model Driven architecture is the standard as defined by the object management group. It requires the production of computation independent models which are then transformed to platform independent and finally platform specific models. It has close ties to other standards such as UML, XMI, MOF e.t.c
Model driven engineering is the attempt to use Model driven architecture and turn it into a realisable engineering framework for use in the system/software design process.
Model driven development is probably the same as Model driven engineering, although my guess is that it is aimed solely at the production of software systems.
This website explains it quite well with a nice diagram to boot: http://modeling-languages.com/blog/content/relationship-between-mdamdd-and-mde
The difference between MDD and MDE is admittedly fairly vague and I have heard of other people use the terms interchangeably.