Defining the utility computing model and explaining various layers and types of clouds has been an industry staple for a while. Attempts to define the cloud have been many, and they have been memorialized in the NIST definition as reproduced below:
Cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction. This cloud model promotes availability and is composed of five essential characteristics, three service models, and four deployment models.
A conceptual model for the cloud layers is as follows:
|We start with the traditional ownership model where you outright purchase a car. You own the vehicle, and can choose the color, the trim and the accessories. The car costs you the same whether you keep it in the garage or drive it 12 hours a day. You are also responsible for the maintenance and insurance for the vehicle.|
This is the on-premise model for traditional software, where-in you own the software, can modify it as you please and are also responsible for the maintenance of the software.
This model reduces the amount of ownership you have for the software, but it also lowers the maintenance overhead. As a business you start leveraging the software for the business function it offers without having to get overly involved in the maintenance of the application.
Granular pieces of functionality are leveraged on demand, and you pay for what you use. This is a highly efficient model for leveraging specific business functionality. There is no ownership and no maintenance overhead. Also you get what is delivered, and have no control over the structure of the services, and have to adapt your business processes to accommodate these services.
|What if…. You liked the on-demand model of the cloud, the pay-as-you go convenience of the cloud, but still wanted the ability to customize your experience. Essentially you wanted a taxi, BUT wanted to choose the model of the taxi… AND you wanted to drive it. You wanted all of this for short periods of time and did not want to have any of the liabilities that come with ownership. This is possible, and in the "car" analogy is provided by the Zip car providers in major metro cities.|
This confluence of pay-as-you-go with the flexibility of limited ownership is provided by layering a SOA based approach in a cloud environment. This approach provides for a pre-built process on the cloud that can be further orchestrated to work with existing business processes.