SOA is a method of linking resources on demand. In an SOA, resources are made available to other processes on the network as independent services that can be accessed in a standardized way. This provides for more flexible loose coupling of resources than in traditional systems architectures. But while there has been much hype, there are few companies that have real evidence of having successfully implemented SOA.
Standard Life, however, claims that it has exposed 250 business processes as services, any of which could be reused by other applications as they all conform to the XML standard and the company’s own design pattern and support framework. The infrastructure is in turn built on top of IBM’s Websphere platform and DB2 Universal Database, running on IBM eServer p690 systems and zSeries mainframes.
Standard Life’s application design manager Derek Ireland told ComputerWire that of 250 services, about 123 are used by more than one application, some by three or more applications. There are 70 applications that consume those 250 services.
According to Ireland, this level of reuse of business services has saved the company 2m pounds ($3.8m) in application development costs so far, and the company is still exposing more services, and reusing more, by the day.
But not every business process has been exposed as a service. Today about 40% of Standard Life’s entire applications workload is run on the SOA. According to Ireland, We will not SOA-enable every application. We need to look at existing applications and see where we will get bang for buck [by exposing services].
Ireland said the company has been working on its SOA since 1995, which was before the term was actually coined. At that time the company called its infrastructure hub centric design, and the goal was to build applications by assembling components, and to try and reuse those components when building new applications.
But before 1999, when the company trained its developers in the XML standard, it was only able to produce relatively fine-grained components using Corba and writing components in C++, and to achieve only limited reuse. Since adopting the XML standard, the company has been able to make the services far more coarse-grained, so for example a service might now be a pension quotation, a direct debit authorization, a money laundering check for compliance purposes, or a customer search.
While the company makes extensive use of the XML standard, it has chosen not to use another web services standard aimed at enabling services reuse: Universal Description, Discovery and Integration, a standard that enables companies and applications to find and use web services on a network. To do SOA you don’t need web services with a capital ‘w’ and a capital ‘s’, said Ireland. The most important thing is people and process.
Instead the company stores the web services in an IBM DB2 database, and catalogs them in a Lotus Notes database. The Notes and DB2 databases are linked so they cannot become out of synch. Any developer building a new application first searches the Notes database for reusable services that could save on development time and cost. Standard Life’s Ian Muir, IS analysis and design, added that it has not been difficult to get developers to adopt the SOA approach. They can see it is simpler, faster and cheaper, he said.
Competitors who claim to have real-world examples of SOA in action include BEA, Oracle, Borland, SeeBeyond, webMethods, Tibco, and Compuware.