Reasoning on Feature Models: Compilation-Based vs. Direct Approaches

02/14/2023
by   Pierre Bourhis, et al.
0

Analyzing a Feature Model (FM) and reasoning on the corresponding configuration space is a central task in Software Product Line (SPL) engineering. Problems such as deciding the satisfiability of the FM and eliminating inconsistent parts of the FM have been well resolved by translating the FM into a conjunctive normal form (CNF) formula, and then feeding the CNF to a SAT solver. However, this approach has some limits for other important reasoning issues about the FM, such as counting or enumerating configurations. Two mainstream approaches have been investigated in this direction: (i) direct approaches, using tools based on the CNF representation of the FM at hand, or (ii) compilation-based approaches, where the CNF representation of the FM has first been translated into another representation for which the reasoning queries are easier to address. Our contribution is twofold. First, we evaluate how both approaches compare when dealing with common reasoning operations on FM, namely counting configurations, pointing out one or several configurations, sampling configurations, and finding optimal configurations regarding a utility function. Our experimental results show that the compilation-based is efficient enough to possibly compete with the direct approaches and that the cost of translation (i.e., the compilation time) can be balanced when addressing sufficiently many complex reasoning operations on large configuration spaces. Second, we provide a Java-based automated reasoner that supports these operations for both approaches, thus eliminating the burden of selecting the appropriate tool and approach depending on the operation one wants to perform.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
03/22/2023

Exploiting d-DNNFs for Repetitive Counting Queries on Feature Models

Feature models are commonly used to specify the valid configurations of ...
research
07/10/2022

A numerical analysis of planar central and balanced configurations in the (n+1)-body problem with a small mass

Two numerical algorithms for analyzing planar central and balanced confi...
research
12/06/2021

Configuration Space Exploration for Digital Printing Systems

Within the printing industry, much of the variety in printed application...
research
03/11/2018

Transfer Learning with Bellwethers to find Good Configurations

As software systems grow in complexity, the space of possible configurat...
research
07/28/2015

Projected Model Counting

Model counting is the task of computing the number of assignments to var...
research
11/01/2019

Whence to Learn? Transferring Knowledge in Configurable Systems using BEETLE

As software systems grow in complexity and the space of possible configu...
research
10/29/2020

A stochastic optimization algorithm for analyzing planar central and balanced configurations in the n-body problem

A stochastic optimization algorithm for analyzing planar central and bal...

Please sign up or login with your details

Forgot password? Click here to reset