Chances are, if you were to ask 10 people at a cloud computing event the question, “What is cloud computing?”, you would get 10 different answers. This can be really frustrating to those trying to learn more. The reason for this confusion is that there are so many ways that the cloud can be utilized. It might be best to think of cloud computing in terms of SaaS - software as a service, PaaS - Platform as a Service and IaaS - Infrastructure as a Service.
Here are some basic level definitions on these terms and some examples of how they can be utilized. What they all have in common is that they are all scalable, on-demand, cost effective and secure. They are completely managed so that the end user can focus on their business rather than maintaining their software, applications or hardware.
Software as a Service: Also called: SaaS, web-based software, on-demand software or hosted software. Essentially, it is software made available to end users via the Internet. It is accessible from anywhere a user has an Internet connection, including mobile phones, and it is not downloaded to any computer. Software as a Service has the ability to be customizable to the user. It is a very low maintenance and cost effective because SaaS providers manage the servers where software is stored to ensure availability and performance. They also apply any needed software upgrades and administer the security of the product.
Examples of SaaS are all around us. In business applications, you may be familiar with CRM tools (such as Salesforces), banking services, project management tools, CAD/CAM, retail point of sale, meeting software (WebEx), etc. In personal use, Gmail, Yahoo Mail, Facebook, Turbotax, Twitter, YouTube, etc. are all examples of Software as a Service. Some are free and paid for by ad space, while offers are paid for with monthly or annual subscriptions.
Platform as a Service: Also dubbed PaaS, is possibly the most nebulous of terms related to cloud. Even companies selling the service seem to have different definitions. But, PaaS is referring to application development platforms where the development tool itself is hosted in the cloud and accessed and deployed through the Internet. And, just like SaaS, this service is maintained by the PaaS provider.
Examples of PaaS are: force[dot]com (it supports Salesforce, an SaaS), AppEngine (from Google), Bungee Connect, Long Jump, Wavemaker, and more. Usually developers are more familiar with these platforms as they are typically specialized to those in development.
Infrastructure as a Service: IaaS is considered the most flexible cloud model. Infrastructure as a Service provides fully scalable computing resources such as RAM, CPU and storage infrastructure. This enables companies to design IT systems that can scale based on demand. It is the responsibility of the IaaS provider to maintain uptime on all systems including power, broadband, and associated hardware. Therefore, most IaaS providers incorporate a high availability design model. High availability means that there are always infrastructure resources available if there is a hardware failure of any kind. High availability enables IaaS users to not only grow their infrastructure as needed, but also provide extremely secure uptime. IaaS providers can provide the necessary infrastructure to the PaaS and SaaS companies, and can even manage it for them, too.
No matter if it is an SaaS, PaaS or IaaS, the goal is a happy end user who can access their software or application via the Internet. They take away the pains of maintenance, security and storage, providing an always available, always working end product. Hopefully, this has added a little bit of clarity to the differences in the hazy world of cloud computing.
Talk to an infrastructure consultant today.