Content deleted Content added
→MDA tools: add reference about metrics for models |
Finnusertop (talk | contribs) Rmv unsourced |
||
Line 1:
'''Model-driven architecture''' ('''MDA
== Overview ==
Then, given a [[platform model]] corresponding to [[CORBA]], [[.NET Framework|.NET]], the Web, etc., the PIM is translated to one or more [[platform-specific model]]s (PSMs) that computers can run. This requires mappings and transformations and should be modeled too.
The OMG organization provides rough specifications rather than implementations, often as answers to [[Request for Proposal|Requests for Proposals]] (RFPs). Implementations come from private companies or open source groups.
=== Related standards ===
Line 18 ⟶ 12:
=== Trademark ===
The [[Object Management Group]] holds registered trademarks on the term Model Driven Architecture® and its acronym MDA®, as well as trademarks for terms such as: Model Based Application Development™, Model Driven Application Development™, Model Based Application Development™, Model Based Programming™, Model Driven Systems™ and others.<ref>http://www.omg.org/legal/tm_list.htm</ref>
== Model-driven architecture topics ==
Line 24 ⟶ 18:
OMG focuses Model-driven architecture on forward engineering, i.e. producing code from abstract, human-elaborated modelling diagrams (e.g. class diagrams){{Citation needed|date=February 2007}}. OMG's ADTF (Analysis and Design Task Force) group leads this effort. With some humour, the group chose ADM (MDA backwards) to name the study of reverse engineering. ADM decodes to Architecture-Driven Modernization. The objective of ADM is to produce standards for model-based reverse engineering of legacy systems.<ref>adm website http://adm.omg.org</ref> [[Knowledge Discovery Metamodel]] (KDM) is the furthest along of these efforts, and describes information systems in terms of various assets (programs, specifications, data, test files, database schemas, etc.).
Of particular importance to model-driven architecture is the notion of [[model transformation]]. A specific standard language for model transformation has been defined by [[Object Management Group|OMG]] called [[QVT]].
Line 33 ⟶ 27:
Basically, an MDA tool is a tool used to develop, interpret, compare, align, measure, verify, transform, etc. models or metamodels.<ref>{{cite paper|author=Bézivin, J, Gérard, S, Muller, P-A, and Rioux, 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|deadurl=yes|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|df=}}</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.
▲: A tool used to check models for completeness, inconsistencies, or error and warning conditions. Also used to calculate metrics for the model.<ref name="MonperrusJézéquel2008">{{cite journal|last1=Monperrus|first1=Martin|last2=Jézéquel|first2=Jean-Marc|last3=Champeau|first3=Joël|last4=Hoeltzener|first4=Brigitte|title=A Model-Driven Measurement Approach|year=2008|pages=505–519|issn=0302-9743|doi=10.1007/978-3-540-87875-9_36}}</ref>
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 Eclipse 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.
|