Abstract:
With the increment in software development complexity, approaches such as Domain-Driven Design (DDD) are needed to tackle contemporary business domains. DDD is already being used in various software projects with different architectural styles. Although some studies have explored the decomposition of business domains or legacy monolithic systems into microservices, there is a lack of concrete information regarding the practical implementation of DDD in this architectural style. The paper systematizes findings on the purpose of using DDD, its patterns, associated technologies, and techniques to increase the clarity about the use of DDD in microservices-based systems development. A systematic literature review of 35 articles was conducted. Thematic analysis was employed to identify five high-order themes and 11 themes. Based on our analysis, we have concluded that microservice identification emerges as the primary motivation behind developers' adoption of DDD, but not the only usage of DDD reported in the literature. Finally, our analysis found benefits and challenges in the use of DDD in Microservices Architecture which are translated to opportunity areas for future works.
Keywords:domain-driven design, microservices architecture, systematic literature review, thematic analysis