26 June 2006 - 14:57SOA is not CORBA

Recently I started perusing literature concerning SOA  - Service Oriented Architecture, the latest buzzword in the IT industry. As any other new concept it is pretty vague and in the process of getting defined. I find it very interesting and I read on it heavily.
I cannot consider myself an expert in the domain mainly because the concept is pretty new and it applies to enterprise-wide concerns; in order to get hands-on experience you need to work close to the board-room level. However, I came across a few misconceptions that I think I can straigthen out. One of them is that SOA is the new CORBA, a particular type of CORBA that runs on XML, some CORBA on web-services, in order to connect to .NET systems.
Well, this is wrong. SOA is not a new CORBA and these would be a few reasons:
1) SOA is about empowering business users. SOA is as business-like as IT gets. CORBA is/was for techies, SOA is for business analysts, policy-makers and domain experts.
2) Some technological advances have occured since CORBA was released, one of them is the ESB. CORBA was essentially a point-to-point technology while ESB is all about diffussing information to different partners. CORBA was never taken above simple relationships.
3) SOA is partly about managing complex relationships between different actors in an enterprise, CORBA is all about simple relationships (point-to-point relationships).
4) SOA is much more in tune with the environment outside the server farm, CORBA is in the server farm.
5) SOA is concerned with business evolution, adaptability to a changing environment, efficient resource allocation, CORBA is concerned with implementing a pipe over which messages are streamed.

CORBA is probably the first communication protocol that noticed the  variety of systems that were trying to communicate with each other and presented a solution to this problem. SOA is concerned at its foundation with this problem, but rather than solving it it assumes it is solved and moves on to determine what should happen once the systems do start communicating one with another.

No Comments | Tags: Development

Add a Comment