Skip to search boxSkip to navigationSkip to main content

SPLLIFT: Statically Analyzing Software Product Lines in Minutes instead of Years

  • Eric Bodden
    ,
  • Társis Tolêdo
    ,
  • Márcio Ribeiro
    ,
  • ,
  • Paulo Borba
    ,
  • Mira Mezini
  • Darmstadt University of Technology
    ,
  • Federal University of Pernambuco
Research Output:
Journal Article or Conference Article in Journal
Journal article
Peer-review

Open access

Publication Information

Output type

Research Output:
Journal Article or Conference Article in Journal
Journal article
Peer-review

Original language

English

Pages from-to (Number of pages)

Pages 355-364 (10 pages)

Journal (Volume, Issue Number)

ACM SIGPLAN Notices (Volume 48, Issue 6)

Publication milestones

  • Published - 06/2013

Publication status

Published - 06/2013

ISSN

1523-2867

Publication IDs

  • Scopus: 84883087403

Abstract

A software product line (SPL) encodes a potentially large variety
of software products as variants of some common code base. Up
until now, re-using traditional static analyses for SPLs was virtually intractable, as it required programmers to generate and analyze
all products individually. In this work, however, we show how an
important class of existing inter-procedural static analyses can be
transparently lifted to SPLs. Without requiring programmers to
change a single line of code, our approach SPLLIFT automatically
converts any analysis formulated for traditional programs within the
popular IFDS framework for inter-procedural, finite, distributive,
subset problems to an SPL-aware analysis formulated in the IDE
framework, a well-known extension to IFDS. Using a full implementation based on Heros, Soot, CIDE and JavaBDD, we show that
with SPLLIFT one can reuse IFDS-based analyses without changing a single line of code. Through experiments using three static
analyses applied to four Java-based product lines, we were able to
show that our approach produces correct results and outperforms
the traditional approach by several orders of magnitude.

Publication metrics

PlumX, opens in new tab

Citations
60
Captures
15

Related Event

Title

ACM SIGPLAN Conference on Programming language design and implementation

Event type

Conference

Date

16/06/2013 - 22/06/2013

Location

http://pldi2013.ucombinator.org/Seattle, WAUnited States