Search papers, labs, and topics across Lattice.
This study conducts a large-scale empirical investigation into the application of Domain-Driven Design (DDD) in open-source software projects on GitHub, analyzing the distribution and evolution of DDD tactical building blocks. By examining the co-usage of these building blocks and their maintenance implications, the research identifies critical challenges such as Bounded Context boundary violations and their impact on project maintenance. The findings reveal significant patterns in how DDD is implemented and maintained, providing a foundational understanding that can inform future DDD tools and methodologies.
Bounded Context violations in DDD projects are shown to significantly hinder maintenance quality, revealing a critical challenge for practitioners.
Domain-Driven Design (DDD) is an influential software development methodology that structures software around business domain complexity through tactical building blocks such as Entities, Value Objects, Aggregates, and Repositories. Despite its prominence in software engineering, large-scale empirical evidence on how DDD is practiced, how it evolves, and how it relates to software maintenance quality in open-source projects remains scarce. This study presents a pre-registered empirical investigation of the distribution, evolution, and maintenance implications of DDD tactical building blocks in open-source GitHub repositories, addressing the call for large-scale empirical evaluations identified in a recent systematic literature review. We will collect DDD-related repositories from GitHub using the Search API, apply automated keyword filtering and manual relevance assessment, and analyze the resulting dataset through four research questions covering: (RQ1) the static distribution and co-usage of DDD building blocks across repository types, (RQ2) their longitudinal evolution over commit history, (RQ3) the extent and maintenance implications of Bounded Context boundary violations (the primary technical challenge in DDD adoption, unquantified at scale), and (RQ4) the temporal association between maintenance activities and building block churn or Bounded Context violations in DDD repositories. Together, these RQs trace the full maintenance and evolution lifecycle of open-source DDD projects and establish an empirical foundation for future DDD tool support and methodology refinement.