Model-Driven Evolution of Software Architectures - Software and ...
Model-Driven Evolution of Software Architectures - Software and ...
Model-Driven Evolution of Software Architectures - Software and ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
108 Chapter6. ConformanceCheckingII<br />
6.3 Approach<br />
6.3.1 ConformanceCheckingSystem<br />
Ourconformancecheckingsystem(CCS)isbasedontheideanottocompare<br />
architecture<strong>and</strong>implementationdirectly,buttoderiveviewsfromimplementation<strong>and</strong>architecturegovernedbyasharedviewpointexpressedin<br />
thesamelanguage.Thisovercomesboththeconceptual<strong>and</strong>technological<br />
problemsmentionedinSection6.1.Assuch,aconformancecheckbetween<br />
implementation<strong>and</strong>architecturethatdoesnotrequirechangestocurrent<br />
ways<strong>of</strong>working(e.g.,withrespecttolanguages<strong>and</strong>viewsused)requires<br />
thedefinition<strong>of</strong>acommonviewpoint. Thesemantics<strong>of</strong>sucha“designspaceconformanceviewpoint”mustbecompatiblewiththat<strong>of</strong>botharchitectural<strong>and</strong>implementationviews.Thus,amappingbetweenthedesignspaceconformanceviewthearchitecture<strong>and</strong>implementationmustexist.<br />
OurapproachisbasedontheworkpresentedbyVanDeursenetal.[2004]<br />
<strong>and</strong>Murphyetal.[1995]onarchitecturereconstruction.<br />
Inthischapterweconsiderthearchitecturalviewasleading.Asinthe<br />
approachbyMurphyetal.[1995]therearethreeimportantsituationsfor<br />
anyelementorrelationintheimplementation: convergence,divergence,<br />
<strong>and</strong>absence. Aconvergenceindicateselementsorrelationsintheimplementationthathaveacorrespondingelementorrelationinthearchitecture.<br />
Adivergenceonlyexistsintheimplementation<strong>and</strong>anabsence<br />
onlyexistsinthearchitecture. Theresult<strong>of</strong>aconformancecheckisaset<br />
<strong>of</strong>entities<strong>and</strong>relationsthatareattributedaccordingtothethreetypes<br />
above;thesignificance<strong>of</strong>mismatches(divergences<strong>and</strong>absences)founddependsingeneralontheinvolveddesigndecisions.Therefore,discovery<strong>of</strong>mismatchesshouldserveasatriggertoinvestigatefurtheriftheyareallowed<strong>and</strong>possiblydocumentedelsewhere.Ifnot,theyareconsideredtobe<br />
discrepanciesthatreducetheconceptualintegrity[Brooks,Jr,1975]<strong>of</strong>a<br />
system<strong>and</strong>mayresultinunexpecteddependencies,reducingthesystem’s<br />
maintainability.<br />
Theconformancecheckingsystem(CCS)outlinedinFigure6.4 isbased<br />
ontheprocessforarchitecturereconstructionpresentedbyVanDeursen<br />
etal.[2004]. Usingarchitecture<strong>and</strong>implementationartefacts,viewsare<br />
populatedthatareassociatedwithadesign-spaceconformanceviewpoint.<br />
Theconformanceviewpointisdefinedsuchthatitsdistancetoboththe<br />
architectural<strong>and</strong>implementationviewpointsisminimised.Furthermore,<br />
itenablestoattributeelements<strong>and</strong>relationwiththeirconformancestatus<br />
inasubsequentcomparison<strong>of</strong>thederivedconformanceviews. Forthisa<br />
set<strong>of</strong>comparisonrulesisspecified.Finally,apresentationfiltervisualises<br />
thecomparisonresults.