A Comparison of 10 Sampling Algorithms for Configurable Systems

A Comparison of 10 Sampling Algorithms for Configurable Systems
复制标题

DOI:
10.1145/2884781.2884793
复制
发表时间:
2016-02
期刊:
2016 IEEE/ACM 38th International Conference on Software Engineering (ICSE)
影响因子:
--
通讯作者:
Flávio M. Medeiros;Christian Kästner;Márcio Ribeiro;Rohit Gheyi;S. Apel
Flávio M. Medeiros;Christian Kästner;Márcio Ribeiro;Rohit Gheyi;S. Apel
中科院分区:
其他
文献类型:
--
作者:
Flávio M. Medeiros;Christian Kästner;Márcio Ribeiro;Rohit Gheyi;S. Apel

文献摘要

被引文献

相似文献

几乎每个软件系统都提供配置选项,以将系统定制为目标平台和应用程序方案。通常,这种可配置性会导致对每个单个系统配置的分析不可行。为了解决这个问题,研究人员提出了多种抽样算法。我们介绍了10种有关其断层检测能力和样品集大小的最先进采样算法的比较研究。前者对于提高软件质量和后者以减少分析时间很重要。简而言之,我们发现具有较大样品集的采样算法能够检测到更高数量的故障,但是在大多数情况下,具有较小样品集的简单算法(例如最有启用的删除)是最有效的。此外,我们观察到,先前工作中提出的限制假设会影响检测到的故障数量,样品集的大小和算法的排名。最后,在试图避免限制假设时,我们已经确定了许多技术挑战,这些假设质疑某些采样算法的实用性。
Almost every software system provides configuration options to tailor the system to the target platform and application scenario. Often, this configurability renders the analysis of every individual system configuration infeasible. To address this problem, researchers have proposed a diverse set of sampling algorithms. We present a comparative study of 10 state-of-the-art sampling algorithms regarding their fault-detection capability and size of sample sets. The former is important to improve software quality and the latter to reduce the time of analysis. In a nutshell, we found that sampling algorithms with larger sample sets are able to detect higher numbers of faults, but simple algorithms with small sample sets, such as most-enabled-disabled, are the most efficient in most contexts. Furthermore, we observed that the limiting assumptions made in previous work influence the number of detected faults, the size of sample sets, and the ranking of algorithms. Finally, we have identified a number of technical challenges when trying to avoid the limiting assumptions, which questions the practicality of certain sampling algorithms.