论文标题
ATL维修的社会多样性
Social Diversity for ATL Repair
论文作者
论文摘要
模型转换在模型驱动的工程范式中起着至关重要的作用。编写正确的转换程序需要精通源和目标建模语言,对两者元素之间的映射有清晰的了解,并掌握转换语言以正确描述转换。因此,转换程序是复杂且容易出错的,并且在此类程序中查找和修复错误通常涉及开发人员的繁琐且耗时的努力。在本文中,我们提出了一种基于搜索的新方法,以自动修复包含许多语义错误的转换程序。为了防止健身高原和单一健身峰值限制,我们利用社会多样性的概念来促进修复贴片解决其他人口斑块所涵盖的错误。我们对用ATL编写的71个语义不正确的转换程序评估了我们的方法,并同时包含多达五个语义错误。评估表明,在搜索维修补丁时,整合社会多样性可以提高这些补丁的质量并加快收敛速度,即使涉及多达五个语义错误。
Model transformations play an essential role in the Model-Driven Engineering paradigm. Writing a correct transformation program requires to be proficient with the source and target modeling languages, to have a clear understanding of the mapping between the elements of the two, as well as to master the transformation language to properly describe the transformation. Transformation programs are thus complex and error-prone, and finding and fixing errors in such programs typically involve a tedious and time-consuming effort by developers. In this paper, we propose a novel search-based approach to automatically repair transformation programs containing many semantic errors. To prevent the fitness plateaus and the single fitness peak limitations, we leverage the notion of social diversity to promote repair patches tackling errors that are less covered by the other patches of the population. We evaluate our approach on 71 semantically incorrect transformation programs written in ATL, and containing up to five semantic errors simultaneously. The evaluation shows that integrating social diversity when searching for repair patches allows to improve the quality of those patches and to speed up the convergence even when up to five semantic errors are involved.