11.12.2012 Views

Model-Driven Evolution of Software Architectures - Software and ...

Model-Driven Evolution of Software Architectures - Software and ...

Model-Driven Evolution of Software Architectures - Software and ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

2.3. <strong>Model</strong>-<strong>Driven</strong>Engineering 33<br />

conforms to<br />

conforms to<br />

Metamodel<br />

+ source<br />

<strong>Model</strong><br />

Metametamodel<br />

conforms to<br />

TransformationMetamodel<br />

+ source<br />

Transformation<strong>Model</strong><br />

Transformation<br />

conforms to<br />

Metamodel<br />

+ target<br />

represented by<br />

<strong>Model</strong><br />

Figure 2.6:<strong>Model</strong>transformationmegamodel<br />

conforms to<br />

conforms to<br />

+ target<br />

pressionsintheObjectConstraintLanguage 1 (OCL)toselecttheelements<br />

inthesourcemodeltotransform.OCLisadeclarativelanguage,originally<br />

developedtospecifyconstraintsoverUMLmodels.<br />

TheMDEpatternormegamodelformodeltransformationsisdepicted<br />

inFigure2.6[Bézivinetal.,2005]. WithMDEaTransformationbetweena<br />

source<strong>and</strong>target <strong>Model</strong>isdefinedbyatransformationlanguage. When<br />

thislanguageisdefinedbyaTransformation<strong>Model</strong>Metamodel,thetransformationdefinitionisinfactamodelitself.<br />

This Transformation<strong>Model</strong>specifies<br />

transformations<strong>of</strong>sourceintotargetmodelsinterms<strong>of</strong>the Metamodels<br />

they conform to. Incorrespondencewiththemetamodellingmegamodelin<br />

Figure2.3onpage30,allinvolvedmetamodels conform toasingle Metametamodel.<br />

Atransformationengine(automatically)transformssourcemodelsthat<br />

conformtothesourcemetamodelintotargetmodelsthatconformtothe<br />

targetmetamodelasdescribedinthetransformationdefinition. Assuch,<br />

transformationenginesrequireseveralinputs:sourcemodel,sourcemetamodel,targetmetamodel,<strong>and</strong>transformationdefinition.<br />

Many different types <strong>of</strong> model transformations <strong>and</strong> model transformationlanguagesareconceivable.<br />

Sendall[2003];Czarnecki<strong>and</strong>Helsen<br />

[2006];<strong>and</strong>Mens<strong>and</strong>VanGorp[2006]eachgiveanumber<strong>of</strong>properties<br />

<strong>of</strong>modeltransformationlanguages. Theseincludethetype<strong>and</strong>number<br />

<strong>of</strong>source<strong>and</strong>targetmodels,horizontalvs. verticaltransformations(with<br />

respecttoabstractionlevel),type<strong>of</strong>notation(e.g.,graphicalvs. textual),<br />

source-targetrelationship(newvs.in-place),<strong>and</strong>manymore.<br />

1 http://www.omg.org/technology/documents/modeling_spec_catalog.htm#OCL(June2007)

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!