Intraprocedural Dataflow Analysis for Software Product Lines

Claus Brabrand, Márcio Ribeiro, Társis Tolêdo, Johnni Winther, Paulo Borba

    Publikation: Konference artikel i Proceeding eller bog/rapport kapitelKonferencebidrag i proceedingsForskningpeer review

    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.
    OriginalsprogEngelsk
    TitelAOSD '12 Proceedings of the 11th annual international conference on Aspect-oriented Software Development
    ForlagAssociation for Computing Machinery
    Publikationsdato2013
    Sider13-24
    ISBN (Trykt)978-1-4503-1092-5
    StatusUdgivet - 2013
    NavnTransactions on Aspect-Oriented Software Development
    ISSN0000-0038

    Emneord

    • Dataflow Analysis
    • Software Product Lines

    Fingeraftryk

    Dyk ned i forskningsemnerne om 'Intraprocedural Dataflow Analysis for Software Product Lines'. Sammen danner de et unikt fingeraftryk.

    Citationsformater