Development and evolution of Xtext-based DSLs on GitHub: an empirical investigation
Artikel i vetenskaplig tidskrift, 2026

Domain-specific languages (DSLs) play a crucial role in facilitating a wide range of software development activities in the context of model-driven engineering (MDE). However, there exists a significant gap in the systematic understanding of how DSLs evolve over time, which could hamper the development of effective methodologies and tools. To address this gap, this paper presents a large-scale study of the development and evolution of textual DSLs created with the Xtext framework and hosted on GitHub. The study focuses on how these languages evolve at the grammar and front-end level, as captured in open-source repositories. We systematically identified and analyzed 1002 GitHub repositories containing Xtext-related projects. A manual classification of the repositories brought forward 226 ones that contain a fully developed language. We further categorized the latter into 18 separate categories of application domains, studied their contained DSL definition artifacts and analyzed the extent to which example instances using the grammar are available. In addition, we explored DSL development practices, focusing on the development scenarios involved, evolution activities, and the modification and co-evolution of related artifacts. We observed that analyzed DSLs evolved faster and were maintained longer when they belonged to specific domains, such as data management and databases. We found grammar definitions of DSLs in 722 repositories in total. While only about a third of them provided corresponding textual instances, community engagement metrics indicate potential usage of the DSLs in downstream repositories. Considering different language development approaches, we found that the majority of analyzed languages were developed following a grammar-driven approach, although a notable number adopted a metamodel-driven approach. Additionally, we identify a trend of retrofitting existing languages in Xtext, illustrating the framework’s flexibility beyond the creation of new DSLs. By investigating software evolution aspects, we found that the development lifecycle of analyzed DSLs varies, but in many cases, updates to grammar definitions and example instances were frequent, and most of the evolution activities can be classified as “perfective” changes. Addressing a need for large and systematically documented datasets in the model-driven engineerifng community, we contribute a dataset of repositories together with our collected meta-information, which can be used to inform our understanding of open-source DSL development practices and the development of improved tools for supporting the development and evolution of DSLs.

Xtext

DSLs

Software evolution

Författare

Weixing Zhang

Chalmers, Data- och informationsteknik, Interaktionsdesign och Software Engineering

Daniel Strüber

Radboud Universiteit

Chalmers, Data- och informationsteknik, Interaktionsdesign och Software Engineering

Regina Hebig

Universität Rostock

Chalmers, Data- och informationsteknik, Interaktionsdesign och Software Engineering

Empirical Software Engineering

1382-3256 (ISSN) 1573-7616 (eISSN)

Vol. 31 3 48

Ämneskategorier (SSIF 2025)

Programvaruteknik

Datorsystem

DOI

10.1007/s10664-025-10775-2

Mer information

Senast uppdaterat

2025-12-29