Domain Centric architecture is a way to build a software with clean architecture mindset. Clean architecture is designed to make the software resilience and have better changes management in term of codes. Domain centric focuses in domain or model. So this architecture is designed to facilitate changes and resilience in model. Business process changes is the focus of the domain centric. Therefore, when changes happen in business process they can facilitate the changes without complex model. There are several types of domain-centric architecture:
Clean architecture
Created by the uncle bob. The idea is to isolate the dependencies in separated of architecture. This type is great when you have changes in business process and rules.
Onion Architecture
Created by Jeffrey is focusing on separation of concerns and lowering the coupling through object management. This type is great when you have a lot of changes in entity model and data changes.
Hexagonal Architecture
Creating by Alistair by using ports and adapters model. This type is designed to facilitate changes because lot of changes in the way communication with the other system.
We will discuss the implementation in C# later in the next post.