What is Model Driven Development?
Model Driven Development (MDD) refers to the construction of a model of the required system
that drives the software development process.
Some MDD tools and notations address certain types of software only;
others attempt to be wide-spectrum.
Before purchasing or using a MDD tool, ask yourself the following questions:
- Does the modeling notation precisely capture all the required behaviour of the system?
In other words, can you use the model alone to predict exactly how
the system will respond to any possible input?
- Does the modelling tool support reasoning about the model?
In other words, can you express a required or expected behavior of the system in the modeling notation
and then use the tool to verify that the model cannot fail to exhibit that behaviour?
- Can the tool generate complete, ready-to-compile code from the model, with no need to
change or add to the generated code by hand?
Making handwritten changes to generated code is a sure route to poor software quality.