Monday, December 8, 2008

SOACon

So I was in Munich last week attending SOACon and W-JAX 08. What did I learn?
Alot about the tree letter word SOA.

SOA is distributed computing with different ownerships

Nicholai Josuttis

SOA is about breaking the monolith, it means full decoupling of units where the basic unit is the service. The Service is the basic unit of the development team, of the tests, of deployment, of versioning, of ownership (there is a business and a IT owner), of management and should be also of the unit for accounting

Stefan Tillkov

I see now that SOA is a partitioning approach for highly complex solutions that allows to handle the inherent complexity

Marcel Donges declared:
A SOA service is a business service, a attendance, a single "Dienstleistung" and there is no difference between a Dienstleistung and a SOA Service.


This thoughts have wide reaching consequences. For as in the past, without better knowing, I implemented webservices RPC style which binds the client heavly to the interface the server declared. SOAs in the contrary have such a loosley coupled interface that enhancements of the service barely change it.

A SOA is not a homogenous architecture and redudancy is allowed, as Josuttis explained, a serice oriented architecture will often not have one single customer service just because of what type of customer data you need will differ substanitally for every consumer. In reality services will have one consumer in average, many services will not be needed at all .
Maybe just one service will be very crucial, consumend by infinite systems, while the most will just have one consumer at best



x = number of producers; y= number of consumers


someone showed a powerlaw curve they distilled from empiric data. x = number of producers; y= number of consumers

A SOA is more the bazaar than the cathetral, we don't outline a efficient high level architecture, a big picture of our system but let free market forces decide which service to consume, which to spare.

No comments: