The promise of both cloud and service-oriented architecture (SOA) is about delivering services to the business, within and beyond the enterprise, with increased agility, speed and cost effectiveness, which can lead to greater innovation, improved collaboration, customer satisfaction and business growth, Twanette Jurd, technical director at InfoBuild, representing Information Builders in SA.

However, will the statement that ‘the whole is greater than the sum of its parts’ hold true for the combination of these concepts?

The concepts of SOA and cloud
To set the stage, let’s review how they overlap and how they differ. Service-Oriented Architecture (SOA) and cloud are complementary concepts that share some core principles.

They both emphasise the service concept and they promote loose coupling. Another overlap is that they both aim to provide savings and improved agility to make changes faster and more cost effectively.

However, at the same time they differ significantly in the types of services they provide. SOA is an architectural style for developing applications. The services in SOA focus mainly on business, that when combined, address a specific business application or solution.

Generally businesses start with a requirement to address a specific business problem and then abstract out the services. These services can be shared with and reused by other applications.

Cloud computing is a service-oriented deployment infrastructure – a new consumption and delivery model inspired by consumer internet services. In contrast to SO, which typically starts with a business problem, you don’t need a problem before defining the cloud services.

The definition of the different cloud services is based on their roles in the hardware and software stacks and is mostly well defined. The services can be easily accessed and reused by all applications.

Bringing them together
Cloud and SOA are similar from the perspective that they ultimately aim to achieve the same business value. However, as indicated above, they are not the same thing.
“Cloud is where things are running, SOA is how you get there, and that’s how the two of them fit well together,” says Randy Heffner of Forrester Research.

There is certainly a strong view in the industry that there is synergy between these concepts. Cloud computing, with its elasticity features, addresses a core SOA design issue related to ubiquitous access and service scalability.

Similarly, cloud computing will benefit from the governance, discipline and sound architectural principals of SOA, particularly for shared services.

Adopting a services-based approach
To increase the adoption of both cloud and SOA will require that companies need to picture their business as a collection of services by structuring their operating models, processes and technology components as services.

To an extent, this is already a fairly common paradigm for business people – to think about what is being provided to their customers and partners as services and to think about what they are receiving from other business partners and suppliers as services. This way of thinking now needs to be converted to a structured service-based approach.

Are we there yet?
Obtaining and sharing business services through the internet and electronic computing is a natural and obvious progression of global networking amongst companies and consumers.

People are already building service-oriented architectures in the cloud without even knowing that they are doing it.

So it would seem that the rise of the cloud is certainly leading to a services-based approach. Furthermore, companies that have implemented and are running services in SOA will already have seen the value of satisfying these services-based computing requirements.

What is important is that SOA should not only be viewed as a different technique for structuring information systems development and the value of cloud should not only be viewed as a way to reduce IT operations costs.

The real business value will only be attained by the ‘whole’, understanding the value proposition of a service-based approach, structuring business components as services, and combining the flexibility and pervasiveness of cloud computing with the sound architectural tenets of SOA.