Software as a Service (SaaS), Platform as a Service (PaaS), and Infrastructure as a Service (IaaS)
In cloud computing, you might hear the terms SaaS, PaaS and IaaS. These are simply different logical layers in the stack. You can visualize it like this:
As you move up the stack, you increase abstraction. As you move down the stack, you increase control. Here is a brief summary of each term:
- Infrastructure as a Service (IaaS) - In this case, computing resources (compute, storage, and network) are exposed as a capability. Instead of owning, managing or controlling the underlying infrastructure, you rent the infrastructure, as a service. An example is Amazon Elastic Cloud Compute (EC2).
- Platform as a Service (Paas) - In this case, programming platforms and tools (such as java, python, or .NET) and/or building blocks and APIs for building cloud-based applications and services are made exposed as a capability. Examples include Amazon Simple Storage Service (S3), Azure Storage, and Force.com.
- Software as a Service (SaaS) – In this case, applications are exposed as a service running on a cloud infrastructure. Examples include SalesForce.com and Microsoft Office Online.
For my related posts on cloud, see: