Demo Data from VLDB 2026 / reviewers in the wild / expert
Max Lillack
dblp:17/10404
· DBLP profile ↗
4ranked-venue papers
4as first author
0since 2021 · last 2019
0000-0001-8213-6988ORCID · verified
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 4 · 4 first-authorArtificial intelligence and machine learning · 1 · 1 first-authorApplied, interdisciplinary, general and emerging computing · 1 · 1 first-author
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Software engineering, system software, and programming languages
3 papers |
Software maintenance and evolution · 42% Program analysis · 40% Requirements engineering and software design · 18% |
Topics — the 5 heaviest of 5, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Software maintenance and evolution
software configuration |
0.5 | 2 | 2018 | Tracking Load-Time Configuration Options · IEEE Trans. Software Eng. 2018 Tracking load-time configuration options · ASE 2014 |
Program analysis
static analysis |
0.5 | 2 | 2018 | Tracking Load-Time Configuration Options · IEEE Trans. Software Eng. 2018 Tracking load-time configuration options · ASE 2014 |
Software maintenance and evolution
software merging |
0.4 | 1 | 2019 | Intention-based integration of software variants · ICSE 2019 |
Requirements engineering and software design
software product lines |
0.4 | 1 | 2019 | Intention-based integration of software variants · ICSE 2019 |
Program analysis › static analysis
taint analysis |
0.3 | 1 | 2018 | Tracking Load-Time Configuration Options · IEEE Trans. Software Eng. 2018 |
Methods — techniques the papers use, named apart from their topics
static taint analysis · 0.5
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2019 | Intention-based integration of software variantsabstractCloning is a simple way to create new variants of a system. While cheap at first, it increases maintenance cost in the long term. Eventually, the cloned variants need to be integrated into a configurable platform. Such an integration is challenging: it involves merging the usual code improvements between the variants, and also integrating the variable code (features) into the platform. Thus, variant integration differs from traditional soft- ware merging, which does not produce or organize configurable code, but creates a single system that cannot be configured into variants. In practice, variant integration requires fine-grained code edits, performed in an exploratory manner, in multiple iterations. Unfortunately, little tool support exists for integrating cloned variants. In this work, we show that fine-grained code edits needed for integration can be alleviated by a small set of integration intentions-domain-specific actions declared over code snippets controlling the integration. Developers can interactively explore the integration space by declaring (or revoking) intentions on code elements. We contribute the intentions (e.g., 'keep functionality' or 'keep as a configurable feature') and the IDE tool INCLINE, which implements the intentions and five editable views that visualize the integration process and allow declaring intentions producing a configurable integrated platform. In a series of experiments, we evaluated the completeness of the pro- posed intentions, the correctness and performance of INCLINE, and the benefits of using intentions for variant integration. The experiments show that INCLINE can handle complex integration tasks, that views help to navigate the code, and that it consistently reduces mistakes made by developers during variant integration. Max Lillack, Stefan Stanciulescu, Wilhelm Hedman, Thorsten Berger, Andrzej Wasowski |
ICSE | 1 |
| 2018 | Tracking Load-Time Configuration OptionsabstractMany software systems are highly configurable, despite the fact that configuration options and their interactions make those systems significantly harder to understand and maintain. In this work, we consider load-time configuration options, such as parameters from the command-line or from configuration files. They are particularly hard to reason about: tracking configuration options from the point at which they are loaded to the point at which they influence control-flow decisions is tedious and error-prone, if done manually. We design and implement Lotrack, an extended static taint analysis to track configuration options automatically. Lotrack derives a configuration map that explains for each code fragment under which configurations it may be executed. An evaluation on Android apps and Java applications from different domains shows that Lotrack yields high accuracy with reasonable performance. We use Lotrack to empirically characterize how much of the implementation of Android apps depends on the platform's configuration options or interactions of these options. Max Lillack, Christian Kästner, Eric Bodden |
IEEE Trans. Software Eng. | 1 |
| 2016 | Experiences from reengineering and modularizing a legacy software generator with a projectional language workbenchabstractWe present a case study of migrating a legacy language infrastructure and its codebase to a projectional language workbench. Our subject is the generator tool ADS used for generating COBOL code for critical software systems. We decompose the ADS language into smaller sub-languages, which we implement as individual DSLs in the projectional language workbench JetBrains Meta Programming System (MPS). Our focus is on ADS' preprocessor sub-language, used to realize static variability by conditionally including or parameterizing target code. The modularization of ADS supports future extensions and tailoring the language infrastructure to the needs of individual customers. We re-implement the generation process of target code as chained model-to-model and model-to-text transformations. For migrating existing ADS code, we implement an importer relying on a parser in order to create a model in MPS. We validate the approach using an ADS codebase for handling car registrations in the Netherlands. Our case study shows the feasibility and benefits (e.g., language extensibility and modern editors) of the migration, but also smaller caveats (e.g., small syntax adaptations, the necessity of import tools, and providing training to developers). Our experiences are useful for practitioners attempting a similar migration of legacy generators to a projectional language workbench. Max Lillack, Thorsten Berger, Regina Hebig |
SPLC | 1 |
| 2014 | Tracking load-time configuration optionsabstractHighly-configurable software systems are pervasive, although configuration options and their interactions raise complexity of the program and increase maintenance effort. Especially load-time configuration options, such as parameters from command-line options or configuration files, are used with standard programming constructs such as variables and if statements intermixed with the program's implementation; manually tracking configuration options from the time they are loaded to the point where they may influence control-flow decisions is tedious and error prone. We design and implement Lotrack, an extended static taint analysis to automatically track configuration options. Lotrack derives a configuration map that explains for each code fragment under which configurations it may be executed. An evaluation on Android applications shows that Lotrack yields high accuracy with reasonable performance. We use Lotrack to empirically characterize how much of the implementation of Android apps depends on the platform's configuration options or interactions of these options. Max Lillack, Christian Kästner, Eric Bodden |
ASE | 1 |