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.
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.