Managing the complexity of variability in software product families
Keimpe Sybren Deelstra, Marco Sinnema · University of Groningen research database (University of Groningen / Centre for Information Technology) · 2008
Sinds de zestiger jaren wordt algemeen aangenomen, dat het hergebruik van software een goede oplossing is voor de problemen met betrekking tot de kosten, kwaliteit en levertijd van software producten. Vanaf de jaren negentig vormen software productfamilies een belangrijke toevoeging aan de bestaande methodes om het hergebruik van software te realiseren. Het idee achter productfamilies is, om binnen de gehele organisatie het gebruik van de verschillen en overeenkomsten tussen de te ontwikkelen producten expliciet te plannen. De invoering van deze aanpak in de industrie heeft de voordelen al naar voren gebracht. Het afleiden van deze producten is echter nog te duur, kost teveel tijd en er zijn teveel experts bij nodig. De uitdaging is daarom om de kosten voor het afleiden van deze producten te verlagen. Het doel van het onderzoek, dat we in ons proefschrift presenteren, is om technieken te ontwikkelen en te valideren die de hoge kosten van het afleiden van producten verlagen. Omdat het daarbij belangrijk is dat deze technieken bruikbaar zijn in de industrie, begint het proefschrift met een studie van de productafleiding in industriële toepassingen. We bieden een raamwerk van concepten die deze productafleiding beschrijft en binnen dit raamwerk presenteren wij onze analyse van de praktijk. Verder geven we een overzicht van de onderliggende oorzaken van de hoge kosten van het afleiden van deze producten. Het expliciet maken van de variabiliteit in een variabiliteitsmodel pakt veel van die onderliggende oorzaken aan. Daarom vergelijken en classificeren we bestaande technieken voor variabiliteitsmodellering, die beschreven zijn in de literatuur, op basis van de resultaten van onze analyse van de praktijk. Binnen deze classificatie analyseren we de modelleringsvormen en de tools die bij de technieken horen. Verder identificeren we de overeenkomsten en verschillen tussen de technieken en benoemen we de nog op te lossen problemen. Tenslotte beschrijft het proefschrift COVAMOF, onze methode voor variabiliteitsbeheersing. COVAMOF pakt zowel de belangrijkste uitdagingen binnen productafleiding als de nog op te lossen problemen van de bestaande technieken aan. De kern van COVAMOF bestaat uit een modelleringstaal en een uitgebreide toolset. Bovenop deze kern hebben we een afleidingsproces en een assessmentmethode voor productfamilies ontwikkeld. Het afleidingsproces beschrijft, hoe de modelleringstaal en de tools kunnen worden gebruikt om producten efficiënt van de productfamilie af te leiden. Het doel van de assessmentmethode is om de variabiliteit binnen de productfamilie te beoordelen op haar geschiktheid voor bestaande en toekomstige producten. In dit laatste deel van het proefschrift beschrijven we het afleidingsproces en de assessmentmethode in detail en valideren we COVAMOF met behulp van de resultaten van een experiment in de industrie. Deze resultaten tonen aan, dat COVAMOF de kosten van productafleiding reduceert, zowel wat betreft de benodigde inspanning, de afhankelijkheid van experts, als de levertijd.