Model-Based Engineering Forum

All Things Related to Model-Based Engineering

Navigation

Model-Driven Development (MDD)

Model-Driven Development (MDD), a.k.a. Model-Driven Software Engineering (MDSE), is a Model-Based Engineering sub-discipline that specializes in software-intensive applications. Model-Driven Development emphasizes the application of model-driven technologies to software development activities during the Software Development Life Cycle, such as requirements analysis, software analysis, software design, implementation, testing, and deployment.

You can find out more about visual modeling languages for Model-Driven Development on the Visual Modeling Forum.

Please contact us regarding additions and corrections.

Overview

Model-Driven Development
Description:
Model-Driven Development (MDD), a.k.a. Model-Driven Software Engineering (MDSE), is a Model-Based Engineering sub-discipline that specializes in software-intensive applications. Model-Driven Development emphasizes the application of model-driven technologies to software development activities during the Software Development Life Cycle, such as requirements analysis, software analysis, software design, implementation, testing, and deployment.

The term Model-Driven Development is popular among Software Developers and Software Engineers who advocate the use of UML as an Architecture Description Language for their software-intensive applications, and who want to practice Round-Trip Engineering.
Paradigm Characteristics:
System Development Paradigms => Model-Based Engineering =>
Model-Driven Development

General purpose?
Promotes open standards?
Rigorous?
Scaleable?
Supports Agile Development?
Automated tool support?
[Round-Trip Engineering]
[Extensive]

Enabling Technologies

  • Languages: UML 2, BPMN 2, ArchiMate, ...
  • Architecture Frameworks: TOGAF, DoDAF, UPDM, ...
  • Software/System Development Processes: Unified Process & variants (Open Unified Process, Rational Unified Process, ...), ...

Origin/Derivation:
The Model-Driven Development paradigm originated with unification of Object-Oriented methods and notations during the 1990s. The Model-Driven Development term became popular after the standardization of the Unified Modeling Language (UML v. 1.1) in 1997, which resulted in widespread industry tool support the new visual modeling language standard.
Usage:
  • Primary Users: Software Developers, Software Engineers, Business Analysts, ...
  • Other Users: N/A
Estimated Number of Users: N/A
Variations:
  • Model-Driven Software Engineering (MDSE) tends to be more rigorous and emphasizes Round-Trip Engineering (RTE)
  • Agile Modeling tends to less rigorous and de-emphasizes Round-Trip Engineering