I usually find myself nodding at the views of the esteemed David Linthicum,
but in the case of his recent post on information vs services, I’m a little hesitant to burst into rapturous applause. I think there is a danger here of causing more rather than less confusion.
The contention was that people get information and services confused, and that the ability to expose information through services is different to service-orientation. The basis of this claim is apparently that service-orientation is about sharing information and the behaviour bound to it rather than just information.
It seems to me a lot of SOA services are about presenting information to the end-user – for example a web service to query a bank account, or get customer details. The fact that they deliver information does not disqualify them from being accepted as valid in an SOA implementation. So is this a case of sharing information and behaviour? Well, a pedant might say so, but just getting an account balance is not what most people mean when they talk about system or services behaviour. I think ‘behaviour’ usually has implications of the application of business rules, policies and procedures. So a service to ask for a loan approval for a client might call a service to get the account balance, and if the loan amount is less than a certain multiple of the balance, the approval might be given automatically; if it is greater than this limit, however, another service would be called to obtain supervisory approval or carry out a more detailed risk assessment. Perhaps David’s concerns are more about an application that just does a remote data request – this is not the same thing at all as a reusable service, and I would agree this has no roll in service orientation.
My conclusion is that services that generate information can be just as much services as ones that have a wider business behaviour aspect. The real question is whether the service is performing a piece of business service functionality.