A comparison of 10 sampling algorithms for configurable systems
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 …
platform and application scenario. Often, this configurability renders the analysis of every …
Variability-aware static analysis at scale: An empirical study
The advent of variability management and generator technology enables users to derive
individual system variants from a configurable code base by selecting desired configuration …
individual system variants from a configurable code base by selecting desired configuration …
Discipline Matters: Refactoring of Preprocessor Directives in the #ifdef Hell
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 …
However, researchers and practitioners criticize the C preprocessor because of its negative …
Navigating the maze: the impact of configurability in bioinformatics software
The bioinformatics software domain contains thousands of applications for automating tasks
such as the pairwise alignment of DNA sequences, building and reasoning about metabolic …
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
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 …
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 …
ability of software to be customized without additional programming, is pervasive, and due to …
Variability through the eyes of the programmer
Preprocessor directives (# ifdefs) are often used to implement compile-time variability,
despite the critique that they increase complexity, hamper maintainability, and impair code …
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 …
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 …
analyze one of the largest open source projects, the Linux kernel, and quantify basic …
Assessing fine-grained feature dependencies
Context: Maintaining software families is not a trivial task. Developers commonly introduce
bugs when they do not consider existing dependencies among features. When such …
bugs when they do not consider existing dependencies among features. When such …