Model-driven development (MDD) enables software architects to use graphical models to communicate a solution to stakeholders during the software development process. The process has evolved as an alternative to traditional development approaches; namely spending significant time defining a solution up-front.
Model-driven development adheres to the Agile development ethos. It enables software architects to use a design tool to create graphical models of the solution before any source code is written. The tool can then create code directly from the models. This gives stakeholders a clear understanding of the proposed solution helping to manages expectations between management and development teams, without slowing down the development process.