Practitioner Experience Reports: True stories from the front

IAnticorruption – A Domain-Driven Design Approach To More Robust Integration

by Sam Peng and Ying Hu

Custom House's new currency exchange system is integrated with a legacy system. After a few years of growth, the two systems were so intricately tangled that even small changes made in the integration layer would have unpredictable side effects. Refactoring on the integration layer was risky and time consuming. The situation called for a revolutionary redesign.

Take a look at how they have created a full-fledged anticorruption layer here.

Identity Crisis

by Vladimir Gitlevich

We tend to think of the identity of objects as a simple, even technical thing, but the identity of domain entities are an important part of a model, and in a complex domain they can be subtle concepts in their own right. Read this interesting story of such a discovery.

So We Thought We Knew Money

by Ying Hu and Sam Peng

Results of making key value objects explicit.

At Custom House, a team developing on-line currency exchange products modeled a handful of key value objects at the heart of their domain. Read how they discovered them, how they retrofitted a large existing code-base, and the effects on the system as it has evolved over time. Or watch Ying's presentation on OOPSLA 2007.

Strategic Design at StatOil(Norway's national oil company)

Architectural improvement by use of strategic level Domain-Driven Design [read]
Using Domain Driven Design to evaluate Commercial Off-The-Shelf Software [read]

Two-part report by
Einar Landre, Harald Wesenberg and Harald Ronneberg

An architecture team applies Strategic Design in innovative ways, guiding purchase decisions and enterprise architecture using context mapping and distillation of the core domain. This paper has been accepted for OOPSLA 2006 in Portland, Oregon.

Persistence Last

by J. B. Rainsberger
Domain-driven design provides agility in the face of database inertia. [read]

Registration Oasis

by Bruce Gordon
A model of domain concepts and commands keeps development loosely coupled to mainframe and J2EE. [read]

Student Loan Servicing

by Kumar Brahnmath
A simple model enables extentions and usability improvements to a complex legacy. [read]

Retrofitting a Domain Model

by Patrick Logan
Economic gain in the form of market responsiveness is shown by this story. A model-driven redesign of an existing system that was originally built on a different principle yields design agility. [read]