Eberhard Wolff

20 Years of Domain-Driven Design: What I’ve Learned About DDD

In invoicing, a product is a price. In shipping, it's a weight and size. This simple distinction is the key to mastering Domain-Driven Design.

20 Years of Domain-Driven Design: What I’ve Learned About DDD
#1about 2 minutes

An overview of core Domain-Driven Design techniques

DDD encompasses a range of techniques from high-level Event Storming for understanding the domain to tactical design for implementing classes and aggregates.

#2about 3 minutes

Prioritizing quality by focusing on the core domain

Instead of aiming for uniform high quality, strategically focus development effort and refinement on the core domain, which is the most critical part of the system.

#3about 1 minute

Viewing DDD as a holistic software engineering approach

Domain-Driven Design is not just a set of coding rules but a comprehensive approach to software engineering that addresses different concerns for various roles like developers and architects.

#4about 5 minutes

Letting the domain drive design to deliver customer value

The primary goal of applying DDD is to deliver value to the customer, which requires developers to actively engage with users and domain experts to understand their needs.

#5about 6 minutes

Fostering collaboration with techniques like Event Storming

Collaborative modeling techniques like Event Storming lower the barrier to participation, enabling better knowledge crunching and shared understanding between technical teams and domain experts.

#6about 5 minutes

Deconstructing the three aspects of Bounded Contexts

A Bounded Context is a core DDD pattern that defines the boundary for a specific domain model, its associated ubiquitous language, and often the scope of a single team.

#7about 5 minutes

Building autonomous modules focused on functionality

Design modules around business functionality rather than shared data entities to create highly autonomous systems with low coupling.

#8about 2 minutes

Summary of key lessons from 20 years of DDD

The talk concludes by reinforcing that DDD is about letting the domain drive design, using collaboration to understand it, and building autonomous modules.

Related jobs
Jobs that call for the skills explored in this talk.

Featured Partners

Related Articles

View all articles
BR
Benjamin Ruschin
What Developers Really Need to Create Great Code Demos
Every developer on earth has, at some point, had another developer to thank for a breakthrough, a success, an aha moment they wouldn’t have had without coming across that blog post, that open-source contribution, that reply on socials or that humble ...
What Developers Really Need to Create Great Code Demos
DC
Daniel Cranney
Why developer experience matters
With technology embedded in almost every aspect of life, and with developers building and maintaining these tools, it’s ensuring that developers operate in the digital world with speed and efficiency, if we are to see these same benefits in the offli...
Why developer experience matters
CH
Chris Heilmann
Dev Digest 134 - Where pixels sing?
News and ArticlesWeAreDevelopers LIVE Data and Security Day is on Wednesday, 25/09/2024. Learn about OPC UA Updates, Best Practices for Using GitHub Secrets, Passwordless Web 1.5, Emerging AI Security Risks, Data Privacy in LLMs and get a chance to t...
Dev Digest 134 - Where pixels sing?

From learning to earning

Jobs that call for the skills explored in this talk.