Following Domain Driven Design principles for Microservices decomposition: is it enough?

Hassan Farsi, Driss Allaki, Abdeslam En‐Nouaary, Mohamed Dahchour · 2021

Building software using a microservice architecture is a means that gives more options to scale up applications, deploy them independently and limit their "blast radius" of failure. Microservices tend to solve the complexity and the increasing development problems by applying the functional decomposition principle. This main feature can become a point of weakness in the absence of a fully credible splitting mechanism. One of the main adopted approaches to design services and deal with the boundary identification concern is the Domain Driven Design (DDD). In this paper, we aim to study the efficiency of this approach. We intend to give software architects a full understanding of its capabilities and main limits to be aware of the potential resulting anti-patterns. To this end, we use graph theory to experiment and analyze a reference example, implementing many microservices good practices and patterns. The obtained results show whether if we can rely only on the DDD principles to decompose microservices, or not.

Read the paper · More papers on PaperTik