Using Machine Learning to Infer Constraints for Product Lines

Abstract : Variability intensive systems may include several thousand features allowing for an enormous number of possible configurations , including wrong ones (e.g. the derived product does not compile). For years, engineers have been using constraints to a priori restrict the space of possible configurations , i.e. to exclude configurations that would violate these constraints. The challenge is to find the set of constraints that would be both precise (allow all correct configurations) and complete (never allow a wrong configuration with respect to some oracle). In this paper, we propose the use of a machine learning approach to infer such product-line constraints from an oracle that is able to assess whether a given product is correct. We propose to randomly generate products from the product line, keeping for each of them its resolution model. Then we classify these products according to the oracle, and use their resolution models to infer cross-tree constraints over the product-line. We validate our approach on a product-line video generator, using a simple computer vision algorithm as an oracle. We show that an interesting set of cross-tree constraint can be generated, with reasonable precision and recall.
Document type :
Conference papers
Complete list of metadatas

Cited literature [36 references]  Display  Hide  Download
Contributor : Paul Temple <>
Submitted on : Monday, May 30, 2016 - 5:38:15 PM
Last modification on : Friday, March 1, 2019 - 4:30:07 PM
Long-term archiving on : Wednesday, August 31, 2016 - 10:46:50 AM


Files produced by the author(s)



Paul Temple, José Angel Galindo Duarte, Mathieu Acher, Jean-Marc Jézéquel. Using Machine Learning to Infer Constraints for Product Lines. Software Product Line Conference (SPLC), Sep 2016, Beijing, China. ⟨10.1145/2934466.2934472⟩. ⟨hal-01323446⟩



Record views


Files downloads