Search papers, labs, and topics across Lattice.
This paper constructs a comprehensive dataset from 7,436 GitHub projects containing over 325,000 Model-Driven Engineering (MDE) artefacts, focusing on technologies like EMF and ATL. By developing a global mega-model that captures the relationships between these artefacts, the authors provide insights into the usage patterns and interdependencies of MDE tools in practice. The findings reveal significant opportunities for empirical analysis, addressing key research questions about the maintenance and combination of MDE environments that have been largely unexplored.
A global mega-model of MDE projects reveals hidden interdependencies and usage patterns among over 325,000 artefacts on GitHub, opening new avenues for empirical research.
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.