Model clone detection for rule-based model transformation languages

Daniel Strüber*, Vlad Acreţoaie, Jennifer Plöger

*Corresponding author for this work

Research output: Contribution to journalJournal articleResearchpeer-review

35 Downloads (Pure)

Abstract

Cloning is a convenient mechanism to enable reuse across and within software artifacts. On the downside, it is also a practice related to severe long-term maintainability impediments, thus generating a need to identify clones in affected artifacts. A large variety of clone detection techniques have been proposed for programming and modeling languages; yet no specific ones have emerged for model transformation languages. In this paper, we explore clone detection for rule-based model transformation languages, including graph-based ones, such as Henshin, and hybrid ones, such as ATL. We introduce use cases for such techniques in the context of constructive and analytical quality assurance, and a set of key requirements we derived from these use cases. To address these requirements, we describe our customization of existing model clone detection techniques: We consider eScan, an a-priori-based technique, ConQAT, a heuristic technique, and a hybrid technique based on a combination of eScan and ConQAT. We compare these techniques in a comprehensive experimental evaluation, based on three realistic Henshin rule sets, and a comprehensive 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 present the first evidence on the usefulness of model clone detection for the quality assurance of model transformations and pave the way for future research efforts at the intersection of model clone detection and model transformation.

Original languageEnglish
JournalSoftware and Systems Modeling
Volume18
Issue number2
Pages (from-to)995-1016
Number of pages22
ISSN1619-1366
DOIs
Publication statusPublished - 2019

Keywords

  • ATL
  • Henshin
  • Model clone detection
  • Model transformation
  • Quality assurance

Fingerprint Dive into the research topics of 'Model clone detection for rule-based model transformation languages'. Together they form a unique fingerprint.

Cite this