Given my longstanding background in SOA and my current work in Cloud Computing, I’m often asked how the two complement each other, particularly from the business benefit perspective. Briefly, here are my thoughts and observations.
From the SOA Side
The immediate benefit of combining SOA and Cloud Computing is time. Reaching out to the cloud for business or technology capabilities, allows SOA initiatives to compress time to value.
In the longer term, the benefits include improved collaboration, customer satisfaction and business growth. By offering SOA based business capabilities to the cloud, businesses can improve interactions with business partners and existing customers, and/or generate new revenue streams.
From the Cloud Side
The immediate benefit of cloud computing is financial. Delegating workloads to a pay-as-you-go cloud computing environment eliminates upfront capital expenditures, and allows organizations to pay only for utilized capacity, therefore spreading out operating expenditure.
Workload appropriateness for cloud computing is tested against technical and business characteristics. Minimally, from a technical perspective, the workload is evaluated in terms of usage, performance, latency, service level needs, codebase, execution environment and dependencies. From a business perspective, the workload is minimally evaluated in terms of business critically, core functionality and data sensitivity.
Organizations with portfolios comprised of large scale, monolithic, tightly coupled applications face “all or nothing” decisions when evaluating cloud computing candidates. Despite passing a technical profile test, a monolithic application that contains core business functionality and/or sensitive data will probably fail the overall cloud candidacy test. This represents a lost opportunity, especially if the core functionality and/or sensitive data only comprise a small portion of the overall application.
Organizations with portfolios based on well-defined services, with solutions assembled using service oriented constructs, are better positioned to take advantage of cloud computing’s financial benefits. Instead of making decisions at the application or suite level, you can make decisions at the business capability level.
For example, a monolithic order capture application might fail the cloud candidacy test due to the business criticality of the order process, or customer data sensitivity. However, portions of the order capture application, such as product catalog, recommendations and promotion capabilities may be perfect cloud candidates. If the order capture solution is service-oriented, or minimally, the product catalog, recommendations and promotions capabilities are delivered as services, then those capabilities can be delegated to a cloud computing environment, therefore realizing capital and operating cost savings.
From Your Side?
As I said at the top, this a brief take on the benefits of combining SOA and Cloud Computing. I’m interested in hearing what other people think.
- Are you seeing other benefits?
- Is the thought of reworking your application portfolio untenable?
- Is the price of not reworking your application portfolio even worse?
[cross posted from elemental cloud computing]