The Three Cloud Service Models
Cloud computing services are delivered through three primary models: IaaS, PaaS, and SaaS. Each model represents a different level of abstraction and defines how much responsibility is shared between you (the consumer) and the cloud provider. As you move from IaaS to SaaS, you gain convenience but trade away control.
Infrastructure as a Service (IaaS)
IaaS is the foundational layer of cloud computing, providing the basic building blocks of IT infrastructure like virtualized servers, storage, and networking on demand. Core offerings include virtual machines (VMs), block and file storage, firewalls, and load balancers.
INFO
What is IaaS?
IaaS provides you with raw computing infrastructure components over the internet. You rent servers, storage, and networking hardware, but you are responsible for managing the operating system, middleware, and all your applications.
Pizza as a Service Analogy
With IaaS, the provider gives you the kitchen, oven, and ingredients. You are responsible for making the pizza from scratch, baking it, and serving it. You have full control over the final product.
This model offers maximum flexibility and control, similar to an on-premises data center, while being cost-effective by eliminating capital expenditure on physical hardware. IaaS heavily relies on virtualization to pool physical resources and provide virtual instances to consumers, with the ability to scale resources up or down dynamically based on demand.
Under the IaaS model, the provider manages the underlying physical servers, storage, networking, and the virtualization layer (hypervisor). The consumer is responsible for managing everything above that, including the operating system (including patching and updates), middleware, runtime, applications, and data.
Common Examples:
Amazon Web Services (AWS) EC2 (Elastic Compute Cloud)
Microsoft Azure Virtual Machines
Google Compute Engine (GCE)
Submodels: Storage as a Service (STaaS) and Desktop as a Service (DaaS) are often categorized as IaaS submodels.
Platform as a Service (PaaS)
PaaS builds on top of IaaS by abstracting away the underlying infrastructure to provide a ready-made environment for developers. It delivers a complete development and deployment platform with offerings such as development tools, database management systems, runtime environments (e.g., Java, .NET, Node.js), and web servers.
INFO
What is PaaS?
PaaS provides a complete development and deployment platform. The provider manages the servers, operating systems, and runtime environments, allowing developers to focus solely on writing code and managing their applications.
TIP
Pizza as a Service Analogy
With PaaS, you order a pizza delivery service. The provider handles the kitchen, oven, ingredients, and even makes the pizza dough and sauce. You just add your preferred toppings, and they bake it and deliver it to you.
The key benefits of PaaS include enhanced developer productivity and a faster time-to-market, as it handles operational processes like server updates, patching, and automated scaling based on application load.
With PaaS, the provider's responsibility expands to include the runtime, middleware, operating system, and all underlying server and storage infrastructure. This allows the consumer to focus exclusively on their applications and data, managing the application lifecycle from development and testing to deployment.
Common Examples:
AWS Elastic Beanstalk
Microsoft Azure App Service
Google App Engine
Heroku
Submodels: Database as a Service (DBaaS) and Integration as a Service are considered submodels of PaaS.
Software as a Service (SaaS)
SaaS is the most abstracted model, delivering a complete, ready-to-use software application over the internet on a subscription basis. The primary benefits of SaaS are its ease of use and accessibility. There is no need for installation or maintenance, and the provider handles all software updates and patches seamlessly and automatically. This model promotes collaboration by being accessible from various devices and is cost-efficient due to its predictable subscription model that reduces IT overhead.
INFO
What is SaaS?
SaaS provides access to a finished software product. The provider manages everything—the application, the platform, and the infrastructure. You simply connect to and use the software through a web browser or API.
TIP
Pizza as a Service Analogy
With SaaS, you go to a restaurant. You don't have to worry about the kitchen, the ingredients, or the cooking. You just order a pizza from the menu, sit down, and enjoy your meal.
In the SaaS model, the provider manages the entire stack, including the application, runtime, OS, and all underlying infrastructure. The consumer is only responsible for managing their data and user access within the application.
Common Examples:
Microsoft Office 365
Google Workspace (Gmail, Google Docs)
Salesforce
Zoom
ServiceNow, GitHub, Atlassian, PayPal
Submodels: Communication as a Service, Testing as a Service, and Security as a Service are all submodels of SaaS.
WARNING
Some platforms like SAP SuccessFactors or ServiceNow can be considered both PaaS and SaaS. They are SaaS because they offer a ready-to-use application, but they also serve as a PaaS by providing a platform for customers to build custom extensions and applications.
Comparing the Service Models
The primary difference between IaaS, PaaS, and SaaS lies in the division of responsibility. As you move up the stack from IaaS to SaaS, the cloud provider manages more, giving you greater convenience at the cost of reduced control.
Division of Responsibility
This relationship is often visualized as a stack, clearly showing what you manage versus what the provider manages in each model.
Component | On-Premises | IaaS | PaaS | SaaS |
---|---|---|---|---|
Applications | You Manage | You Manage | You Manage | Provider Manages |
Data | You Manage | You Manage | You Manage | Provider Manages |
Runtime | You Manage | You Manage | Provider Manages | Provider Manages |
Middleware | You Manage | You Manage | Provider Manages | Provider Manages |
Operating System | You Manage | You Manage | Provider Manages | Provider Manages |
Virtualization | You Manage | Provider Manages | Provider Manages | Provider Manages |
Servers | You Manage | Provider Manages | Provider Manages | Provider Manages |
Storage | You Manage | Provider Manages | Provider Manages | Provider Manages |
Networking | You Manage | Provider Manages | Provider Manages | Provider Manages |
The Evolving "As a Service" Ecosystem
The three delivery models form a natural provisioning hierarchy, with PaaS built upon IaaS, and SaaS built upon PaaS. The lines between these models are blurring, and new, more specialized services continue to emerge.
Containers as a Service (CaaS): Resides between IaaS and PaaS. Platforms like Docker and Kubernetes allow you to package applications into portable containers. CaaS providers manage the orchestration platform, but you manage the containers themselves.
Function as a Service (FaaS) / Serverless Computing: An evolution of PaaS that further abstracts infrastructure. You write and upload code as functions, and the cloud provider automatically handles everything required to run and scale them in response to events, billing only for the precise compute time used. FaaS can be seen as an intermediary between PaaS and SaaS.
- Examples: AWS Lambda, Google Cloud Functions, Azure Functions.
Anything as a Service (XaaS): A collective term for the growing diversity of services delivered over the cloud. Examples include Database as a Service (DBaaS), Security as a Service (SECaaS), and Identity as a Service (IDaaS).
Business Process as a Service (BPaaS): Involves providing business processes (e.g., payroll, HR) on a subscription basis.