Clone Detection for Rule-Based Model Transformation Languages
ISSN der Zeitschrift
Software Engineering und Software Management 2018
Software Engineering 2018 - Wissenschaftliches Hauptprogramm
Gesellschaft für Informatik
We present our paper that was accepted for publication in the SoSyM journal on September 03, 2017. Cloning is a convenient mechanism to enable reuse across and within software artifacts. On the downside, it is also a practice related to longterm maintainability impediments, thus generating a need to identify clones in affected artifacts. A large variety of clone detection techniques has been proposed for programming and modeling languages; yet no specific ones have emerged for model transformations. We explore clone detection for rule-based model transformation languages, including graph-based and hybrid ones. We introduce use cases for such techniques in the context of quality assurance, and a set of key requirements derived from these use cases. To address these requirements, we describe our customization of existing model clone detection techniques. We compare these techniques in a comprehensive experimental evaluation, based on three realistic Henshin rule sets, and a body of examples from the ATL transformation zoo. Our results indicate that our customization of ConQAT enables the efficient detection of the considered clones, without sacrificing accuracy. With our contributions, we pave the way for future research efforts at the intersection of clone detection and model transformation.