InfoQ Homepage Domain-Driven Design Content on InfoQ
-
Are Frameworks Good or Bad, or Both?
Preferring frameworks or libraries is somewhat controversial, Frans van Buul, Evangelist at AxonIQ, the company behind Axon Framework, writes in a recent blog post. Many argue in the favour of libraries but Van Buul thinks that a framework can be very valuable when building business applications. He believes this to be especially true for applications based on CQRS, DDD and event sourcing.
-
O’Reilly Publishes “The State of Microservices Maturity” Report
Microservices are evolving from fad to trend, according to “The State of Microservices Maturity” survey, published by O’Reilly. The report showed an overall positive attitude towards microservices among practitioners surveyed. One significant finding is that DevOps and microservices feed off each other, so that the success of one contributes heavily to the success of the other.
-
Readable Code - Why, How and When You Should Write It
Most people would say they want readable code, and may even prefer readability over functionality. But when it comes down to asking people to define readability, opinions will start to diverge. At Explore DDD 2018 , Laura Savino covered why we want readable code, what it really means to be readable, and when readability absolutely must take priority over other considerations.
-
Basic Concepts and the Future of Axon, a CQRS and Event Sourcing Framework
At the recent Event-Driven Microservices Conference in Amsterdam, Allard Buijze described in a presentation the basic concepts, the history and future of Axon, a framework for systems based on DDD, event sourcing and CQRS. The adoption of Axon Framework is growing rapidly and recently hit one million downloads.
-
Michael Feathers Wants Error Elimination to Be a Design Driver
Michael Feathers finds errors fascinating, but acknowledges that most developers don't spend a lot of time focusing on them. He also thinks most error handling is kind of giving up. Although best known for his books about working with legacy code, Feathers used his keynote presentation at Explore DDD 2018 to discuss how eliminating errors can be a design driver for software systems.
-
Eric Evans Says Domain-Driven Design (DDD) Isn't Done
During his keynote at Explore DDD, Eric Evans said "DDD isn't done." Over the past fifteen years since Domain-Driven Design was published, DDD hasn't stood still, and there is still much to do to keep DDD evolving.
-
Business Processes, Long-Running Services and Microservices
During recent years domain events are increasingly being discussed, but we should be discussing commands just as much, Martin Schimak explained at the recent DDD eXchange 2018 conference, where he covered events, command and long-running services in a microservices world, and how process managers and similar tooling can help in running core business logic.
-
Strategies for Decomposing a System into Microservices
A couple of years ago, Vladik Khononov and his team decided to start using microservices, but a few months later they found themselves in a huge mess. They concentrated on new cool technologies instead of thinking about how to decompose a system into microservices — finding the boundaries and where different functionalities should be located among these boundaries.
-
Designing Reactive Systems Using DDD, Event Storming and Actors
Domain-driven design (DDD) is often used for finding boundaries (bounded contexts) around microservices. But everything in domain-driven design (DDD) is not good for microservice, Lutz Huehnken claimed in a presentation at microxchg 2018 in Berlin where he discussed how DDD, Event Storming and the Akka-based Lagom framework can be used to build reactive systems.
-
QCon London: Asynchronous Event Architectures with or without Actors
Synchronous request-response communication in microservices systems can be really complicated. Fortunately, asynchronous event-based architectures can be used to avoid this, Yaroslav Tkachenko claimed in a presentation at QCon London 2018, where he described his experiences with event-driven architectures and how Actors can be used in systems built on this architecture.
-
Notes From the DDD Europe 2018 Conference
The recently held DDD Europe 2018 conference in Amsterdam was the third in order and saw almost 700 attendees. The conference has a focus on Domain-Driven Design (DDD), and included four keynotes, 19 presentations, one track for open space and 17 sessions focused on live coding or hands-on. Notable speakers included Eric Evans, Dave Snowden, Rebecca Wirfs-Brock and Cyrille Martraire.
-
Finding Bounded Contexts Using Domain Storytelling
When working with Domain-Driven Design (DDD), bounded context is a core concept. Domain storytelling is a way of finding how people and systems work together within a domain which then can be used to identify the bounded contexts and how they are interconnected, Stefan Hofer and Henning Schwentner explained at the recent DDD Europe 2018 conference in Amsterdam.
-
Retroactive and Future Events in an Event Sourced System
When Thomas Pierrain started a new project with an asset management company, one important requirement was the ability to go back in time to understand why they took decisions that today look strange. At the recent DDD Europe 2018 conference in Amsterdam, Pierrain discussed his experiences when building an event sourced system that included some temporal challenges.
-
Evolving CQRS and Event Sourced Systems
After talking with people about upgrading of CQRS and event sourced systems, Michiel Overeem came to the conclusion that many working with event sourced systems lack an understanding and don’t know how to approach the problem. At the recent DDD Europe 2018 conference in Amsterdam he described how this was a trigger for him to do an exploratory research on how to evolve this kind of system.
-
Eric Evans: Practicing Domain-Driven Design
For Eric Evans, who gave a keynote at the recent DDD Europe 2018 conference in Amsterdam, it’s important to explore and practice building software. He enjoys working with strategic patterns in Domain-Driven Design (DDD), but what he finds really interesting is taking a difficult domain and reason about it differently; breaking out of the mental box trying to find new concepts.