Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Model-driven architecture
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
=== MDA tools === The OMG organization provides rough specifications rather than implementations, often as answers to [[Request for Proposal|Requests for Proposals]] (RFPs). The OMG documents the overall process in a document called the MDA Guide. Basically, an MDA tool is a tool used to develop, interpret, compare, align, measure, verify, transform, etc. models or metamodels.<ref>{{cite web|last1=Bézivin |first1=J |last2=Gérard |first2=S |last3=Muller |first3=P-A |last4=Rioux |first4=L|title=MDA components: Challenges and Opportunities|version=In: Metamodelling for MDA|year=2003|url=http://www.sciences.univ-nantes.fr/lina/atl/www/papers/MDAComponents-ChallengesOpportunities.V1.3.PDF|url-status=dead|archiveurl=https://web.archive.org/web/20061206191031/http://www.sciences.univ-nantes.fr/lina/atl/www/papers/MDAComponents-ChallengesOpportunities.V1.3.PDF|archivedate=2006-12-06}}</ref> In the following section "model" is interpreted as meaning any kind of model (e.g. a UML model) or metamodel (e.g. the CWM metamodel). In any MDA approach we have essentially two kinds of models: ''initial models'' are created manually by human agents while ''derived models'' are created automatically by programs. For example, an analyst may create a UML initial model from its observation of some loose business situation while a Java model may be automatically derived from this UML model by a [[Model transformation]] operation. An MDA tool may be a tool used to check models for completeness, inconsistencies, or error and warning conditions. Some tools perform more than one of the functions listed above. For example, some creation tools may also have transformation and test capabilities. There are other tools that are solely for creation, solely for graphical presentation, solely for transformation, etc. Implementations of the OMG specifications come from private companies or [[open source]] groups. One important source of implementations for OMG specifications is the [[Eclipse Foundation]] (EF). Many implementations of OMG modeling standards may be found in the [[Eclipse Modeling Framework]] (EMF) or [[Graphical Modeling Framework]] (GMF), the Eclipse foundation is also developing other tools of various profiles as GMT. Eclipse's compliance to OMG specifications is often not strict. This is true for example for OMG's EMOF standard, which EMF approximates with its Ecore implementation. More examples may be found in the M2M project implementing the QVT standard or in the M2T project implementing the MOF2Text standard. One should be careful not to confuse the ''List of MDA Tools'' and the [[List of UML tools]], the former being much broader. This distinction can be made more general by distinguishing 'variable metamodel tools' and 'fixed metamodel tools'. A UML CASE tool is typically a 'fixed metamodel tool' since it has been hard-wired to work only with a given version of the UML metamodel (e.g. UML 2.1). On the contrary, other tools have internal generic capabilities allowing them to adapt to arbitrary metamodels or to a particular kind of metamodels. Usually MDA tools focus rudimentary architecture specification, although in some cases the tools are architecture-independent (or platform independent). Simple examples of architecture specifications include: * Selecting one of a number of supported [[reference architecture]]s like [[Java EE]] or [[Microsoft .NET]], * Specifying the architecture at a finer level including the choice of presentation layer technology, business logic layer technology, persistence technology and persistence mapping technology (e.g. object-relational mapper). * Metadata: information about data.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)