304 Pages
English

A formal approach to software product families [Elektronische Ressource] / Alexander M. Gruler

Gain access to the library to view online
Learn more

Description

A Formal Approach toSoftware Product FamiliesAlexander M. Gruler¨ ¨TECHNISCHE UNIVERSITAT MUNCHEN¨INSTITUT FUR INFORMATIKA Formal Approach toSoftware Product FamiliesAlexander M. GrulerVollsta¨ndiger Abdruck der von der Fakult¨at fu¨r Informatik der TechnischenUniversita¨t Mu¨nchen zur Erlangung des akademischen Grades einesDoktors der Naturwissenschaften (Dr. rer. nat.)genehmigten Dissertation.Vorsitzender: Univ.-Prof. Dr. Burkhard RostPru¨fer der Dissertation:1. Univ.-Prof. Dr. Dr. h.c. Manfred Broy2. Univ.-Prof. Christian Lengauer, Ph.D.Universita¨t PassauDie Dissertation wurde am 17.05.2010 bei der Technischen Universita¨t Mu¨ncheneingereicht und durch die Fakult¨at fu¨r Informatik am 16.10.2010 angenommen.AbstractSoftware-intensive systems pervade our daily lives. Regarding the product range oforganizations which develop software-intensive systems, many organizations do notproduceunrelatedsystems,butratherproducefamiliesofsimilarsystemsthatsharecertain commonalities. Prominent examples of such families of software-intensivesystems can be found in a multitude of different application domains, comprisingembedded as well as business information systems. For example the model variantsof the same model series of a car manufacturer, e.g. the variants of the 7-seriesBMW, or the various variants of an operating system, e.g. the various editions ofthe operating system Microsoft Windows 7, constitute such families.

Subjects

Informations

Published by
Published 01 January 2010
Reads 16
Language English
Document size 1 MB

A

Formal

Approach

ot

SoftwareProductFamilies

Alexander

.M

Gruler

TECHNISCHEUNIVERSITA¨TMU¨NCHEN
INSTITUTFU¨RINFORMATIK

AFormalApproachto
SoftwareProductFamilies

AlexanderM.Gruler

Vollsta¨ndigerAbdruckdervonderFakulta¨tfu¨rInformatikderTechnischen
Universita¨tMu¨nchenzurErlangungdesakademischenGradeseines
DoktorsderNaturwissenschaften(Dr.rer.nat.)

genehmigtenDissertation.

Vorsitzender:Univ.-Prof.Dr.BurkhardRost
Pru¨ferderDissertation:
1.Univ.-Prof.Dr.Dr.h.c.ManfredBroy
2.Univ.-Prof.ChristianLengauer,Ph.D.
Universita¨tPassau

DieDissertationwurdeam17.05.2010beiderTechnischenUniversita¨tMu¨nchen
eingereichtunddurchdieFakulta¨tfu¨rInformatikam16.10.2010angenommen.

Abstract

Software-intensivesystemspervadeourdailylives.Regardingtheproductrangeof
organizationswhichdevelopsoftware-intensivesystems,manyorganizationsdonot
produceunrelatedsystems,butratherproducefamiliesofsimilarsystemsthatshare
certaincommonalities.Prominentexamplesofsuchfamiliesofsoftware-intensive
systemscanbefoundinamultitudeofdierentapplicationdomains,comprising
embeddedaswellasbusinessinformationsystems.Forexamplethemodelvariants
ofthesamemodelseriesofacarmanufacturer,e.g.thevariantsofthe7-series
BMW,orthevariousvariantsofanoperatingsystem,e.g.thevariouseditionsof
theoperatingsystemMicrosoftWindows7,constitutesuchfamilies.

Inordertoincreasetheeciencyinthedevelopmentofsuchsystemfamiliesareuse
strategyseemssensible.Theintegrateddevelopmentofafamilyofsoftware-intensive
systemsbyexplicitlymakinguseoftheircommonalitiesinastrategicandplanned
wayisthesubjectofsoftwareproductlineengineering.

Despiteitsobviousmotivation,thewayofconstructingafamilyofsystemsbytaking
advantageofcommonalitiesisnotsucientlyexplored—inparticularwithrespect
toitstheoreticalfoundation.Howcanreusebasedoncommonalitiesbetweensystem
variantstakeplaceinasystematicway?Whatarethefundamentalconceptsbehind
commonalitiesanddierencesofrelatedsystems?Howcancommonalitiesbetween
familymembersbedetermined?Howcantherelationbetweenfamilymembers
bemodeled,andhowarecommonalitiesintegratedintotheconstructionofthe
individualfamilymembers?Whatarethefundamentalconceptsthatconstitutea
softwareproductfamily,andwhencanwespeakofasoftwareproductfamilyatall?

i

Inthisthesisweaddresstheseandsimilarquestionsfromthepointofviewofanun-
derlyingmodelingtheory,andintroduceatheoreticalframeworkfortheconstruction
of,andthereasoningaboutsoftwareproductfamiliesandtheirproducts.

Ontheonehandwedothisforaveryspecickindofsoftwareproductfamilies,
whereaproductfamilyrepresentstheintegrated,implementation-platforminde-
pendent,operationalbehaviorofasetofsoftware-intensivesystems.Weprovide
aprocessalgebraicframeworkforthedevelopmentofsuchproductfamilies,which
allowstobenetfrombehavioralcommonalitiesforthedevelopmentofindividual
familymembers.Theframeworkcomprises(i)theprocessalgebraPF-CCSforthe
specicationofthebehaviorofasetofsoftware-intensive,reactivesystemsinan
integratedandsystematicallyplannedwayasaproductfamily,(ii)amulti-valued,
modallogic(amulti-valuedversionoftheµ-calculus),whichistailoredtothespeci-
cationandvericationofbehavioralpropertieswhicharisewhenconsideringalarge
varietyofsimilarsystems,and(iii)arestructuringconceptthatconstitutesthethe-
oreticalbasistodeterminebehavioralcommonalitiesintheoperationalbehaviorof
familymembers.

Ontheotherhandweconsidersoftwareproductfamilyconceptsingeneral,and
inparticularthegeneralconstructionconceptbehindanysoftwareproductfamily,
abstractingfromtheconcretekind,realizationandimplementationofthesoftware
productfamily,andthekindofproductswhichthefamilycomprises.Weformalize
theconceptualconstructionideabehindanysoftwareproductfamilybyelaborating
anaxiomatizationofsoftwareproductfamilyconcepts.Theaxiomatizationrepre-
sentsatheoreticalbasistomanipulateandtoreasonaboutsoftwareproductfamilies
ingeneral.Inaddition,itcharacterizestheclassofsoftwareproductfamilies.

Notethatthisthesisdoesnotpresentapracticalapproachinthesensethatthe
introducedconceptsandmethodscandirectlybeappliedovernightforthepracti-
caldevelopmentoflargesoftware-intensivesystems.Essentialaspectsofbringinga
softwareproductlinetolife,suchasthedenitionofasuitablemethodologicalap-
plicationoftheintroducedconcepts,orthedetailedembeddingintoadevelopment
process,arenotcoveredinthisthesis.Ourapproachservesasatheoreticalunder-
pinningfortheconstructionofandthereasoningaboutsoftwareproductfamilies,
whichmayguidethecreationofpracticalframeworks.

ii

Acknowledgements

Thisthesiswouldnothavebeenpossiblewithouttheencouragement,thesupport,
andtheunderstandingofmanypeople.ToallofthemIamdeeplygrateful.

FirstandforemostIwanttothankmydoctoraladvisorProf.ManfredBroy.The
conditionsandtheuniqueresearchenvironmentthathehasmanagedtocreateat
theChairofSoftware&SystemsEngineeringattheTUMhavemadethetimein
hisgroupanoutstandingexperiencewithexcellentworkandresearchopportunities,
andIconsidermyselfprivilegedtohavebeenapartofit.Iamverygratefulfor
thefreedomandthetimehehasgrantedmetondandpursuethetopicofthis
thesis,andforhispatiencewithmeduringthattime.IalsowanttothankProf.
ChristianLengauer,whoagreegedtoactassecondsupervisor,andwhoprovided
veryconstructiveandhelpfulsuggestionstoimprovethisthesis.

DuringthecourseofcreatingthisthesisIhadtoundergosomesituationsthat
gnawedatmymotivation.TheencouragementthatIreceivedinthesesituations,
especiallyfrommycolleaguesMartinLeuckerandMakariusWenzel,wasmostwel-
come,andIwanttothankyouforthat.

UndoubtedlyIoweMartinLeuckeradeptofgratitude.Inhispositionasanexpe-
riencedresearcherandpost-docinourgroupitwashimwhotaughtmetheABCof
scienticworkandwhointroducedmetomanyinterestingresearchareas.Iamvery
happytocallhimbothmyteacherandmyfriend.Specialthankstooursecretary
SilkeMu¨ller,theheartoftheentiregroup.Itiscertainlynoexaggerationtosay
thatwhenevershehappenedtobeoutofoce,everyoneimmediatelywishedher

iii

back.IalsowanttothankmycolleagueJudithThyssenforbeingawonderfuloce
mateduringthelastyears.

IamverygratefultoStefanBerghofer,DavidCruz,PeterHo¨fner,MartinLeucker,
ChristianLeuxner,DanielRatiu,MartinSachenbacher,DanielThoma,andMakar-
iusWenzelforreadingpartsofmythesisandforprovidingmeveryvaluablefeedback.

Finally,Iwanttothankmyfamily,inparticularmymotherandmyfather.Ulti-
mately,itwastheircare,theirlove,andtheirwayofraisingandeducatingme,that
hassetthecourseforwhatandwhereIcanbetoday.

vi

Munich,May2010

Contents

1.Introduction1
1.1.SoftwareProductLineEngineering...................2
1.2.ChallengesandTheirBackgrounds...................6
1.2.1.RequirementsforanImprovedEngineeringApproach....11
1.3.Contributions...............................12
1.4.RelatedWork...............................17
1.5.ThesisOutline..............................18
2.FormalizationofCharacteristicSoftwareProductFamilyConcepts21
2.1.SoftwareProductFamiliesandLines:AnInformalView.......23
2.2.AxiomatizationofSoftwareProductFamilyConcepts........30
2.2.1.Preliminaries:AlgebraicSpecication.............31
2.2.2.OperationsforConstructingaSoftwareProductFamily...32
2.2.2.1.CoreAssetsandNeutralElement..........33
2.2.2.2.Composition......................35
2.2.2.3.VariationPointsandVariants............35
2.2.2.4.Example:AProductFamilyofStickmenDrawings39
2.2.3.Axioms,PropertiesandAuxiliaryOperations.........43
2.2.3.1.AxiomsforConstructors...............43
2.2.3.2.TermNormalFormofProductFamilies.......46
2.2.3.3.Con