Re: SoA Vs OO

From: Mark Nicholls (Nicholls.Mark_at_mtvne.com)
Date: 06/04/04


Date: 4 Jun 2004 00:52:42 -0700


> >For the past decade and a half, the software industry mantra has been
> >OO. We have heard repeatedly that an object-oriented design is more
> >maintainable, more reusable and more resilient to changing
> >requirements. Now suddenly the air is abuzz with Service-oriented
> >Architecture. Object-orientation does not seem to be cool any more!
> >
> >When I take a closer look at SoA, it seems a lot closer to functional
> >design than object-oriented design. When I look at services, I tend
> >to look at them in functional terms AND NOT object terms. Whatever
> >happened to those oft-repeated protestations that functional
> >decomposition is bad and object-orientation is good?
> >
> >Am I missing something, or is the pendulum swinging back towards
> >functional design? Whatever happened to those neat concepts like
> >inheritance and polymorphism?
>
> Service Oriented Architecture is not a bad idea (although
> communicating packets through the http port is an immensely stupid
> idea). It is completely orthogonal to OO. SoA can (and almost
> certainly will) be implemented in OO languages using OO designs (so
> long as the programmers understand OO design). Moreover, services are
> by their very nature polymorphic, so SoA is in some sense an extension
> of OO.
>
> Functional decomposition is not a bad idea, nor was it ever a bad
> idea. Indeed, all object oriented designs are functionally
> decomposed. OO just adds polymorphism and encapsulation to that
> decomposition. There was a time, in the 90's, where it was
> fashionable to criticize designs as being "functionally decomposed"
> meaning anti-OO. However, the fashion was naive.
>

To a degree I agree with the original post...SOA is not OO and in a
sense is by definition not stateful OO. Experience seems to show that
statefull OO for inter application communication is in general a bad
idea, especially synchronous and non local communication.

We can argue the toss whether stateless objects are in fact just a
list of functions i.e. a functional API - to me they are, and we've
been there - or at least similar.

I would design both systems and the infrastructure in a standard OO
manner, but the architecture itself is effectively a functional one.



Relevant Pages

  • Re: SoA Vs OO
    ... > long as the programmers understand OO design). ... > Functional decomposition is not a bad idea, nor was it ever a bad ... OO just adds polymorphism and encapsulation to that ... especially synchronous and non local communication. ...
    (comp.programming)
  • Re: SoA Vs OO
    ... We have heard repeatedly that an object-oriented design is more ... SoA can (and almost ... Functional decomposition is not a bad idea, nor was it ever a bad ... OO just adds polymorphism and encapsulation to that ...
    (comp.programming)
  • Re: SoA Vs OO
    ... We have heard repeatedly that an object-oriented design is more ... SoA can (and almost ... Functional decomposition is not a bad idea, nor was it ever a bad ... OO just adds polymorphism and encapsulation to that ...
    (comp.object)
  • =?UTF-8?B?RUJPT0sg2YfYp9mKINmF2YfZhtiv2LPZiiDYp9mE2qnYqtix2YjZhtuM2qkgINiv2LEgQw==?= =?ISO-8
    ... Analog - analogue ic design the current mode approach, ... ANTENNA - HANDBOOK OF ANTENNAS IN WIRELESS COMMUNICATIONS, ... Artificial Intelligence - Intelligent Communication Systems, ...
    (sci.math.num-analysis)
  • Review my resume. Please.
    ... communication, interpersonal, and problem solving skills. ... MOST and CAN (Controller ... network devices for automotive industry based on MOST (Media Oriented ... the Open Systems Interconnect reference model; design focused ...
    (comp.arch.embedded)