当前位置: X-MOL 学术Empir. Software Eng. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Lightweight, semi-automatic variability extraction: a case study on scientific computing
Empirical Software Engineering ( IF 3.5 ) Pub Date : 2021-02-27 , DOI: 10.1007/s10664-020-09922-8
Alexander Grebhahn , Christian Kaltenecker , Christian Engwer , Norbert Siegmund , Sven Apel

In scientific computing, researchers often use feature-rich software frameworks to simulate physical, chemical, and biological processes. Commonly, researchers follow a clone-and-own approach: Copying the code of an existing, similar simulation and adapting it to the new simulation scenario. In this process, a user has to select suitable artifacts (e.g., classes) from the given framework and replaces the existing artifacts from the cloned simulation. This manual process incurs substantial effort and cost as scientific frameworks are complex and provide large numbers of artifacts. To support researchers in this area, we propose a lightweight API-based analysis approach, called VORM, that recommends appropriate artifacts as possible alternatives for replacing given artifacts. Such alternative artifacts can speed up performance of the simulation or make it amenable to other use cases, without modifying the overall structure of the simulation. We evaluate the practicality of VORM—especially, as it is very lightweight but possibly imprecise—by means of a case study on the DUNE numerics framework and two simulations from the realm of physical simulations. Specifically, we compare the recommendations by VORM with recommendations by a domain expert (a developer of DUNE). VORM recommended 34 out of the 37 artifacts proposed by the expert. In addition, it recommended 2 artifacts that are applicable but have been missed by the expert and 32 artifacts not recommended by the expert, which however are still applicable in the simulation scenario with slight modifications. Diving deeper into the results, we identified an undiscovered bug and an inconsistency in DUNE, which corroborates the usefulness of VORM.



中文翻译:

轻量级,半自动变异提取:以科学计算为例

在科学计算中,研究人员经常使用功能丰富的软件框架来模拟物理,化学和生物过程。通常,研究人员遵循克隆和拥有的方法:复制现有相似模拟的代码,并将其调整为适用于新的模拟方案。在此过程中,用户必须从给定的框架中选择合适的工件(例如,类),并从克隆的仿真中替换现有的工件。由于科学框架复杂且提供了大量人工制品,因此这种手动过程会招致大量工作和成本。为了支持该领域的研究人员,我们提出了一种轻量级的,基于API的分析方法,称为VORM,该方法建议使用适当的工件作为替换给定工件的可能替代方法。这样的替代工件可以提高模拟的性能或使其适合其他用例,而无需修改模拟的整体结构。我们评估VORM的实用性-特别是,因为它非常轻巧,但可能不精确-通过对DUNE数值框架的案例研究和来自物理模拟领域的两个模拟。具体来说,我们将VORM的建议与领域专家(DUNE的开发人员)的建议进行了比较。VORM在专家建议的37件文物中推荐了34件。此外,它推荐了2个适用但已被专家遗漏的工件和32个专家不建议的工件,但是这些工件仍然可以应用在模拟场景中,但需要进行一些修改。深入研究结果,我们发现了DUNE中未发现的错误和不一致之处,这证实了VORM的有用性。我们将VORM的建议与领域专家(DUNE的开发人员)的建议进行了比较。VORM在专家建议的37件文物中推荐了34件。此外,它推荐了2个适用但已被专家遗漏的工件和32个专家不建议的工件,但是这些工件仍然可以应用在模拟场景中,但需要进行一些修改。深入研究结果,我们发现了DUNE中未发现的错误和不一致之处,这证实了VORM的有用性。我们将VORM的建议与领域专家(DUNE的开发人员)的建议进行了比较。VORM在专家建议的37件文物中推荐了34件。此外,它推荐了2个适用但已被专家遗漏的工件和32个专家不建议的工件,但是这些工件仍然可以应用在模拟场景中,但需要进行一些修改。深入研究结果,我们发现了DUNE中未发现的错误和不一致之处,这证实了VORM的有用性。但是,只要稍加修改,它们仍然适用于仿真方案。深入研究结果,我们发现了DUNE中未发现的错误和不一致之处,这证实了VORM的有用性。但是,在稍加修改的情况下,它们仍然适用于仿真方案。深入研究结果,我们发现了DUNE中未发现的错误和不一致之处,这证实了VORM的有用性。

更新日期:2021-02-28
down
wechat
bug