Posts Tagged ‘domain’

Domain Models in High Performance Systems

I skipped today’s DC Alt.NET meeting on JavaScript. With the other half of the Infovark tech team on vacation, I’m holding down the fort.

Fortunately, I was able to expand my programming knowledge by catching up on my blog reading, and particularly by watching Greg Young of IMIS give a presentation called Unshackle Your Domain at QCon in June.

If you’ve ever had to built a high-performance system or one that has strict auditing and reporting requirements, this presentation is for you. Greg’s company deals with financial systems, and you can tell he’s learned many best practices the hard way.

While I doubt we’ll need an architecture as robust as he describes for Infovark, I recognize many of the the problems and patterns he describes from my old jobs in software companies making records management software (auditing) and real estate systems (transactions and reporting).

The key insight is that for certain software solutions, it’s important to model state transitions as part of the problem domain.

But what I found most interesting was how his example system combined the principles of Domain-Driven Design with the older notion of Command-Query Separation.

I’d explain in more detail, but it’d probably be easier to just watch the presentation yourself.