The Rube Goldberg paradox: Why complex solutions feel so right

The Rube Goldberg paradox: Why complex solutions feel so right

Allard Buijze, the CTO and founder of the open-source Axon Framework, recently offered a gentle reminder that sounds almost too simple: it’s far better to build software that can scale than to build it at colossal scale right from day one. You’d imagine this is common sense — the kind of thing we’d have engraved … Continue reading The Rube Goldberg paradox: Why complex solutions feel so right

From Big Bang to Iterative Evolution: Embracing the Strangler Fig Pattern

From Big Bang to Iterative Evolution: Embracing the Strangler Fig Pattern

IntroductionMechanicsPros and ConsCase study - Coupons system modernizationOvercoming challenges and being successfulChoose thin slices that are "just right"Embrace and manage scope changesPick optimal production release granularityEstablish a continuously improving test loopTest responsibly (not only) in productionMature your CI/CD practicesEmbrace the need for data synchronizationEnsure robust observability apparatus is in placeBe proactive with communication and change … Continue reading From Big Bang to Iterative Evolution: Embracing the Strangler Fig Pattern

Why DDD is necessary if you’re an IT leader today

Why DDD is necessary if you’re an IT leader today

IT leaders should think about Domain-Driven Design (DDD) because it is a software development methodology that can help them build better software systems that align with business objectives and solve real-world problems. DDD focuses on understanding the core business domain and representing it in the software design, rather than starting with technical implementation details. Here … Continue reading Why DDD is necessary if you’re an IT leader today

The difference between domains, subdomains and bounded contexts

The difference between domains, subdomains and bounded contexts

Introduction Domain-driven design (DDD) is an approach to software development that has gained a lot of attention in recent years. It is an approach that puts the focus on the domain or problem space, rather than the technical details of the solution. Within DDD, there are several key concepts that are important to understand, including … Continue reading The difference between domains, subdomains and bounded contexts

Tactical design without strategic design?

Tactical design without strategic design?

Technically, yes, it is possible to apply the tactical design elements of DDD without going through the strategic design phase. However, doing so may limit the benefits you can gain from DDD. The tactical design patterns of DDD are designed to help developers tackle specific design challenges that are common in complex domains, such as … Continue reading Tactical design without strategic design?

A place for DDD practitioners on the web

A place for DDD practitioners on the web

Hello! Thanks for stopping by. With this website, our aim is to create a one-stop shop for building enterprise-grade software solutions using Domain-Driven Design (DDD). We present to you a glossary of many terms associated with the practice. If you have a question on anything related, please do get in touch! We have gone through … Continue reading A place for DDD practitioners on the web