Blogs (1) >>
ASE 2019
Sun 10 - Fri 15 November 2019 San Diego, California, United States
Wed 13 Nov 2019 14:20 - 14:40 at Hillcrest - Configurations and Variability Chair(s): Shin Hwei Tan

Code snippets are prevalent, but are hard to reuse because they often lack an accompanying environment configuration. Most are not actively maintained, allowing for drift between the most recent possible configuration and the code snippet as the snippet becomes out-of-date over time. Recent work has identified the problem of validating and detecting out-of-date code snippets as the most important consideration for code reuse. However, determining if a snippet is correct, but simply out-of-date, is a non-trivial task. In the best case, breaking changes are well documented, allowing developers to manually determine when a code snippet contains an out-of-date API usage. In the worst case, determining if and when a breaking change was made requires an exhaustive search through previous dependency versions.

We present V2, a strategy for determining if a code snippet is out-of-date by detecting discrete instances of configuration drift, where the snippet uses an API which has since undergone a breaking change. Each instance of configuration drift is classified by a failure encountered during validation and a configuration patch, consisting of dependency version changes, which fixes the underlying fault. V2 uses feedback-directed search to explore the possible configuration space for a code snippet, reducing the number of potential environment configurations that need to be validated. When run on a corpus of public Python snippets from prior research, V2 identifies 248 instances of configuration drift.

Wed 13 Nov

13:40 - 15:20: Papers - Configurations and Variability at Hillcrest
Chair(s): Shin Hwei TanSouthern University of Science and Technology
ase-2019-papers13:40 - 14:00
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
ase-2019-Journal-First-Presentations14:00 - 14:20
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
ase-2019-papers14:20 - 14:40
V2: Fast Detection of Configuration Drift in Python
Eric HortonNorth Carolina State University, Chris ParninNCSU
ase-2019-papers14:40 - 15:00
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
ase-2019-Journal-First-Presentations15:00 - 15:20
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