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.

7.8. Transformation 151<br />

+ capability<br />

CapabilityUsage<br />

+ beginState :EInt<br />

+ endState :EInt<br />

+ requires<br />

Resource<br />

+ name :EString<br />

+ fulfils<br />

Capability<br />

+ name :EString<br />

*<br />

Behaviour<br />

+ name :EString<br />

*<br />

+ resources<br />

*<br />

+ capabilities<br />

1..*<br />

+ behaviours<br />

+ behaviour<br />

SystemDefinition<br />

+ requests<br />

+ id :EString<br />

*<br />

+ tasks<br />

+ iftrue<br />

AndTask<br />

Request<br />

+ name :EString<br />

OrTask<br />

+ condition :EString<br />

Static Dynamic<br />

1..*<br />

+ predecessors<br />

*<br />

+ tasks<br />

1..* + iffalse<br />

Task<br />

SimpleTask<br />

Created with Poseidon for UML Community Edition. Not for Commercial Use.<br />

Figure 7.10:Targetmetamodel<br />

includesaset<strong>of</strong>(direct) predecessors,thatis,otherTasksthatneedtobe<br />

executedbeforeitcanbedispatched.Thisrelationisusedto(dis)allowconcurrency<strong>and</strong>implysynchronisation;inprinciplealltasksareexecutedinparallel,unlesspreventedbythepredecessorrelation.Conditionalexecutioncanbespecifiedusing<br />

OrTasks,thatcontaintwo Tasks(iftrue<strong>and</strong> iffalse)<br />

thatmaybecomposite.Theevaluation<strong>of</strong>its conditiondetermineswhichone<br />

willbedispatched.Finally,toclusterTasksthatallneedtobeperformed,<br />

an AndTaskcanbeused.<br />

7.8 Transformation<br />

Our transformation rules are defined as mappings from a normalised<br />

sourcemetamodel(i.e.,our UMLpr<strong>of</strong>ile)toaTRSmetamodel. Weused<br />

MOFtodefinethetargetmetamodelratherthantailoringtheUMLusing<br />

yetanotherpr<strong>of</strong>ile. Inthissectionwefirstintroducethetransformation<br />

languagethatwasusedtodefinethetransformationstep<strong>of</strong>ourmigration<br />

approach.<br />

Forthedefinition<strong>of</strong>ourtransformationsweusedthefollowingstrategy.<br />

First,weindicatehowelementsinthenormalisedsourcemetamodelare<br />

relatedtotheprimaryelements<strong>of</strong>thetargetmetamodel.Second,foreach

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

Saved successfully!

Ooh no, something went wrong!