Sunday, February 6, 2011

Cloud Computing

When I asked about Cloud Computing at one of the renowed Software Industry Leader Seminars, I got various definitions from various speakers. All seems to be correct, as Speakers were all having good Industry Experience and knowledge. But still why different definitions from diffrernt speakers, give me a thought 
process to define Cloud Computing in generic terms irrespective of the technology and then based on User needs adaption of it i.e. in terms of functionality is defined.

If someones ask one word Cloud Computing definition then i Would be happy to answer as "On Demand". But this On Demand keyword have many meanings. In generic meaning Clod Computing is anything that is available on the Internet. Note i have not used any application, database, servers etc name in my definition
because here we are describing the definition as a marketer to any technical or non technical customer or user.

Based on functionality three definitions which are part of the Cloud are:

1. When Customer or user wants ready to use softwware just like ready to eat products are there for e.g. ready to eat cuppa noodles , then Software as a Service (SaaS) is the solution available. Customer or User need not to hire developers for creating the required Software. All  solutions of Customer Relationship Management, Salesforce Automation, Marketing Automation, Customer Service and Support, etc. fall into this Category.

2. When Customer wants Software as per the business Process of Organisation then, Platform as a Service (PaaS) allows you to build custom applications on the base platform on which SaaS applications are written. Using existing base environment saves time and effort as for some basic functionality you need to reinvent the wheel. But you need to hire specialized developers to make Customized applications.

3. When Customer wants to host application not on the Customer premises then Infrastructure as a Service (IaaS) is available to companies who have already implemented their web based applications. For smaller organisations this feature is a boon as this makes use of Multi - Tenent model i.e. for example in a Society Complex there are some facilities available to the members of the Society i.e. Gynasium, Swimming Pool, Sports Room, etc. All the members contibute nominal monthly fee to availe this facilities, which if they wish to have private Gynasium, Swimming Pool, Sports Room, etc think how much expensive will it cost to each individual. Some of them can't even think to afford also. Hybrid models do exist. You can have your own private cloud, and also lease remotely hosted infrastructure, platform space or full software solutions externally from your environment.

So whenever somebody asks you about Cloud Computing, then ask what service they are offering: SaaS, PaaS, or IaaS. Then ask yourself which environment they are offering the solution in: Java, .NET, or Apex (Salesforce.com).

Hopes this article makes Cloud Computing Concepts clear.