SOA is not a replacement for OO

SOA is not a replacement for OO, no matter what Yogi says.

No No No! :) < ?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

SOA is not about replacing OO. SOA is about one aspect (Yes AOP works
great with SOA) of your application.
Your application still needs to be designed well and that typically means
application of all the OO design principals which you have come to know and love
(or hate).

A principle of SOA is to not expose complex types (#1), yes. But this is best done < ?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />IMO through a facade (not necessarily the
pattern) or aspect which still uses well designed objects underneath. (#2)Using composition much more is not
really a requirement. In fact I
wouldn’t change my approach to OO design because of SOA, but using composition
to expose services is a great approach, often through use of a the facade
pattern.

Separating business logic and process from the business data really has
nothing to do with SOA and everything to do with a good OO design. If you aren’t already doing this, then
it is likely your OO designs could use some improvements. Since many of us are already doing this,
we are just more read for SOA when we choose to implement that
aspect.


I’m a huge fan of
DTRT, do the right thing. So far I have observed that SOA doesn’t change
the right thing, and that 99% of the time the right thing is continuing OO
design.

3 Responses to “SOA is not a replacement for OO”

  1. Udi Dahan - The Software Simplist Says:

    I have a podcast on this topic up on the Dr. Dobb’s Portal, “Does SOA mean the end of OO?” here:

    http://www.ddj.com/188500437

  2. Jay R. Wren - lazy dawg evarlast » Archive » Nick Malik is right on - SOA is really just OO applied to distributed systems Says:

    [...] I just really liked when he wrote “SOA is really just OO applied to distributed systems”.  Yes yes yes!  Thank you!  Unlike what others read and think about SOA, Nick got it right.  I still say that Yogi got it wrong.  SOA is not a replacement for OO. [...]

  3. Jay R. Wren - lazy dawg evarlast » Archive » Domain Driven Design (DDD) and Service Oriented Architecture (SOA) are both important Says:

    [...] 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/. [...]

Leave a Reply