> I do not understand, why bother with services? Make them RPC, and 
> end the story.
> 
> I think that both Erl & Herbjör miss the point - why services, 
> especially business services are coarse-grained. They are such 
> because they implement business functionality. Retrieving a data 
> field content from a database that somebody calls 'business data' - 
> fine-grained activity - has nothing to do with any business 
> functionality, this is why I do not consider it as a business 
> service (in spite of calculation capabilities of modern hardware).

I agree, discussions with people from the business are not at this low level 
nor should they be. This is one of the many reasons I dislike the style of SOA 
Erl focusses on so much in his books (others include the unnecessary complexity 
and, as I see it, inelegance of the resulting solutions). 

The linked pattern decompose capability 
(http://www.soapatterns.org/decomposed_capability.asp) is a good example of 
focussing on the details. In the example Invoice service has ReportProcessed 
which is moved to the InvoiceHistory service.  Maybe there is an argument for 
that change, for example even if we went for a RESTful approach we might decide 
to create more fine-grained resources so instead of a PUT to Invoice to change 
the Process value we instead POST an InvoiceHistoryEvent. 

Whilst these sorts of choices are important I think if we only focus on 
decisions at this detailed level we do miss the bigger picture (business 
services, capabilities or bounded contexts depending on your viewpoint).

Colin

Reply via email to