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.

3.5. S<strong>of</strong>twareArchitectureResults 51<br />

Insomecases,adifferentorganisationalunithaddesignedthesystem<br />

architecture. So,thearchitecturewasmoreorlessfixed–forinstance,<br />

whenthehardwarearchitecturewasdesignedfirstorwasalreadyknown.<br />

Thisledtosuboptimal(s<strong>of</strong>tware)architectures.Becauses<strong>of</strong>twarewasconsideredmoreflexible<strong>and</strong>hasashorterleadtime,projectsuseditt<strong>of</strong>ix<br />

hardwarearchitectureflaws,aswementionedbefore.<br />

Thedesignprocessdidn’talwaysexplicitlytakeintoaccountperformance<br />

requirements. In most cases where performance was an issue,<br />

projectsjustdesignedthesystemtobeasfastaspossible. Theydidn’t<br />

establishhowfastuntilanimplementationwasavailable. Projectsthat<br />

tookperformancerequirementsintoaccountduringdesigndidsomostly<br />

through budgeting. For example, they frequently divided a high-level<br />

real-time constraint among several lower-level components. This division,however,<strong>of</strong>tenwasbasedonthedevelopers’experienceratherthan<br />

well-fundedcalculations. Projectsalsousedthistechniqueforothernonfunctionalrequirementssuchasforpower<strong>and</strong>memoryuse.<br />

Projectssometimesconsideredcommercial<strong>of</strong>f-the-shelf(COTS)componentsasblackboxesinadesign,specifyingonlytheexternalinterfaces.<br />

Thiswassimilartoanapproachthatincorporatedhardwaredriversinto<br />

anobject-oriented(OO)design. However,developers<strong>of</strong>hardwaredrivers<br />

typicallydon’tuse OOtechniques. Byconsideringthesedriversasblack<br />

boxes<strong>and</strong>lookingonlyattheirinterfaces,thedesignerscouldnevertheless<br />

includetheminan OOdesign. FortheCOTScomponents,theblackbox<br />

approachwasn’talwayssuccessful. Insomecases,theprojectsalsohad<br />

toconsiderthecomponents’bugs,sotheycouldn’ttreatthecomponentsas<br />

blackboxes.<br />

Thes<strong>of</strong>twarearchitecture<strong>of</strong>tenmirroredthehardwarearchitecture,<br />

whichmadetheimpact<strong>of</strong>changesinhardwareeasiertodetermine.Most<br />

casesinvolvingcomplexsystemsemployedalayeredarchitecturepattern.<br />

Theselayersmadeiteasiertodealwithembedded-systems’growingcomplexity.<br />

3.5.2 S<strong>of</strong>twareArchitectureDescription<br />

UMLwasthemostcommonlyusednotationforarchitecturalmodelling.On<br />

thehigherabstractionlevels,thespecificmeaning<strong>of</strong>UMLnotationsinthe<br />

architecturedocumentationshouldbecleartoallstakeholders,whichwas<br />

notalwaysthecase. Someprojectsdocumentedthisinareferencearchitectureorarchitecturemanual(wediscussthesedocumentsinmoredetail<br />

later).

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

Saved successfully!

Ooh no, something went wrong!