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.
Summary<br />
Twowell-knowns<strong>of</strong>twareengineeringlawsstatethat1)s<strong>of</strong>twarehasto<br />
bechangedconstantlyinresponsetonewuserrequirementsorachanged<br />
environment,thatis,s<strong>of</strong>twareevolvescontinuously<strong>and</strong>2)s<strong>of</strong>twarethat<br />
ischanged,becomesmorecomplicated. Theconsequence<strong>of</strong>thistrend<strong>of</strong><br />
increasingcomplexityisthatthemaintainability<strong>of</strong>s<strong>of</strong>twaresystemsdecreasesovertime:<br />
itbecomesmore<strong>and</strong>moredifficulttomakechanges.<br />
Thecomplexity<strong>of</strong>as<strong>of</strong>twaresystemisforalargepartdeterminedbyits<br />
structure,<strong>of</strong>tenreferredtoasarchitecture.Thisthesisfocusesontheevolution<strong>of</strong>s<strong>of</strong>twarearchitectures.Thistype<strong>of</strong>evolution,whilecommon,comes<br />
withaconsiderablerisk<strong>and</strong>cost.Ouraimistoreducethisrisk<strong>and</strong>cost.<br />
Twoobviousstrategiestoremedytheproblem<strong>of</strong>reducedmaintainability<strong>of</strong>s<strong>of</strong>twaresystemsare:1)applytechniquestomanagetheincreasing<br />
complexity,or2)applytechniquestoreducethecomplexity. Automation<br />
<strong>and</strong>abstractionaretwobasics<strong>of</strong>twareengineeringtechniquestosupport<br />
thesestrategies. Inthisthesisweinvestigatedtheapplicability<strong>of</strong>technologiesforanewapproach<strong>of</strong>s<strong>of</strong>twaredevelopment,basedonautomation<br />
<strong>and</strong>abstraction,tosupporttheevolution<strong>of</strong>s<strong>of</strong>twarearchitectures. This<br />
newapproachisreferredtoasmodel-drivens<strong>of</strong>twaredevelopment.<br />
Themainresearchquestionaddressedinthisworkis: Howcanevolution<strong>of</strong>s<strong>of</strong>twarearchitecturebesupported?<br />
Weclarifiedthescope<strong>of</strong>our<br />
workbydefiningthreerelatedsubquestionsthatdealwithintegration<strong>of</strong><br />
evolutionsupportinindustrialpractice,theimplication<strong>of</strong>theuse<strong>of</strong>productlineprinciplesontheevolutionsupport,<strong>and</strong>theautomation<strong>of</strong>evolutionsupportusingmodel-drivens<strong>of</strong>twaredevelopmenttechniques.Togetabetterunderst<strong>and</strong>ing<strong>of</strong>theuses<strong>of</strong>twareengineeringtechnologiesfordifferenttypes<strong>of</strong>tasksinindustry,westartedbyconductingasurvey.Inthissurveyweaskeds<strong>of</strong>twarepractitioners<strong>of</strong>eights<strong>of</strong>twaredevelopmentorganisationsaboutthes<strong>of</strong>twareengineeringtechnologiesthey<br />
use. Wealsopaidattentiontothesituationinwhichcertaintechnologies<br />
areapplied<strong>and</strong>potentialproblems. Thetrendsweobservedduringthis<br />
surveyinclude:theuse<strong>of</strong>product-lineapproaches,theinformaluse<strong>of</strong>mod-<br />
221