首页> 外文会议>ACM SIGPLAN Conference on Programming Language Design and Implementation >SPL~(LIFT) - Statically Analyzing Software Product Lines in Minutes Instead of Years
【24h】

SPL~(LIFT) - Statically Analyzing Software Product Lines in Minutes Instead of Years

机译:SPL〜(提升) - 在几分钟而不是几年内静态分析软件产品线

获取原文

摘要

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 SPL~(LIFT) 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 SPL~(LIFT) 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.
机译:软件产品线(SPL)将可能大量的软件产品编码为某些常见代码库的变体。到目前为止,重新使用传统的静态分析对于SPLS几乎是棘手的,因为它需要程序员可以单独生成和分析所有产品。然而,在这项工作中,我们展示了如何透明地提升现有的过程间静态分析。如果不需要程序员更改单行代码,我们的方法SPL〜(电梯)会自动转换为流行IFDS,有限,分配,子集问题的流行IFDS框架内的传统程序中配制的任何分析,以适用于所制定的SPL-ACPEN分析IDE框架,众所周知的IFDS延伸。使用基于Heros,SOOT,CIDE和JavaBDD的完整实现,我们展示了SPL〜(升降机)可以重用基于IFDS的分析而不改变单行代码。通过使用三种静态分析的实验,应用于四种基于Java的产品线,我们能够通过几个数量级来表明我们的方法产生正确的结果并优于传统方法。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号