Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage News Eric Evans on DDD, Microservices and Boundaries

Eric Evans on DDD, Microservices and Boundaries

This item in japanese

Despite microservices being so hyped Eric Evans still believes there is tremendous value in them, probably giving us the best environment we have ever had for doing Domain-Driven Design (DDD), he stated in his keynote at this year’s DDD Exchange conference in London.

Iteration is for Evans the most important key to good design, and believes microservices to be the second attempt, after SOA, to get things right. One major difference is the extreme emphasize on isolation in microservices compared to earlier attempts with SOA where integration often was done through the database. Autonomy of teams working on different services and the DevOps movement with services built and deployed independently gives us boundaries and the ability to develop without being tangled-up with everything else. He also believes that the technology used has become much lighter, less coupled.

DDD benefits from microservices by getting real boundaries, and ideas like not sharing that the microservice community has converged on are what we want in a bounded context. He warns though that without a high level design view and strategy the mess that can be created with lots of services will look like the old monolithic tangled-together systems. Evans emphasizes that not all of a large system will be well designed and he thinks microservices can help here by creating isolation between services being well designed and others poorly designed and implemented.

For Evans the way a microservice is operated makes a good bounded context, at least on a first pass, making a one-to-one mapping between a service and a context. As services gets smaller and starts both coordinating and interacting with other small services in a very specific way then the bounded context may cover all these small services. His experience though is that we often make too big bounded contexts, the traditional monolith server application when becoming one context is way too big, and once again notes the importance of skilled people able to from a higher level find the domains and bounded contexts within a system.

Next year’s DDD Exchange is scheduled for 10th June 2016 and registration is open.

Rate this Article