Intraprocedural Dataflow Analysis for Software Product Lines
Research output: Conference Article in Proceeding or Book/Report chapter › Article in proceedings › Research › peer-review
approaches such as conditional compilation come with an inherent risk
of constructing erroneous products. For this reason, it is essential to be
able to analyze such SPLs. However, as dataﬂow analysis techniques are
not able to deal with SPLs, developers must generate and analyze all
valid products individually, which is expensive for non-trivial SPLs.
In this paper, we demonstrate how to take any standard intraprocedural dataﬂow analysis and automatically turn it into a feature-sensitive
dataﬂow analysis in ﬁve diﬀerent ways where the last is a combination of
the other four. All analyses are capable of analyzing all valid products
of an SPL without having to generate all of them explicitly.
We have implemented all analyses using SOOT’s intraprocedural dataﬂow
analysis framework and experimentally evaluated four of them according
to their performance and memory characteristics on ﬁve qualitatively
diﬀerent SPLs. On our benchmarks, the combined analysis strategy is
up to almost eight times faster than the brute-force approach.
|Title of host publication||AOSD '12 Proceedings of the 11th annual international conference on Aspect-oriented Software Development|
|Publisher||Association for Computing Machinery|
|Publication status||Published - 2013|
|Series||Transactions on Aspect-Oriented Software Development|