Intraprocedural Dataflow Analysis for Software Product Lines

Research output: Conference Article in Proceeding or Book/Report chapterArticle in proceedingsResearchpeer-review

View graph of relations

Software product lines (SPLs) developed using annotative
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 dataflow 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 dataflow analysis and automatically turn it into a feature-sensitive
dataflow analysis in five different 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 dataflow
analysis framework and experimentally evaluated four of them according
to their performance and memory characteristics on five qualitatively
different SPLs. On our benchmarks, the combined analysis strategy is
up to almost eight times faster than the brute-force approach.
Original languageEnglish
Title of host publicationAOSD '12 Proceedings of the 11th annual international conference on Aspect-oriented Software Development
PublisherAssociation for Computing Machinery
Publication date2013
ISBN (Print)978-1-4503-1092-5
Publication statusPublished - 2013
SeriesTransactions on Aspect-Oriented Software Development

    Research areas

  • Dataflow Analysis, Software Product Lines

ID: 76490202