2013 · 10 citations · 31 references
Open access
ComputingComputer ScienceFeature EngineeringKnowledge RepresentationSoftware EngineeringFormal OntologyKnowledge-based EngineeringOntology EngineeringSoftware DesignSoftware ModelingConfiguration ReasoningFeature ModelsHierarchyOntological AnalysisSemantic RelationshipsSoftware Product Line ModelingSoftware Product LinesSoftware Reverse Engineering
Feature Models (FMs) are a popular formalism for modeling and reasoning about the configurations of a software product line. As the manual construction or management of an FM is time-consuming and error-prone for large software projects, recent works have focused on automated operations for reverse engineering or refactoring FMs from a set of configurations/dependencies. Without prior knowledge, meaningless ontological relations (as defined by the feature hierarchy and groups) are likely to be synthesized and cause severe difficulties when reading, maintaining or exploiting the resulting FM. In this paper we define a generic, ontological-aware synthesis procedure that guides users when identifying the likely siblings or parent candidates for a given feature. We develop and evaluate a series of heuristics for clustering/weighting the logical, syntactic and semantic relationships between features. Empirical experiments on hundreds of FMs, coming from the SPLOT repository and Wikipedia, show that an hybrid approach mixing logical and ontological techniques outperforms state-of-the-art solutions and offers the best support for reducing the number of features a user has to consider during the interactive selection of a hierarchy.
31
George A. Miller · Communications of the ACM · 1995 · 14.1K citations · Full text
The String-to-String Correction Problem
Robert A. Wagner, Michael J. Fischer · Journal of the ACM · 1974 · 3.1K citations · Full text
Feature-oriented product line engineering
K.C. Kang, Jaejoon Lee, Patrick Donohoe · IEEE Software · 2002 · 507 citations