Högkonfigurerbara system gör det möjligt för användare att skräddarsy programvaran efter sina specifika behov. Alla kombinationer av konfigurationsalternativ är dock inte giltiga, och begränsningar uppstår av tekniska eller icke-tekniska skäl. En explicit beskrivning av dessa begränsningar i en variabilitetsmodell gör det möjligt att resonera om de konfigurationer som stöds. För att automatisera skapandet av variabilitetsmodeller måste vi identifiera ursprunget till sådana konfigurationsbegränsningar. Vi föreslår ett tillvägagångssätt som använder buildtime fel och en ny funktion-effekt heuristic att automatiskt extrahera konfiguration begränsningar från C-kod. Vi genomför en empirisk studie av fyra högkonfigurerbara open-source-system med befintliga variabilitetsmodeller med tre mål i åtanke: utvärdera exaktheten i vårt tillvägagångssätt, avgöra återvinningen av befintliga variabilitetsmodellers begränsningar med hjälp av vår analys, och klassificera källorna till variabilitetsmodellernas begränsningar. Vi anser att både vår utvinningsheuristik är mycket exakt (93 % respektive 77 %) och att vi kan återvinna 19 % av de befintliga variabilitetsmodellerna med vårt tillvägagångssätt. Vi anser dock att många av de återstående begränsningarna kräver expertkunskap eller dyrare analyser. Vi hävdar att vår strategi, verktyg och experimentella resultat stödjer forskare och praktiker som arbetar på variabilitet modell re-engineering, evolution, och konsekvens-kontroll tekniker.
Nadi m.fl. I REF föreslogs en automatiserad metod för att (åter)konstruera variabilitetsmodeller från C-kod genom att extrahera konfigurationsbegränsningar från kodbasen.
Mining configuration constraints: static analyses and empirical results
{'venue': 'ICSE 2014', 'journal': None, 'mag_field_of_study': ['Computer Science']}