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.
98 Chapter5. <strong>Model</strong>-<strong>Driven</strong>ConformanceChecking<br />
tionsthatformaloop,resultinginnon-deterministicbehaviour.This<br />
hadthesamecauseasthepreviousobservation.<br />
AsaresponsetotheseobservationsOcéhastwooptions.Thefirstistoadd<br />
missingusecases<strong>and</strong>scenarios,<strong>and</strong>torefactoralternativesequencediagramstoremoveinconsistenciesinevent<strong>and</strong>actionsequences.Here,caremustbetaken,assuchmodificationsaffectthestatemachines<strong>of</strong>othercomponentsthatplayaroleintheinvolvedscenariosaswell.Thealternative<br />
optionistoonlyremovebehaviouralinconsistenciesintheimplementation<br />
statemachine.Thisalsorequirescarefulanalysis,sincedifferentdevelopmentgroups,responsiblefordifferentcomponents,mightdosodifferently,<br />
resultinginintegration<strong>and</strong>maintainabilityproblems.<br />
5.7 Discussion<br />
Generalisability<strong>of</strong>theapproach Toalargeextentourapproachisgeneric.<br />
Although,thenormalisedsourcemodelintheOcécaseonlycontainsa<br />
singlestatevariable,wealsoappliedourtransformationsteptotheATM<br />
exampleinWhittle<strong>and</strong>Schumann[2000] 1 . Thisexampleinvolvesthree<br />
statevariables.Byapplication<strong>of</strong>ourapproach(inbothcases)wedetected<br />
severalinconsistencies.<br />
We applied our approach successfully to both the ATM example <strong>of</strong><br />
Whittle<strong>and</strong>Schumann[2000]<strong>and</strong>Océ’sreferencearchitecture. Ourapproachisgenericwithrespecttoinputmodelsthatcomplytothemodel<br />
conventionsasoutlinedinSection5.5.1. Assuch,werequirea(manual)<br />
normalisationstepthatiscontextspecific; itdependsonthemodelling<br />
conventionsinuseataparticularcompany.<br />
Ourmodellingconventionsaremostrestrictivewithrespecttothetype<br />
<strong>of</strong>pre-<strong>and</strong>postconditionsusedinthedomaintheory.Aswedonotevaluate<br />
theseconditions,werequirethemtobe<strong>of</strong>theform stateVariable=value.<br />
InsomecasestheconditionsforanOperationrefertoaformalparameter.OurapproachcanstillbeappliediftheMessagesassociatedwiththatOperationinthesequencediagramsspecifyacorrespondingactualparameter.<br />
Then,we(manually)applytheconditiondirectlytotheMessagein<br />
thesequencediagram<strong>and</strong>substitutetheformalparameterfortheactual<br />
parameter.Morecomplicatedconditionsrequirefullinterpretation<strong>of</strong>OCL<br />
expressions.<br />
Ofcourse,pre-<strong>and</strong>postconditionshavetobeavailableforourapproach<br />
toproducemorethanonlyflatstatemachines. Inthecase<strong>of</strong>Océ,wede-<br />
1 Images<strong>of</strong>the(normalised)sourcemodel,aswellasall(intermediate)targetmodelsfor<br />
theATMexamplecanbedownloadedfromtheATLtransformationsrepository(http://<br />
www.eclipse.org/gmt/atl/atlTransformations/UMLSD2STMD)