🤖 AI Summary
This study addresses the lack of systematic empirical analysis on the usage patterns, tool combinations, and maintenance practices of Model-Driven Engineering (MDE) in real-world projects. By mining 7,436 GitHub repositories containing MDE artifacts, the authors construct the first comprehensive global mega-model encompassing diverse MDE technologies—such as Ecore, ATL, and Xtext—that integrates local project models while enabling cross-project artifact deduplication and dependency reconstruction. Leveraging a combination of data mining, approximate duplicate detection, and graph-based modeling techniques, this work produces a publicly available dataset comprising over 325,000 MDE artifacts, thereby establishing a foundational resource for large-scale empirical studies of MDE practices.
📝 Abstract
A key element of Model-Driven Engineering is the construction of domain-specific modelling environments to improve productivity and quality. In theory, dedicated technologies like EMF, ATL, Epsilon, Xtext, etc. would boost the construction of high-quality environments with a relatively modest effort by chaining the output of one tool to the input of another. However, there is little empirical evidence of how this idea has fared in reality and many open research questions remain, such as how MDE tools are used and combined, whether the resulting environments are maintained or not, which tools are used more frequently, etc.
In this paper, we aim to build a foundation for studying how MDE is used in practice. First, we constructed a dataset by mining 7,436 Github projects comprising over 325,000 MDE artefacts. These artefacts encompass representative Eclipse EMF-related technologies, namely Ecore, Emfatic, OCL, ATL, Epsilon, QVTo, Henshin, Acceleo, Xtext, Emftext, GMF and Sirius. We also integrated into the dataset repository-level information extracted from the Git repositories and the GitHub API. From this dataset, we devised a technique to recover the mega-model of each project in order to represent the relationships between its artefacts. Then, we built a global mega-model relating the different MDE projects by performing an analysis of near-duplicates across all artefacts and grouping duplicate artefacts into single nodes and rewiring the connections. This global mega-model can be used to derive additional information like inter-project dependencies or studying connected subgraphs of artefacts. Finally, we propose a number of research questions that could be answered with the provided dataset, which we hope will foster empirical analysis of how MDE is applied.