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