Welcome to your second lesson. In our previous session, we explored the six advantages of cloud computing—the fundamental "why" behind moving to the cloud. We discussed how the cloud helps businesses trade capital for variable expenses, increase agility, and scale globally in minutes.
Today, we move from the "why" to the "what." The term "cloud computing" is broad and encompasses different service models. This lesson will focus on differentiating the three main types: Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Software as a Service (SaaS). Understanding the distinction between these models is crucial for the Cloud Practitioner exam, as it helps categorize AWS services and explains the division of responsibilities between you and the cloud provider.
The Spectrum of Management: IaaS, PaaS, and SaaS
The fundamental difference between IaaS, PaaS, and SaaS boils down to a single question: Who is responsible for managing which parts of the technology stack? Each model represents a different point on a spectrum, trading user control for vendor-managed convenience.
A typical technology stack includes everything from the physical networking and servers in a data center up to the application that the end-user interacts with. Let's look at a classic diagram that illustrates how management responsibilities shift across the three service models.

As you can see:
- In IaaS, the vendor manages the foundational physical infrastructure, but you manage everything from the operating system up.
- In PaaS, the vendor manages more, including the operating system and runtime, leaving you to manage only your application and data.
- In SaaS, the vendor manages the entire stack. You simply use the software.
This concept of divided responsibility is central to the cloud. To make it more intuitive, let's explore a popular analogy.
A Quick Analogy: The Car Service Model
Analogies can be powerful tools for remembering concepts during an exam. This short video from IBM Technology uses a car analogy to brilliantly explain the differences in control and responsibility between IaaS, PaaS, and SaaS.
Watch this segment from the video "PaaS Explained". The speaker provides a very clear car-based analogy to differentiate the three cloud service models.
Pay close attention to the analogy comparing IaaS to leasing a car, PaaS to renting a car, and SaaS to taking a taxi from this section.
To summarize the analogy:
- IaaS is like leasing a car. You have maximum control. You choose the make, model, and color. You are responsible for driving, fuel, tolls, and regular maintenance. You have the most flexibility but also the most responsibility.
- PaaS is like renting a car. You have less control but more convenience. You don't own the car and don't worry about its maintenance history. You simply pick a car class, drive it, and pay for the fuel you use. You focus on your journey, not managing the vehicle.
- SaaS is like taking a taxi or ride-sharing service. You have minimal control but maximum convenience. You don't drive, navigate, or worry about fuel or maintenance. You just tell the driver your destination and enjoy the ride.
Now, let's ground this analogy in the technical definitions and use cases you'll encounter on the exam. We'll start by reading the official AWS definitions for each model.
SaaS vs PaaS vs IaaS – Types of Cloud Computing
This document from AWS provides the official, high-level definitions for each of the three cloud computing models.
Read the section on cloud computing models, specifically the descriptions for IaaS, PaaS, and SaaS. This will give you the formal definitions that AWS uses.
1. Infrastructure as a Service (IaaS)
As the name implies, IaaS provides you with the fundamental infrastructure of IT—servers (as virtual machines), storage, and networking. You are renting the hardware.
- You Manage: The operating system, middleware, runtime, data, and applications.
- Vendor Manages: The physical servers, storage, networking, and the virtualization layer.
- Key Idea: Maximum flexibility and control.
- AWS Example: Amazon EC2 (Elastic Compute Cloud) provides scalable virtual servers. You choose the instance type (CPU, memory), install your desired operating system, and have full administrative control.
With your background in development, you can think of IaaS as being handed a brand new, empty virtual machine. You have the freedom (and responsibility) to install the OS, configure the network settings, install a Java runtime, deploy a web server, and then run your application. This model is ideal for scenarios requiring deep customization.
2. Platform as a Service (PaaS)
PaaS builds on top of IaaS. The provider manages the hardware and the operating system, and often the runtime environment (like the Java Virtual Machine or Python interpreter). This allows developers to focus purely on writing and deploying their application code without worrying about the underlying infrastructure.
- You Manage: Your applications and data.
- Vendor Manages: Everything else, including the runtime, middleware, OS, and hardware.
- Key Idea: Developer productivity and faster time-to-market.
- AWS Example: AWS Elastic Beanstalk. You can simply upload your application code (e.g., a
.jarfile for a Java application), and Elastic Beanstalk automatically handles the deployment, capacity provisioning, load balancing, and application health monitoring.
Your experience with MuleSoft and WSO2 is very relevant here. Many of their products function as a PaaS or a specialized iPaaS (Integration Platform as a Service). You focus on designing the integration logic or API, and the platform takes care of executing it on managed infrastructure. PaaS is designed to eliminate the "undifferentiated heavy lifting" of managing infrastructure for developers.
3. Software as a Service (SaaS)
SaaS is a complete, ready-to-use software product that is centrally hosted and licensed on a subscription basis. This is the most common model that end-users interact with daily.
- You Manage: Your usage of the software and your data within it.
- Vendor Manages: The entire stack, from the hardware to the software itself.
- Key Idea: Maximum convenience and ease of use.
- Examples: Salesforce (CRM), Microsoft 365 (Productivity Suite), and even AWS's own Amazon Chime (for online meetings). You just log in and use it.
When to Choose Each Model
For the exam, you'll often be presented with a scenario and asked to identify the most appropriate service model. The following reading provides excellent, real-world scenarios and a comparison table that will help you solidify your understanding of when to use each model.
Difference Between PaaS IaaS and SaaS: Cloud Model Comparison
This article provides clear examples and a detailed comparison table that is perfect for exam preparation.
First, read the section At-a-Glance Comparison. Then, skip down to the section "Diving Into Real-World Scenarios" and review the Detailed Comparison table. This table connects use cases and user roles to each model, which is exactly the kind of analysis you'll need for the exam.
The scenarios discussed in that resource are classic exam questions:
- Migrating a legacy application with specific OS requirements? Choose IaaS for its flexibility.
- A startup building a new web application and needs to launch quickly? Choose PaaS to accelerate development.
- A company needs a CRM solution without any IT overhead? Choose SaaS for its immediate, out-of-the-box functionality.
Conclusion
Understanding the differences between IaaS, PaaS, and SaaS is foundational to cloud computing. It's all about the trade-off between control and convenience, determined by how much of the technology stack you want to manage yourself versus how much you want to offload to the cloud provider.
Key Takeaways:
- IaaS (Infrastructure): Maximum control. You manage the OS and above. Best for legacy systems and custom architectures. (e.g., Amazon EC2)
- PaaS (Platform): Focus on development. You manage your application and data. Best for rapid application development. (e.g., AWS Elastic Beanstalk)
- SaaS (Software): Maximum convenience. You just use the software. Best for off-the-shelf business functions. (e.g., Salesforce, Microsoft 365)
In our next lesson, we will explore the physical foundation upon which all these services are built: the AWS Global Infrastructure. We'll learn about Regions, Availability Zones, and Edge Locations, which explain how AWS provides high availability and global reach for the services we've just discussed.