🤖 AI Summary
This study addresses the lack of empirical analysis on the large-scale adoption of Domain-Driven Design (DDD) in real-world open-source projects, where its prevalence, architectural patterns, and technology preferences remain unclear. By mining GitHub repositories and applying an initial screening based on topic tags and README keywords, we introduce a semantic validation pipeline powered by GPT-4o along with a triple-majority voting mechanism to construct the first large-scale dataset of verified DDD projects (2,502 in total). Our analysis reveals that DDD adoption has accelerated since 2017, with DDD-based projects exhibiting significantly longer lifespans than average. Layered and Clean Architectures dominate, while CQRS and event sourcing are primarily employed in distributed systems. Notably, C# and TypeScript lead in usage, challenging the assumption of Java’s centrality, and 25.3% of projects lack explicitly defined bounded contexts.
📝 Abstract
Context: Domain-Driven Design (DDD) is a leading paradigm for managing software complexity, yet research remains largely theoretical; our prior work found nearly 39% of DDD studies lack rigorous empirical evaluation, leaving practical adoption largely unexamined at scale. Objective: We provide the first large-scale characterisation of the DDD landscape on GitHub, a data-driven baseline for how the paradigm is implemented and sustained in practice. Method: Using a Mining Software Repositories (MSR) approach with a hybrid strategy (topics and README keywords), we identified 11,742 candidate repositories. To address label noise, we built a novel semantic validation pipeline using GPT-4o with a triplicate majority-vote strategy, yielding 2,502 verified repositories. Validation against a manually labelled sample showed substantial agreement with human experts (kappa = 0.77). Results: DDD adoption accelerated sharply after a 2017 inflection point, and the resulting projects are notably long-lived: their median lifespan exceeds the typical GitHub project by over an order of magnitude, indicating sustained, professional-grade engineering rather than short-lived experiments. Layered and Clean Architecture dominate, while CQRS and Event Sourcing recur in distributed, data-intensive systems. Notably, the data challenge the Java-centric assumption of much academic work: C# and TypeScript, not Java, lead practical adoption. Conclusions: DDD has matured into a stable, professional-grade practice adopted across diverse languages and domains. However, a quarter of projects (25.3%) record no explicit business context, revealing a persistent gap between how domain intent is designed and how it is preserved in version control. We call for lightweight architectural traceability standards and offer guidance for teams reusing these repositories as reference implementations.