Service Governance and Lifecycle Management with Cloud Computing

In a recent post, I explained the ease with which the WSO2 cloud computing strategy help you go from on premise to cloud with minimal effort.

The design of this philosophy is based on the SOA governance and service lifecycle management principles.

The service development lifecycle is based on the simple principles of evaluating existing services to identify design improvements, then design, implement, test, deploy, use the services and then again evaluate the usage, to reach the design improvement decisions.

The advent of the cloud computing principles and tools help with this service governance lifecycle. Obviously, the IT and business users of services use on premise resources to evaluate the services, that may run on public, private or hybrid clouds. The feedback is picked up by software architects to analyze the new evolution requirements for the services and then design the service enhancements or new services based on the feedback.

It is natural and easy to use the design tools on a desktop or a laptop and then use development tools on premise by software engineers to realize the designs. The implementations done are then developer tested by the developers themselves. It is ideal when the developers can test the developed artifacts on premise, to save time.

Service Governance with Cloud

Then comes integration and system testing, done ideally by a testing team, in other words, a dedicated QA team. For this, they could use a staging environment, based on a private or a public cloud setup. To achieve this, there needs to be ability to deploy the same artifact on premise as well as on cloud, without any modifications to the service artifacts developed by the engineers.

Once the service artifacts gets approval by the QA to be graduated to the production system, the artifacts can go into production. The production system could be using a private or a public cloud, to leverage the cloud computing benefits, such as multi tenancy and elasticity.

A hybrid cloud setup could lead to ideal utilization of IT assets, enhanced productivity both on the part of developers and testers, minimal effort in terms of system setups required for testing, verification and staging. The ease with which the cloud computing setups enable to self provision and replicate the machine instances with pre-configured setups of platforms (also known as Platform as a Service – PaaS) make sure that the engineering team are not blocked on non-essential activities such as installations, rather focus on core business service realization.

Comments