Using Machine Learning to Infer Constraints for Product Lines
Galindo Duarte, José Ángel
|Universidad de Sevilla. Departamento de Lenguajes y Sistemas Informáticos
|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 ...
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 accord-ing to the oracle, and use their resolution models to infer crosstree 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.
|Temple, P., Galindo Duarte, J.Á., Acher, M. y Jézéquel, J. (2016). Using Machine Learning to Infer Constraints for Product Lines. En SPLC 2016 : 20th International Systems and Software Product Line Conference (209-218), Beijing, China: ACM.