Difference between revisions of "Model Driven Engineering"
From Suhrid.net Wiki
Jump to navigationJump to searchLine 7: | Line 7: | ||
* OMG defined a set of metamodeling levels, and defined a standard language for expressing metamodels, the Meta-Object Facility (MOF). A metamodel uses MOF to formally define the abstract | * OMG defined a set of metamodeling levels, and defined a standard language for expressing metamodels, the Meta-Object Facility (MOF). A metamodel uses MOF to formally define the abstract | ||
syntax of a set of modeling constructs. | syntax of a set of modeling constructs. | ||
+ | |||
+ | = Eclipse Modeling = | ||
+ | |||
+ | * '''Eclipse Modeling Framework (EMF)''' is a modeling framework and code generation facility for building tools and other applications based on a structured data model. | ||
+ | * From a model specification described in XMI, EMF provides tools and runtime support to produce a set of Java classes for the model, along with a set of adapter classes that enable viewing and command-based editing of the model, and a basic editor. | ||
= Epsilon = | = Epsilon = |
Revision as of 08:18, 25 May 2012
- All forms of engineering rely on models as essential to understanding complex real-world systems.
- The basic ideas of models, modeling, and model transformation are the basis for a set of software development approaches that are known as model-driven development (MDD).
- OMG champions a style of MDD called Model-Driven Architecture (MDA). It is based on a set of emerging standards for how to define a set of models, notations, and transformation rules.
- The MDA approach provides an open, vendor-neutral basis for system interoperability via OMG’s established modeling standards: Unified Modeling Language (UML), Meta-Object Facility (MOF), and Common Warehouse Metamodel (CWM). Platformindependent descriptions of enterprise solutions can be built using these modeling standards.
- By thinking of software and system development as a set of model refinements, the transformations between models become first-class elements of the development process.
- The ability to analyze, automate, and transform models requires a clear, unambiguous way to describe the semantics of the models. Hence, the models intrinsic to a modeling approach must themselves be described in a model, which we call a metamodel.
- OMG defined a set of metamodeling levels, and defined a standard language for expressing metamodels, the Meta-Object Facility (MOF). A metamodel uses MOF to formally define the abstract
syntax of a set of modeling constructs.
Eclipse Modeling
- Eclipse Modeling Framework (EMF) is a modeling framework and code generation facility for building tools and other applications based on a structured data model.
- From a model specification described in XMI, EMF provides tools and runtime support to produce a set of Java classes for the model, along with a set of adapter classes that enable viewing and command-based editing of the model, and a basic editor.
Epsilon
- Epsilon is a component of Eclipse that provides infrastructure for implementing uniform and interoperable model management languages.
- It can be used to manage models of diverse metamodels and technologies.
- At the core of Epsilon is the Epsilon Object Language (EOL) which provides features such as model modification, multiple model access, conventional programming
constructs (variables, loops, branches etc.), user interaction, profiling, and support for transactions.
- Although EOL can be used as a general-purpose model management language, its primary aim is to be reused in task-specific languages.
- Thus, a number of task-specific languages have been implemented atop EOL, such as model comparison (ECL) , modelmerging (EML) , model validation (EVL), model refactoring (EWL) and model-to-text transformation (EGL).