Cloud Service Oriented Architecture (C-SOA) is an architectural approach to leverage cloud computing resources while utilizing Service Oriented Architecture (SOA) disciplines to drive substantial business value. In this convergence, SOA provides the underlying enterprise platform to consume cloud services. Historically, as business requirements evolved, enterprises continued to deploy new systems for almost every new application suite. These systems in turn were deployed with respective servers, storage, networks and processes. The constant additions of these systems — sometimes compounded by mergers and acquisitions — resulted in silos or islands of systems. Consequently, they are more difficult to leverage or integrate resulting in more complex tightly-coupled enterprise architecture. This complexity affected the ability to maintain these systems and was costly to change as business needs continued to evolve. The need of this level of agility is a key aspect of survival to many companies. C-SOA has the potential to prevent building silos again – this time in the cloud, which will be far more complex and difficult to reconcile. Service reuse, extensibility, abstraction, business value and agility are, not surprisingly, common shared attributes of both SOA and cloud computing. Let us explore…
SOA is simply an architectural pattern to guide the structure and assembly of systems to deliver business value. This level of service abstraction provides a genuine focus on structure for a valid design. SOA, as a framework, allows systems to be represented and further abstracted as services. Combined with a process orchestration layer and a monitoring capability, it is possible for these services to be reused and consumed without major integration or significant development efforts. This results in a core agility of the underlying architecture to respond to changing business requirements. With C-SOA, the focus is to bring value to business and achieving a true partnership between IT and business lines to advance the enterprise in the face of competitive pressures and changing business needs.
Some enterprises take undue risks by creating quick connections to cloud resources from enterprise systems in an ad-hoc fashion. These point solutions will further impact the realization of a true and flexible composite service layer. C-SOA advocates using a disciplined architectural approach to enterprise SOA and expanding its resource pools to include distributed cloud resources. Metrics like reliability, performance, recoverability, availability, security and dependency affect services delivery and should be taken well into architectural considerations. Cloud computing with its elasticity features addresses a core SOA design issue related to ubiquitous access and service scalability. Likewise, cloud-computing will benefit from SOA’s governance and sound architectural principals particularly for shared services. The results of a survey by Gartner research of CEOs and other senior business executives are depicted in the graphic below. The survey results show that 60 percent of the respondents indicated that they felt constrained by IT as they managed their enterprises out of the recent economic downturn.
The characteristics of SOA services (loosely coupled, abstracted, autonomous, reusable, stateless, compose-able, discoverable and standardized) can be fully supported by cloud computing mechanisms. The core of our C-SOA discussion is rightfully the spectrum of services delivered irrespective of source or location. Services are assembled into processes which then define behavior of business applications. Processes can be further orchestrated to support business workflows for an end-to-end business operation.
Clearly, Cloud IT transformation will involve people in addition to process, and technology. To successfully implement C-SOA in the enterprise, it is imperative that a dedicated team is established to:
This is the team that will be charged with creating an agile IT foundation to enable the business to compete, adapt and capture market opportunities. But how do you measure the agility core of an enterprise? Agility can be measured by the speed at which your changes can be implemented, the extent of the changes that can be tolerated at a given point in time and the ease of implementing those changes.
In the next blog article, we will examine this topic further by taking a closer look into some of the key elements of a C-SOA composite model required to achieve this level of agility for systems and processes.
Previously related article: