Model driven development
From Wikipedia, the free encyclopedia
Model Driven Development (MDD) is a range of software development approaches that are based on the use of software modeling as a primary form of expression. Sometimes models are constructed to a certain level of detail, and then code is written by hand in a separate step. Sometimes complete models are built including executable actions. Code can be generated from the models, ranging from system skeletons to complete, deployable products. With the introduction of the Unified Modeling Language (UML), MDD has become very popular today with a wide body of practitioners and supporting tools. More advanced types of MDD have expanded to permit industry standards which allow for consistent application and results. The continued evolution of MDD has added an increased focus on architecture and automation.
MDD technologies with a greater focus on architecture and corresponding automation yield higher levels of abstraction in software development. This abstraction promotes simpler models with a greater focus on problem space. Combined with executable semantics this elevates the total level of automation possible. The Object Management Group (OMG) has developed a set of standards called Model Driven Architecture (MDA), building a foundation for this advanced architecture-focused approach.