Depending on your outlook, service-oriented architecture is either another piece of management jargon dreamt up by marketing departments to help vendors sell more kit, or a legitimate and proven strategy that is revolutionising business IT.
To find out whether the emperor really has any clothes, ZDNet.co.uk spoke to director of technology for Progress Software, Dr Giles Nelson. A regular speaker on SOA and complex event processing, Nelson was the co-founder of Apama, a financial software startup that was bought by Progress in 2005.
Q: It seems many enterprises that have invested in SOA aren't reaping the rewards they should be from their IT investments. What is going wrong?
A: We are all striving to gain a more services-driven view of our computing infrastructure. The internet is "forcing" a services-based approach upon users everywhere, and they have accepted it. What organisations need to do now is be able to mirror that approach in the core structure of their business models so they can market themselves and deliver to their customers in a way they will naturally demand.
What kind of impact can SOA have on a business, if it is implemented correctly?
When SOA is "done right", so to speak, it can give rise to a new economic model within a business. If the organisation has intelligently deployed a services-driven approach that is aligned to business issues (and therefore customer needs) then the IT manager is in a much greater position of power. He or she can then propose that different business units are charged differing amounts depending on the type and mission-criticality of the IT services they consume.
A new level of efficiency is achieved and IT suddenly evolves from being a cost centre to being a critical business-focused element of the total business. Essentially, this is SOA "Nirvana".
The term "unified visibility" is used in relation to SOA. What does it mean and why is it important?
When you put SOA into practice, you need to be able to measure both the usage and impact of the services deployed. If a service is deployed for business unit A, but is significantly used by business unit B, then it's pretty obvious that visibility is suffering or non-existent.
Once visibility is achieved, it's important to ensure that the appropriate level of governance exists to drive the corporate engine forward in the right direction. This will also mean providing reporting tools in the form of dashboards, to give both individual employees and management real time information on business transactions and movements.
How granular can management of services be made — and what control can that give us to direct the workings of a typical SOA architecture?
If a service exists, then visibility into the nature of that service can be provided so you know who (or what business unit) is using it, when they are using it and how much they are using it. This control is governed by an interceptor that is placed on the Java stack itself. From this point we can use the interceptor to prioritise service calls from a particular invoker.
Where will SOA have the most impact in the next five years?
Well, the short answer is potentially everywhere — but, to be specific, if you look at the financial and retails markets, they are good examples because of their consumption of high-volume real-time information.
Where a business used to look back on its sales performance and stock shifts at the end of the week, we can now see that the end of the day is not soon enough to react to market changes that can be driven by factors as diverse as online sales, seasonality or the weather.
Technologies such as RFID are driving the need for real-time collation and interpretation of mass data streams — channeling this data into services is the key.
How does your background in Complex Event Processing complement your understanding of SOA in practice?
CEP is relevant here in the sense that in a situation where there are many events in a "cloud", you have a lot of fast-moving data and you need to pin it down.
Where CEP works is that it provides "reach" into the meaningful information that can have an impact upon the business. In a SOA rollout, CEP is a decision-making tool that enables real-time decision-making on all data. Where the enterprise service bus is the nervous system, CEP would represent the brain.
Has the perception of what SOA can do for the business broken through into the management function's understanding of the IT department?
No it hasn't. It probably never will until we find a better way of articulating it to chief executives and the rest of the boardroom. We need to ask these managers if they are aware how services (in the wider sense) are delivered by their organisation. We then need to ask them how fast they think they could deliver new or changed services if the market demands it.
That's where SOA comes in and provides the agility and visibility to look at all the meaningful data within the business, and see how it is being delivered. Quality of this information content and ubiquity of access to it will be the determining factors to succeed in a fully evolved SOA world.