IaaS, PaaS and SaaS Terms Clearly Explained and Defined
I love it when semi-abstract terms and sometimes confusing technologies have an easy way to describe them in a terse/quick manner. I found a great explanation from the "Windows Azure Platform: Cloud Development Jump Start" series in the first video (the video series is available both on iTunes and Zune and it covers the latest 1.3.x version of the SDK). The series is provided free of charge. Below are a couple of slides from the presentation:
Easy to Understand one-word descriptions of each term (i.e. IaaS means host)
Data Visualization of Vendor Management Responsibility of Services
I really like the last slide, because it clearly breaks down hierarchy of software layers into what is each vendor service (IaaS, PaaS and SaaS) is responsible for and what you are responsible for. Also in the video one of the speakers (Manu Cohen-Yashar) breaks each service down by the "unit you are gaining" from the service:
- IaaS - the unit you are gaining is a computer/server. Therefore IaaS is essentially a "physical server box". An example of this would be going to RackSpace or SoftLayer and leasing a physical box from them. The vendor manages the networking, hard drives (if they fail), hardware of the box, virtualization O/S (if the box is virtualized). You can remote desktop to the box and you manage everything else (shown in the screenshot above). Windows Azure provides IaaS in the form the VM Role (you upload a Windows Server 2008 R2 image and manage the server yourself).
- PaaS - the unit you are gaining is an application/framework. Therefore PaaS is a "hosted application/framework/tools that you can leverage to build something on. That application is configured on IIS/SQL Server etc and runs on a hardware/virtual system that the vendor manages. An example of PaaS would be Windows Azure (excluding the VM Role) services like web role, worker role, Reporting Services etc.
- SaaS - the unit you are gaining is business functionality. For example, Gmail is a type of a SaaS mail provider because you don't have to manage any service yourself and its all done by the vendor (Google in this example).
I really like the clear examples and distinct definitions that are made in the videos. Hopefully, you can use these examples in explaining this to your boss or a non-technical person. I highly recommend you check out the "Windows Azure Platform: Cloud Development Jump Start" series if you are interested on learning about Azure or gain general information on the cloud.