|
|
The introduction to this article provides insufficient context for those unfamiliar with the subject. Please help improve the article with a good introductory style. |
Model-Driven Engineering (or MDE) refers to the systematic use of models as primary engineering artifacts throughout the engineering lifecycle. MDE can be applied to software, system, and data engineering. Models are considered as first class entities. The best known MDE initiative is the Object Management Group (OMG) called Model-Driven Architecture (MDA), which is a registered trademark of OMG.[1] Another related acronym is Model-Driven Development (MDD) which is also a OMG trademark.[1]
Contents |
MDE as used in software engineering
As it pertains to software development, Model-Driven Development refers to a range of 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. Model Integrated Computing is yet another branch of MDE. According to Douglas C. Schmidt, model-driven engineering technologies offer a promising approach to address the inability of third-generation languages to alleviate the complexity of platforms and express domain concepts effectively[2].
See also
- Model transformation (QVT)
- Language-oriented programming (LOP)
- Domain-Specific Modeling (DSM)
- Domain Specific Language (DSL)
- Model-based testing (MBT)
- Software factories (SF)
- Business-driven development (BDD)
+ Eclipse
- Generic Eclipse Modeling System (GEMS)
- Eclipse Modeling Framework (EMF)
- Graphical Modeling Framework (GMF)
References
- ^ a b Object Management Group (2006-05-24). OMG Trademarks. Retrieved on 2006-07-17.
- ^ Schmidt, D.C. (February 2006). "Model-Driven Engineering". IEEE Computer 39 (2). Retrieved on 2006-05-16., "A promising approach to address platform complexity — and the inability of third-generation languages to alleviate this complexity and express domain concepts effectively — is to develop Model-Driven Engineering (MDE) technologies..."
- The MDA Journal: Model Driven Architecture Straight From The Masters
- Model Driven Architecture: Applying MDA to Enterprise Computing, David S. Frankel, John Wiley & Sons, ISBN 0-471-31920-1
External links
- planet-mde, the Model Driven Engineering portal for the research and education community
- Model-Driven Architecture: Vision, Standards And Emerging Technologies at omg.org
- On the Unification Power of Models.
- A podcast discussion on Model-Driven Software Development.
- Article Making model-based code generation work


