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.

170 Chapter8. Visualisation<strong>of</strong>DSMLs<br />

receivedmuchattentionfromthearchitectureresearchcommunity,they<br />

havenotbeenappliedmuchinindustry[Kruchtenetal.,2006].<br />

AlthoughUMLisaimedatobject-orientedmodelling,itallowspractitionerstoaddressawiderange<strong>of</strong>issues[Medvidovicetal.,2002].Therefore,<strong>and</strong>because<strong>of</strong>theavailability<strong>of</strong>supporting(graphical)modelling<br />

tools,itis<strong>of</strong>tenusedinpracticetodescribes<strong>of</strong>twarearchitectures(e.g.,see<br />

Chapter3<strong>and</strong>Langeetal.[2006]).<br />

Adrawback<strong>of</strong>using UMLforthispurposeisthesemanticmismatch<br />

betweenarchitecturalconcepts<strong>and</strong> UML’sconcepts,whichareaimedat<br />

object-orienteddesign.Thisresultsincompromisesbetweencompleteness<br />

<strong>and</strong>legibility[Garlanetal.,2002]. Furthermore,forautomaticprocessing<strong>of</strong>models(e.g.,forcodegeneration)thecomplexity<strong>of</strong>UMLresultsin<br />

complexmodeltransformations(seeChapters5<strong>and</strong>7).<br />

Documentation Becauseinindustrialpracticeas<strong>of</strong>twarearchitectureistoo<br />

complextodescribeinasinglestroke,differentviewsareusedforitsdocumentation.Differenttypes<strong>of</strong>viewshavebeendefinedtoaddressspecific<br />

concerns. Thetwomostprominentcategories<strong>of</strong>viewsaremoduleviews<br />

<strong>and</strong>component-<strong>and</strong>-connector(C&C)views[Clementsetal.,2002a].<br />

Amoduleviewaddressesthequestion<strong>of</strong>howasystemisdeveloped;it<br />

definesthemostimportantimplementationunits(modules)<strong>and</strong>theirrelations.Moduleviewsareused,forinstance,toevaluatethemaintainability<br />

<strong>of</strong>asystemasimpliedbyitsarchitecture.<br />

Acomponent-<strong>and</strong>-connector(C&C)view,ontheotherh<strong>and</strong>,addresses<br />

thequestion<strong>of</strong>howasystemworks. Itdescribesasysteminterms<strong>of</strong><br />

runtimecomponents<strong>and</strong>connectors. Acomponentisanabstraction<strong>of</strong>a<br />

computationalelement;aconnectorisanabstraction<strong>of</strong>thewaycomponentsinteract.Assuch,aC&Cviewismoresuitedforanalysis<strong>of</strong>runtime<br />

properties,suchasperformance.<br />

Morespecifictypes<strong>of</strong>viewsaredefinedbyimposingrestrictionsonthe<br />

type<strong>of</strong>elements<strong>and</strong>relationsallowedinaview.Inamodule-usesview,for<br />

instance,only‘uses’relationsareallowed.<br />

Intheterminology<strong>of</strong> IEEEStd1471-2000[IEEE-1471,2000],aview<br />

conformstoaviewpointthat“specifiestheconventionsforusing<strong>and</strong>constructingaview”.Aviewpointaddressesaset<strong>of</strong>stakeholderconcerns.A<br />

number<strong>of</strong>viewpointsetsisavailablefromliterature,suchas[Clements<br />

etal.,2002a].Furthermore,inpracticealsocustomviewpointsaredefined.<br />

Typically,aviewpointdefinitionprescribesamodellinglanguageornotationthatenablesthespecification<strong>of</strong>anarchitecturalmodelthataddresses<br />

theconcerns<strong>of</strong>theviewpoint.Asanexample,aC&Cviewpointmightrefer<br />

toaparticularADL.Insummary,aviewpointdefinesatype<strong>of</strong>views<strong>and</strong>a<br />

viewisaparticularrepresentation<strong>of</strong>aparticularsystem.

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

Saved successfully!

Ooh no, something went wrong!