• Publications
  • Influence
A Comparison of 10 Sampling Algorithms for Configurable Systems
TLDR
We present a comparative study of 10 state-of-the-art sampling algorithms regarding their fault-detection capability and size of sample sets, and the ranking of algorithms. Expand
  • 100
  • 18
  • PDF
Intraprocedural dataflow analysis for software product lines
TLDR
In this paper, we demonstrate how to take any standard intraprocedural data flow analysis and automatically turn it into a feature-sensitive dataflow analysis in three different ways. Expand
  • 84
  • 12
  • PDF
The Love/Hate Relationship with the C Preprocessor: An Interview Study
TLDR
The C preprocessor has received strong criticism in academia, among others regarding separation of concerns, error proneness, and code obfuscation, but is widely used in practice. Expand
  • 69
  • 8
  • PDF
SPLLIFT: statically analyzing software product lines in minutes instead of years
TLDR
A software product line (SPL) encodes a potentially large variety of software products as variants of some common code base. Expand
  • 89
  • 6
  • PDF
Feature maintenance with emergent interfaces
TLDR
We propose a tool-based solution to support developers in recognizing and dealing with feature dependencies: emergent interfaces, based on feature-sensitive dataflow analysis. Expand
  • 32
  • 4
  • PDF
On the impact of feature dependencies when maintaining preprocessor-based software product lines
TLDR
In this paper, we analyze 43 SPLs of different domains, size, and languages. Expand
  • 33
  • 4
  • PDF
Discipline Matters: Refactoring of Preprocessor Directives in the #ifdef Hell
TLDR
The C preprocessor is used in many C projects to support variability and portability. Expand
  • 23
  • 3
  • PDF
Variability Bugs in Highly Configurable Systems
TLDR
We present a qualitative study of 98 diverse variability bugs (i.e., bugs that occur in some variants and not in others) collected from bug-fixing commits in the Linux, Apache, BusyBox, and Marlin repositories. Expand
  • 20
  • 3
  • PDF
The Discipline of Preprocessor-Based Annotations - Does #ifdef TAG n't #endif Matter
TLDR
The C preprocessor is a simple, effective, and language-independent tool. Expand
  • 16
  • 3
Detecting Overly Strong Preconditions in Refactoring Engines
TLDR
We propose a technique to detect overly strong preconditions in refactoring engines without needing reference implementations. Expand
  • 11
  • 2