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.

6.6. Discussion 123<br />

addition<strong>of</strong>additionaltypes<strong>of</strong>connectorsordependencyrelations.Ifsuch<br />

additionsdonotrequireaspecificapproachforcomparison<strong>and</strong>presentation,thetransformationswespecifiedcanstillbeapplied.<br />

6.6.2 ImprovingtheApproach<br />

Generalisation Theuse<strong>of</strong>ATLmakesourapproachspecifictotheMDAtechnologicalspace.<br />

Thismeansthatwerequiresourcemodelstoconformto<br />

aMOF-basedmetamodel<strong>and</strong>tobeserialisedwithXMI. Inprinciplethis<br />

makesourapproachcompatiblewithmostUMLtools(viaXMI).However,in<br />

practiceadditionaltransformationsare<strong>of</strong>tenrequiredtoexchangesource<br />

<strong>and</strong>targetmodelsbetweenmodelling, visualisation<strong>and</strong>transformation<br />

tools(seealsoSections5.7<strong>and</strong>7.9).<br />

Thespecification<strong>of</strong>modelpopulationtransformationsisdependenton<br />

theapplied(programming<strong>and</strong>modelling)style(e.g.,usage<strong>of</strong>patterns<strong>and</strong><br />

codingconventions).Therequiredcomplexity<strong>of</strong>transformationrulesalso<br />

dependsontheprogrammingstyle. Forinstance,theuse<strong>of</strong>getter<strong>and</strong><br />

settermethodscircumventstheneedtolookfordirectfieldaccess.<br />

Togeneralisethecomparisonstep<strong>of</strong>ourapproachweconsideredthe<br />

definition<strong>of</strong>acompletegenericmetamodelfor(conformance)views.Sucha<br />

metamodelwoulddefineadditionalViewParts(seeFigure6.5onpage111)<br />

suchasElement,ConnectingElement,<strong>and</strong>Relation.TheseViewPartscan<br />

thenbespecialisedbymetamodelsforparticularviewpoints.Forexample,<br />

intheCPADLmetamodelaConnectorwouldbeaConnectingElement,<strong>and</strong><br />

anAttachmentaRelation.Allthiswouldmakesensewhenitispossibleto<br />

specifytransformationsforcomparison<strong>and</strong>presentationinterms<strong>of</strong>those<br />

genericViewParts. Thesetransformationscanthenbeusedforarbitrary<br />

conformancemodels.Theproblemwiththisapproachisthatitisnotpossibletoalsodefinegenericrelationsbetweenmetamodelelementsthatcanbe<br />

specialisedbyaconcretemetamodel.Soalthoughitispossibletodevelopa<br />

transformationtoalwayspresentaConnectingElementasanellipse,such<br />

atransformationcannotalsoinstantiateitsrelationsinagenericway.<br />

Wecanovercomethisproblembytheuse<strong>of</strong>higher-ordertransformations.<br />

Thesearetransformationsthathaveanothertransformationas<br />

sourceortargetmodel.ForATLthisismadepossiblebytheavailability<strong>of</strong><br />

ametamodelformodel-basedrepresentation<strong>of</strong>ATLtransformations<strong>and</strong><br />

correspondingprojectors. Suchahigher-ordertransformationwouldtake<br />

themetamodelinvolvedintheconformancecheckassourcemodel<strong>and</strong><br />

produceamodel<strong>of</strong>thetransformationsforcomparison<strong>and</strong>presentation<strong>of</strong><br />

theassociatedmodels.Thisappearstobefeasibleconsideringthefactthat<br />

thetransformationsweimplementedforthosestepsarequitesimilar.<br />

ThisapproachisinvestigatedinGraaf<strong>and</strong>vanDeursen[2007b],where<br />

weprovideamoreextensivegenericmetamodel,asdiscussedabove.Based

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

Saved successfully!

Ooh no, something went wrong!