Feature-Interaction Aware Configuration Prioritization for Configurable Code
Unexpected interactions among features induce most bugs in a configurable software system. Exhaustively analyzing all the exponential number of possible configurations is prohibitively costly. Thus, various sampling techniques have been proposed to systematically narrow down the exponential number legal configurations to be analyzed. Since analyzing all selected configurations can require a huge amount of effort, fault-based configuration prioritization, that helps detect faults earlier, can yield practical benefits in quality assurance. In this paper, we propose CoPro, a novel formulation of feature-interaction bugs via common program entities enabled/disabled by the features. Leveraging from that, we develop an efficient feature-interaction-aware configuration prioritization technique for a configurable system by ranking the configurations according to their total number of potential bugs. We conducted several experiments to evaluate CoPro on the ability to detect configuration-related bugs in a public benchmark. We found that CoPro outperforms the state-of-the-art configuration prioritization techniques when we add them on advanced sampling algorithms. In 78% of the cases, CoPro ranks the buggy configurations at the top 3 positions. Interestingly, CoPro is able to detect 17 not-yet-discovered feature-interaction bugs
Wed 13 Nov
13:40 - 15:20: Papers - Configurations and Variability at Hillcrest Chair(s): Shin Hwei TanSouthern University of Science and Technology | ||||||||||||||||||||||||||||||||||||||||||
13:40 - 14:00 Talk | ACTGAN: Automatic Configuration Tuning for Software Systems with Generative Adversarial Networks Liang BaoSchool of Computer Science and Technology, XiDian University, Xin LiuDepartment of Computer Science, University of California, Davis, Fangzheng WangSchool of Computer Science and Technology, XiDian University, Baoyin FangSchool of Computer Science and Technology, XiDian University | |||||||||||||||||||||||||||||||||||||||||
14:00 - 14:20 Talk | Automated N-way Program Merging for Facilitating Family-Based Analyses of Variant-Rich Software Dennis ReulingSoftware Engineering Group, University of Siegen, Udo KelterSoftware Engineering Group, University of Siegen, Johannes BürdekTU Darmstadt, Real-time Systems Lab, Malte LochauTU Darmstadt Link to publication DOI | |||||||||||||||||||||||||||||||||||||||||
14:20 - 14:40 Talk | V2: Fast Detection of Configuration Drift in Python Pre-print | |||||||||||||||||||||||||||||||||||||||||
14:40 - 15:00 Talk | Feature-Interaction Aware Configuration Prioritization for Configurable Code Son NguyenThe University of Texas at Dallas, Hoan Anh NguyenAmazon, Ngoc TranUniversity of Texas at Dallas, Hieu TranThe University of Texas at Dallas, Tien N. NguyenUniversity of Texas at Dallas | |||||||||||||||||||||||||||||||||||||||||
15:00 - 15:20 Talk | Search-based test case implantation for testing untested configurations Dipesh PradhanSimula Research Laboratory, Norway, Shuai WangHong Kong University of Science and Technology, Tao YueNanjing University of Aeronautics and Astronautics & Simula Research Laboratory, Shaukat AliSimula Research Lab, Marius LiaaenCisco Systems Link to publication |