Model-Driven Evolution of Software Architectures - Software and ...
Model-Driven Evolution of Software Architectures - Software and ...
Model-Driven Evolution of Software Architectures - Software and ...
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
196 Chapter9. Conclusion<br />
Themegamodelinvolvesthreetechnologicalspaces(seeSection2.3.4):a<br />
Source Space,whichcontainsthe Sourceartefactsforaparticularevolution<br />
task;an MDE Space(i.e.,modelware),inwhichweapplymodeltransformationstosupportas<strong>of</strong>twareevolutiontask;<strong>and</strong>aTarget<br />
Space,inwhich<br />
the Targetartefactsaregenerated.Dependingontheevolutioncontext,the<br />
Source<strong>and</strong>TargetmayalsobeintheMDEspace. Otherpossibilitiesinclude,theXML<strong>and</strong>grammarwarespaces.<br />
The <strong>Evolution</strong> TransformationiscarriedoutintheMDESpace<strong>and</strong>transformsaSource<br />
<strong>Model</strong>intoaTarget <strong>Model</strong>. Itisspecified(i.e., represented by)<br />
aset<strong>of</strong> Transformation RulesintheMDESpace.Thisimpliesthattheserules<br />
aredefinedusingamodeltransformationlanguage.This<strong>Evolution</strong>Transformationisspecifictothetaskath<strong>and</strong>.<br />
TheTransformationRulesare<br />
specifiedinterms<strong>of</strong>asource<strong>and</strong>atarget Metamodelassociatedwiththe<br />
source<strong>and</strong> targetmodel<strong>of</strong>thetransformation.<br />
Ascanbeseenfromthisthesis,<strong>of</strong>tennomodelisavailablethatissuitabletoserveassource<strong>of</strong>the<strong>Evolution</strong>Transformation.Insuchcasesan<br />
additionalstepisrequired. Normalisationistheexecution<strong>of</strong>aset<strong>of</strong> Normalisation<br />
Ruleswiththeaim<strong>of</strong>populatingaSource<strong>Model</strong>intheMDESpace<br />
suitableforfurthertransformationusingmodeltransformations.<br />
Finally,inthe Generationstepthe Targetfortheparticularevolutiontask<br />
iscreatedaccordingtoaset<strong>of</strong> Generation Rules.The target<strong>of</strong>theGeneration<br />
stepisinaspecificTargetSpace,forinstance,thegrammarwareorXML<br />
space.<br />
Allinvolvedmodel-levelartefacts(seeFigure2.3onpage30),thatis,<br />
theSource,Source<strong>Model</strong>,Target<strong>Model</strong>,<strong>and</strong>Target conform toaMetamodel.<br />
Itdependsonthetype<strong>of</strong>technologicalspacewhatkind<strong>of</strong>Metamodelis<br />
used,suchasagrammar,MOFmetamodel,orXMLschema.Inturn,these<br />
metamodels conform tothegoverning Metametamodelforthattechnological<br />
space,forinstance,MOFinthecase<strong>of</strong>theMDAspace.<br />
Normalisation Thenormalisationstepweintroducedinseveralcasesisnot<br />
alwaysfullyautomated. Itisthisnormalisationstepthatallowstoautomatesubsequentsteps.Normalisationisforalargepartcontextdependent.Theamount<strong>of</strong>normalisationrequireddependsonthetype<strong>of</strong>source<br />
artefacts,themodellingmaturitylevel,modellingconventions,thescope<strong>of</strong><br />
thesourcelanguage,<strong>and</strong>thetransformationrules.<br />
WhentheSourceSpace<strong>of</strong>thes<strong>of</strong>twareevolutiontaskisnotthesame<br />
astheMDESpace,normalisationatleastincludesabridgebetweenthat<br />
SourceSpace<strong>and</strong>theparticularMDESpace(e.g.,MDA).Insomecasesnormalisationinvolvesnotmorethanthatbridge.Ifthesourceisbasedona<br />
well-definedlanguagethebridgecanbefullyautomated.