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.

82 Chapter5. <strong>Model</strong>-<strong>Driven</strong>ConformanceChecking<br />

5.3 RelatedWork<br />

Several formal approaches have been proposed that address problems<br />

similartoours. Lam<strong>and</strong>Padget[2003]translateUMLstatechartsinto πcalculustodeterminebehaviouralequivalenceusingbisimulation.Schäferetal.[2001]presentatoolthatusesmodelcheckingtoverifystatemachines<br />

against collaboration diagrams. The use <strong>of</strong> such tools <strong>and</strong> approachesrequirescomplete,precise<strong>and</strong>integratedinteraction-<strong>and</strong>statebasedbehaviouralmodels.<br />

Thisimplies,forinstance,thatsending<strong>and</strong><br />

reception<strong>of</strong>messagesinscenariosareexplicitlylinkedtoevents<strong>and</strong>effectsinstatemachines.<br />

Inourcase,forthesequencediagrams,thisis<br />

problematic. Theyarecreatedearlyinthedevelopmentprocess<strong>and</strong>not<br />

intendedtobecompleteorprecise.<br />

Totakethisintoaccount,wegenerateastatemachinefromaset<strong>of</strong><br />

inputscenarios,that,subsequently,iscomparedtothestatemachinethat<br />

wascreatedbythedevelopers.<br />

Manyapproacheshavebeendefinedforsynthesis<strong>of</strong>state-basedmodels<br />

fromscenario-basedmodels. Amyot<strong>and</strong>Eberlein[2003],<strong>and</strong>Liangetal.<br />

[2006]bothevaluateovertwenty<strong>of</strong>them.Evaluationcriteriaincludelanguages,meanstodefinescenariorelationships<strong>and</strong>statemodeltype.Our<br />

industrialcasegivesustherequirementswithrespecttothesecriteriafor<br />

asynthesisapproach.<br />

Instead<strong>of</strong>usingamorepowerfulscenariolanguagesuchaslivesequencecharts[Damm<strong>and</strong>Harel,2001],welimitourselvestoUMLsequence<br />

diagramsaugmentedwithdecorations,asdictatedbyourindustrialcase<br />

study.Thedecorationswithstateinformationcanbeinterpretedasconditionsfromwhichinter-scenariorelationshipscanbederived.Finally,with<br />

respecttostatemodeltype,weconsiderapproachesthatresultinstate<br />

modelsforindividualcomponents(instead<strong>of</strong>globalstatemodels). ConsideringLiangetal.[2006]oneapproachbestmeetstheserequirements,<br />

namelytheoneproposedbyWhittle<strong>and</strong>Schumann[2000].<br />

Whittle<strong>and</strong>Schumann[2000]presentanalgorithmtomap UMLsequencediagramstoUMLstatecharts.<br />

Inthismappingthemessagesina<br />

scenarioarefirstannotatedwithpre-<strong>and</strong>postconditionsonstatevariables,<br />

referredtoasadomaintheory. Themappingisbasedontheassumption<br />

thatamessageonlyaffectsastatevariableifitspre-orpostconditionexplicitlyspecifiesitdoes;thedomaintheorydoesnotneedtobecomplete.<br />

Thus,thisso-calledframeaxiom 1 ,togetherwiththepre-<strong>and</strong>postconditions,resultsinapair<strong>of</strong>statevectorsforeachmessage(before<strong>and</strong>after).<br />

1 Thenamederivesfromacommontechniqueusedbyanimatedcartoonmakerscalled<br />

framingwherethecurrentlymovingparts<strong>of</strong>thecartoonaresuperimposedonthe<br />

‘frame’,whichdepictsthebackground<strong>of</strong>thescene,whichdoesnotchange(http://en.<br />

wikipedia.org/wiki/Frame_problem(June2007)).

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

Saved successfully!

Ooh no, something went wrong!