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.

9.4. <strong>Model</strong>-<strong>Driven</strong>Engineering(RQ3) 197<br />

NormalisationinChapter6wasslightlymoreinvolved.Here,afterthe<br />

bridgebetweenthegrammarware<strong>and</strong>MDAspaces,forwhichwereused<br />

existinggrammarwaretoXML<strong>and</strong>XMLtoMDAbridges,alsosomeabstractionstepswererequired.Wespecifiedtheseabstractionstepsusingmodel<br />

transformations.Hence,thisnormalisationstepwasals<strong>of</strong>ullyautomated.<br />

Inothercasesnormalisationismoredifficult<strong>and</strong>requiresreplacement<br />

<strong>of</strong>customannotations(seeChapter5),theapplication<strong>of</strong>aUMLpr<strong>of</strong>ile,<br />

ortheapplication<strong>of</strong>st<strong>and</strong>ardidiomsforparticularconcerns(seeChapter7).<br />

Thesecasesinvolvemanualeffortfornormalisationthatrequires<br />

domainknowledge. Asanexample,considertheuse<strong>of</strong>UML,ageneralpurposelanguage(GPL),inChapter7.UMLallowstoexpressaparticularconcernusingamultitude<strong>of</strong>differentidioms.<br />

Therefore,additional<br />

constraints<strong>and</strong>modellingconventionsarerequiredtoreducethecomplexity<strong>of</strong>modeltransformations.<br />

Otherwisesuchtransformationshave<br />

totakeintoaccounttoomanypossibleidiomsforaparticularconcern,as<br />

weillustratedinChapter7. Asasolutionweidentifiedtherelevantconcernsinthedomain<strong>of</strong>supervisorymachinecontrol(SMC)systems.<br />

For<br />

eachconcern,wedefinedasinglecorrespondingdesignidiom,whichconformsstrictlytoacorrespondingmetamodel.WedefinedaUML-SMCpr<strong>of</strong>ile,whichconsists<strong>of</strong>stereotypes<strong>and</strong>well-formednessrulesintheObjectConstraintLanguage<br />

1 (OCL)correspondingtothesedesignidioms. Normalisationinvolvesapplyingstereotypestoappropriatemodelelements<strong>and</strong><br />

modifyingthesourcemodelinsuchawaythatconcernsareconsistently<br />

addressedbytheircorrespondingdesignidiomwithoutviolatingany<strong>of</strong>the<br />

well-formednessrules<strong>of</strong>thepr<strong>of</strong>ile.<br />

Forcomplexnormalisations,weidentifiedatrade-<strong>of</strong>fbetweencomplex<br />

transformationrulestoaccountforalargeidiom<strong>of</strong>possibleinputpatterns,<br />

oramoreextensivenormalisationproceduretoaccountforalargenumber<br />

<strong>of</strong>restrictionsonthesourcemodels(i.e.,tolimitthesize<strong>of</strong>thesourcelanguage).<br />

So,evenincaseswherethesource<strong>of</strong>anevolutiontaskisavalidUML<br />

model(i.e.,amodelthatconformstotheUMLmetamodel),normalisation<br />

canberequiredtorestrictthenumber<strong>of</strong>possiblesourceidiomsresultingin<br />

alesscomplexevolutiontransformation.ThiswasnecessaryinChapter7<br />

<strong>and</strong>toalesserextentalsoinChapter5.<br />

TheneedforrestrictingUMLlikethis,raisesthequestionwhetherthe<br />

use<strong>of</strong>aDSMLdefinedusingMOFinsuchcaseswouldn’tbemoreappropriate.Thisisamatter<strong>of</strong>ongoingdebatebetweentwoschools<strong>of</strong>thoughtin<br />

theMDEcommunity[France<strong>and</strong>Rumpe,2007].Onearguesinfavour<strong>of</strong>the<br />

use<strong>of</strong>anextensiblegeneral-purposemodellinglanguage,whiletheother<br />

promotesthedefinition<strong>of</strong>DSMLs.Incurrentpractice,however,thelack<strong>of</strong><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!