A classification and survey of analysis strategies for software product lines

T Thüm, S Apel, C Kästner, I Schaefer… - ACM Computing Surveys …, 2014 - dl.acm.org
Software-product-line engineering has gained considerable momentum in recent years,
both in industry and in academia. A software product line is a family of software products that …

Exploring variability-aware execution for testing plugin-based web applications

HV Nguyen, C Kästner, TN Nguyen - Proceedings of the 36th …, 2014 - dl.acm.org
In plugin-based systems, plugin conflicts may occur when two or more plugins interfere with
one another, changing their expected behaviors. It is highly challenging to detect plugin …

A variability-aware module system

C Kästner, K Ostermann, S Erdweg - Proceedings of the ACM …, 2012 - dl.acm.org
Module systems enable a divide and conquer strategy to software development. To
implement compile-time variability in software product lines, modules can be composed in …

Toward variability-aware testing

C Kästner, A Von Rhein, S Erdweg, J Pusch… - Proceedings of the 4th …, 2012 - dl.acm.org
We investigate how to execute a unit test for all products of a product line without generating
each product in isolation in a brute-force fashion. Learning from variability-aware analyses …

# ifdef confirmed harmful: Promoting understandable software variation

D Le, E Walkingshaw, M Erwig - 2011 IEEE Symposium on …, 2011 - ieeexplore.ieee.org
Maintaining variation in software is a difficult problem that poses serious challenges for the
understanding and editing of software artifacts. Although the C preprocessor (CPP) is often …

Counter-factual typing for debugging type errors

S Chen, M Erwig - ACM SIGPLAN Notices, 2014 - dl.acm.org
Changing a program in response to a type error plays an important part in modern software
development. However, the generation of good type error messages remains a problem for …

Projectional editing of variational software

E Walkingshaw, K Ostermann - ACM SIGPLAN Notices, 2014 - dl.acm.org
Editing the source code of variational software is complicated by the presence of variation
annotations, such as# ifdef statements, and by code that is only included in some …

Variational data structures: Exploring tradeoffs in computing with variability

E Walkingshaw, C Kästner, M Erwig, S Apel… - Proceedings of the …, 2014 - dl.acm.org
Variation is everywhere, and in the construction and analysis of customizable software it is
paramount. In this context, there arises a need for variational data structures for efficiently …

Towards efficient analysis of variation in time and space

T Thüm, L Teixeira, K Schmid, E Walkingshaw… - Proceedings of the 23rd …, 2019 - dl.acm.org
Variation is central to today's software development. There are two fundamental dimensions
to variation: Variation in time refers to the fact that software exists in numerous revisions that …

Solver-based gradual type migration

L Phipps-Costin, CJ Anderson, M Greenberg… - Proceedings of the ACM …, 2021 - dl.acm.org
Gradually typed languages allow programmers to mix statically and dynamically typed code,
enabling them to incrementally reap the benefits of static typing as they add type annotations …