A comparison of 10 sampling algorithms for configurable systems

F Medeiros, C Kästner, M Ribeiro, R Gheyi… - Proceedings of the 38th …, 2016 - dl.acm.org
Almost every software system provides configuration options to tailor the system to the target
platform and application scenario. Often, this configurability renders the analysis of every …

Variability-aware static analysis at scale: An empirical study

AV Rhein, J Liebig, A Janker, C Kästner… - ACM Transactions on …, 2018 - dl.acm.org
The advent of variability management and generator technology enables users to derive
individual system variants from a configurable code base by selecting desired configuration …

Discipline Matters: Refactoring of Preprocessor Directives in the #ifdef Hell

F Medeiros, M Ribeiro, R Gheyi, S Apel… - IEEE Transactions …, 2017 - ieeexplore.ieee.org
The C preprocessor is used in many C projects to support variability and portability.
However, researchers and practitioners criticize the C preprocessor because of its negative …

Navigating the maze: the impact of configurability in bioinformatics software

M Cashman, MB Cohen, P Ranjan… - Proceedings of the 33rd …, 2018 - dl.acm.org
The bioinformatics software domain contains thousands of applications for automating tasks
such as the pairwise alignment of DNA sequences, building and reasoning about metabolic …

An investigation of misunderstanding code patterns in C open-source software projects

F Medeiros, G Lima, G Amaral, S Apel… - Empirical Software …, 2019 - Springer
Abstract Maintenance consumes 40% to 80% of software development costs. So, it is
essential to write source code that is easy to understand to reduce the costs with …

Bringing together configuration research: Towards a common ground

P Gazzillo, MB Cohen - Proceedings of the 2022 ACM SIGPLAN …, 2022 - dl.acm.org
Configurable software makes up most of the software in use today. Configurability, ie, the
ability of software to be customized without additional programming, is pervasive, and due to …

Variability through the eyes of the programmer

J Melo, FB Narcizo, DW Hansen… - 2017 IEEE/ACM 25th …, 2017 - ieeexplore.ieee.org
Preprocessor directives (# ifdefs) are often used to implement compile-time variability,
despite the critique that they increase complexity, hamper maintainability, and impair code …

The discipline of preprocessor-based annotations-does# ifdef tag n't# endif matter

R Malaquias, M Ribeiro, R Bonifácio… - 2017 IEEE/ACM 25th …, 2017 - ieeexplore.ieee.org
The C preprocessor is a simple, effective, and language-independent tool. Developers use
the preprocessor in practice to deal with portability and variability issues. Despite the …

A quantitative analysis of variability warnings in linux

J Melo, E Flesborg, C Brabrand… - Proceedings of the 10th …, 2016 - dl.acm.org
In order to get insight into challenges with quality in highly-configurable software, we
analyze one of the largest open source projects, the Linux kernel, and quantify basic …

Assessing fine-grained feature dependencies

I Rodrigues, M Ribeiro, F Medeiros, P Borba… - Information and …, 2016 - Elsevier
Context: Maintaining software families is not a trivial task. Developers commonly introduce
bugs when they do not consider existing dependencies among features. When such …