Model-Driven Evolution of Software Architectures - Software and ...
Model-Driven Evolution of Software Architectures - Software and ...
Model-Driven Evolution of Software Architectures - Software and ...
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
50 Chapter3. State<strong>of</strong>thePractice<br />
butnottherationalebehindthelink.<br />
Whenprojectsdiddocumentrelationsbetweenrequirements,theyused<br />
separate spreadsheets. Some companies were using or experimenting<br />
withmoreadvancedrequirementsmanagementtoolssuchasRequisitePro<br />
(Rational), RTM(IntegratedChipware),<strong>and</strong>DOORS(Telelogic). Theseexperimentsweren’talwayssuccessful.<br />
Inonecase,thetool’susersdidn’t<br />
havetherightskills,<strong>and</strong>learningthemtooktoolong. Also,thetoolh<strong>and</strong>ledonlythemoretrivialrelationsbetweenrequirements,design,<strong>and</strong>test<br />
documents. So,developerscouldn’trelyonthetoolcompletely,whichis<br />
importantwhenusingatool.<br />
Requirementsmanagementalsoinvolvesreleasemanagement(managingfeaturesinreleases),changemanagement(backwardscompatibility),<br />
<strong>and</strong>configurationmanagement. Somerequirementsmanagementtools<br />
supportedtheseprocesses.However,becausemostcompaniesalreadyhad<br />
othertoolsforthisfunctionality,integrationwiththosetoolswouldhave<br />
beenpreferable.<br />
3.5 S<strong>of</strong>twareArchitectureResults<br />
Small projects didn’t always consider the explicit development, specification,<strong>and</strong>analysis<strong>of</strong>theproductarchitecturenecessary.<br />
Also,owing<br />
totime-to-marketpressure,thescheduleddeadlines<strong>of</strong>tenobstructedthe<br />
development<strong>of</strong>soundarchitectures.Architects<strong>of</strong>tensaidtheydidn’thave<br />
enoughtimetodothingsright.<br />
Thedistinctionbetweendetaileddesign<strong>and</strong>architectureseemedsomewhatarbitrary.Duringdevelopment,theprojectsinterpretedarchitecturesimplyashigh-leveldesign.Theydidn’tmakethedistinctionbetweenarchitectural<strong>and</strong>othertypes<strong>of</strong>designexplicit,as,forexample,Eden<strong>and</strong><br />
Kazman[2003]. There,thelocalitycriterionisintroducedtodistinguish<br />
architecturaldesignfromdetaileddesign. Adesignstatementissaidto<br />
belocalwhenitcan’tbeviolatedbymereexpansion. Theapplication<strong>of</strong><br />
adesignpatternisanexample<strong>of</strong>alocaldesignstatement. Architectural<br />
designisnotlocal. Forinstance,anarchitecturalstylecanbeviolatedby<br />
simpleexpansion.<br />
3.5.1 S<strong>of</strong>twareArchitectureDesign<br />
Designingaproduct’sorsubsystem’sarchitecturewasforemostacreative<br />
activitythatwasdifficulttodivideintosmall,easy-to-takesteps. Justas<br />
systemrequirementsformedthebasisforsystemarchitecturedecisions,<br />
systemarchitecturedecisionsconstrainedthes<strong>of</strong>twarearchitecture.