论文标题
用替代甲环修复模型转换中的多种类型错误
Fixing Multiple Type Errors in Model Transformations with Alternative Oracles to Test Cases
论文作者
论文摘要
本文讨论了在现实情况下纠正模型转换中类型错误的问题,在现实情况下,既没有预定义的补丁也没有行为安全的警卫,例如测试套件。我们建议通过组合模型转换程序的基本编辑操作来探索可能的补丁的空间,而不是使用针对特定类别的隔离错误的预定义补丁。为了指导搜索,我们定义了两个目标家族:一个是限制类型错误的数量,另一个是保留转换行为。为了近似后者,我们研究了两个目标:最大程度地减少变化的数量并保持更改本地。此外,我们定义了四种启发式方法来完善候选斑块,以增加纠正类型误差的可能性,同时保留转换行为。我们使用进化算法NSGA-II实施了ATL语言的方法,并根据三个已发表的案例研究进行了评估。评估结果表明,我们的方法能够在两种情况下平均自动纠正超过82%的类型错误,而第三种情况的56%以上。
This paper addresses the issue of correcting type errors in model transformations in realistic scenarios where neither predefined patches nor behavior-safe guards such as test suites are available. Instead of using predefined patches targeting isolated errors of specific categories, we propose to explore the space of possible patches by combining basic edit operations for model transformation programs. To guide the search, we define two families of objectives: one to limit the number of type errors and the other to preserve the transformation behavior. To approximate the latter, we study two objectives: minimizing the number of changes and keeping the changes local. Additionally, we define four heuristics to refine candidate patches to increase the likelihood of correcting type errors while preserving the transformation behavior. We implemented our approach for the ATL language using the evolutionary algorithm NSGA-II, and performed an evaluation based on three published case studies. The evaluation results show that our approach was able to automatically correct on average more than82% of type errors for two cases and more than 56% for the third case.