Intraprocedural Dataflow Analysis for Software Product Lines
- ,
- Márcio Ribeiro,
- Társis Tolêdo,
- Johnni Winther,
- Paulo Borba
- Federal University of Pernambuco,
- University of Copenhagen
Research Output:
Conference Article in Proceeding or Book/Report chapter
Article in proceedings
Peer-reviewPublication Information
Output type
Research Output:
Conference Article in Proceeding or Book/Report chapter
Article in proceedings
Peer-reviewOriginal language
EnglishPages from-to (Number of pages)
Pages 13-24Publication milestones
- Published - 2013
Publication status
Published - 2013
Publisher
Association for Computing Machinery, United StatesBook series
- Book series name: Transactions on Aspect-Oriented Software Development
ISSN: 0000-0038
ISBN (Print)
978-1-4503-1092-5Publication IDs
- Scopus: 84875101500
Host publication title
AOSD '12 Proceedings of the 11th annual international conference on Aspect-oriented Software Development Abstract
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.
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.
Publication metrics
PlumX
Captures
15
Citations
15
