Domain Driven Design (DDD) and Service Oriented Architecture (SOA) are both important

Alex Hoffman gets it!

DDD and SOA Are Unrelated.

I don’t think I would use the word unrelated, but the are definitely NOT two different ways of thinking. I guess this is a pet peeve of mine. DDD is also not a replacement for Object Oriented Design. Rather, DDD “is a way of thinking and a set of priorities…” according to http://domaindrivendesign.org/.

Domain Driven Design as the primary driver to solving a problem. SOA is simply a set of guidelines for best exposing this solution. I wouldn’t say that they are orthogonal. I might say that they are parallel. I wouldn’t say that they are totally unrelated, but I would say that they are independant of one another. However, the ease of exposing your design as a service would be a reflection on the design of your domain so there is some intrinsic relation there.

Both of these items should be on the checklist of “good software” when designing a new application or system. It is fine to simply say “no, we won’t ues that” to each of these items when going down the checklist, but in my opinion they should at least be considered for each and every project.