GenTree: Using Decision Trees to Learn Interactions for Configurable Software

02/13/2021
by   KimHao Nguyen, et al.
0

Modern software systems are increasingly designed to be highly configurable, which increases flexibility but can make programs harder to develop, test, and analyze, e.g., how configuration options are set to reach certain locations, what characterizes the configuration space of an interesting or buggy program behavior? We introduce GenTree, a new dynamic analysis that automatically learns a program's interactions - logical formulae that describe how configuration option settings map to code coverage. GenTree uses an iterative refinement approach that runs the program under a small sample of configurations to obtain coverage data; uses a custom classifying algorithm on these data to build decision trees representing interaction candidates; and then analyzes the trees to generate new configurations to further refine the trees and interactions in the next iteration. Our experiments on 17 configurable systems spanning 4 languages show that GenTree efficiently finds precise interactions using a tiny fraction of the configuration space.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
03/28/2019

iGen: Dynamic Interaction Inference for Configurable Software

To develop, analyze, and evolve today's highly configurable software sys...
research
10/03/2020

Automated Performance Tuning for Highly-Configurable Software Systems

Performance is an important non-functional aspect of the software requir...
research
05/30/2022

T-Wise Presence Condition Coverage and Sampling for Configurable Systems

Sampling techniques, such as t-wise interaction sampling are used to ena...
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/06/2020

Certifying Decision Trees Against Evasion Attacks by Program Analysis

Machine learning has proved invaluable for a range of different tasks, y...
research
10/25/2021

RoBin: Facilitating the Reproduction of Configuration-Related Vulnerability

Vulnerability reproduction paves a way in debugging software failures, w...
research
07/08/2022

Decision Trees for Analyzing Influences on the Accuracy of Indoor Localization Systems

Absolute position accuracy is the key performance criterion of an Indoor...

Please sign up or login with your details

Forgot password? Click here to reset