Skip to main content

Welcome to a Grasp lesson

Create a free account to keep studying and create your own study path.

Lesson 2

AWS Cloud Service Models: IaaS, PaaS, and SaaS Explained

Recommended resources

Hello! Welcome back to your course on the AWS Cloud Practitioner essentials.

In our first lesson, we explored the five essential characteristics that define cloud computing, connecting them to AWS services you're already familiar with, like Lambda and SQS. We saw how principles like on-demand self-service, resource pooling, and rapid elasticity are the foundational "why" of the cloud.

Now, we'll build on that by exploring the "what" – the different ways cloud services are packaged and delivered. This lesson focuses on differentiating between the three core cloud service models: Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Software as a Service (SaaS). By the end of our session, you'll not only understand the definition of each model but also be able to analyze a business scenario and determine which model is the most appropriate, using specific AWS examples to justify your choice. This is a critical skill for both the exam and for making real-world architectural decisions.

The Spectrum of Management: Control vs. Convenience

The fundamental difference between IaaS, PaaS, and SaaS comes down to a single question: How much of the technology stack do you want to manage yourself, versus how much do you want to delegate to the cloud provider?

It's a spectrum. On one end, you have maximum control but also maximum responsibility. On the other, you have maximum convenience but minimal control. A popular and effective way to visualize this is the "Pizza as a Service" analogy.

  • On-Premises: You make everything from scratch. You buy the ingredients, make the dough, add toppings, bake it, provide the oven, the electricity, and the dining table. You manage everything.
  • Infrastructure as a Service (IaaS): You rent the kitchen. The provider gives you the oven, gas, and electricity, but you bring your own pizza dough, sauce, and toppings. You manage the baking and serving.
  • Platform as a Service (PaaS): You order a pizza kit. The dough and sauce are pre-made. You just add your own creative toppings and bake it in their oven. You focus on the creative part, not the basics.
  • Software as a Service (SaaS): You order a finished pizza for delivery. You just eat it. The provider handles everything from ingredients to baking to delivery.

This trade-off is visually represented in the Shared Responsibility Model. The following diagram illustrates which parts of the IT stack you manage versus what the cloud provider manages for each model. This is one of the most important concepts to master for the Cloud Practitioner exam.

This diagram shows the division of management responsibilities between you (the customer) and the service provider. As you move from On-Premises to SaaS, the provider takes on more management responsibility, increasing convenience for you.

To get a comprehensive understanding of these models, including detailed use cases and scenarios, please read through the following article from MindMesh Academy. It does an excellent job of breaking down each model and, most importantly, applying them to real-world situations.

Difference Between PaaS IaaS and SaaS: Cloud Model Comparison

This article provides a thorough comparison of the three cloud service models, complete with the pizza analogy, a responsibility table, and practical scenarios that align perfectly with your goal of understanding decision-making in the cloud.

Please read the following sections: Start with the introduction to grasp the core concepts and the pizza analogy. Continue through the At-a-Glance Comparison, paying close attention to the table of responsibilities. Read the detailed explanations for IaaS, PaaS, and SaaS to understand their ideal use cases and trade-offs. Finally, and most importantly, study the section Diving Into Real-World Scenarios. This will directly help you practice the application of these concepts.


Synthesizing the Models with Your Experience

The article you just read provides a solid framework. Now, let's connect these models directly to your background in software development and your existing knowledge of AWS.

Infrastructure as a Service (IaaS)

As the reading explained, IaaS gives you the fundamental building blocks of computing: virtual servers, storage, and networking. You have the most control but also the most responsibility.

  • Your Responsibility: Managing the operating system (patching, hardening), middleware, runtimes, and the application itself.
  • AWS Primary Example: Amazon EC2 (Elastic Compute Cloud). When you launch an EC2 instance, you are renting a virtual server. You choose the OS (e.g., Linux, Windows), and you are responsible for installing your software, managing security patches, and configuring everything on it.
  • When to use it: You've likely worked with enterprise applications that have specific dependencies—perhaps an older version of a Java runtime or a custom-configured web server. A "lift-and-shift" migration of such an application to the cloud would be a classic IaaS use case, as it allows you to replicate the on-premises environment with maximum control.

Platform as a Service (PaaS)

PaaS is designed for developers. It abstracts away the underlying infrastructure, allowing you to focus purely on writing and deploying code. Given your experience building REST APIs and microservices, this model is highly relevant to your work.

  • Your Responsibility: Managing your application code and data.
  • AWS Primary Example: AWS Elastic Beanstalk. With Elastic Beanstalk, you can take your application artifact (e.g., a .jar file from a Spring Boot project or a Python application), upload it, and Elastic Beanstalk automatically handles the deployment. It provisions the necessary EC2 instances, configures load balancing, enables auto-scaling, and sets up monitoring. You don't manage the servers; you manage your application.
  • When to use it: When your primary goal is rapid development and deployment. If you're building a new set of microservices, PaaS allows your team to focus on business logic and features, not on infrastructure management, dramatically accelerating your time to market. The trade-off is reduced control and potential vendor lock-in.

Software as a Service (SaaS)

SaaS is a finished product that you consume, typically through a web browser. The provider manages everything from the hardware to the application code.

  • Your Responsibility: Managing your data within the application and user access.
  • Examples: You use SaaS products every day. Salesforce (CRM), Microsoft 365 (Productivity), Dropbox (Storage), and Zoom (Collaboration) are all prime examples. Within the AWS ecosystem, services like Amazon WorkMail (managed email) and Amazon Chime (communications) fit this model.
  • When to use it: When you need a solution for a standard business problem (e.g., email, customer relationship management) and don't want to build or maintain any software yourself. The value is in using the tool, not building it.
This image provides clear, real-world examples for each service model. Notice how the examples move from foundational infrastructure (IaaS) to development platforms (PaaS) to end-user applications (SaaS).

An Alternative Analogy: Coffee as a Service

To help solidify these concepts, watch this short video from Travis Roberts. It explains the same ideas using a different, equally intuitive analogy: making coffee. Sometimes hearing the same concept explained in a new way can make it click.

Cloud Fundamentals IaaS, PaaS, and SaaS Explained (Coffee Edition)

This video offers a concise and memorable "Coffee Edition" analogy to differentiate between On-Premises, IaaS, PaaS, and SaaS.

Watch the entire video, which is just under five minutes long. Pay attention to how each coffee-making scenario maps to a specific cloud service model: On-Premises: Growing your own beans. IaaS: Buying roasted beans to brew yourself. PaaS: Using a coffee machine that does the brewing for you. SaaS: Buying a ready-made coffee from a café.


Applying Your Knowledge: Scenario-Based Decisions

As you requested, let's focus on decision-making. The Cloud Practitioner exam will present you with scenarios and ask you to choose the best approach. Let's analyze the scenarios from the MindMesh article.

Scenario 1: Migrating a Legacy Enterprise System

  • The Challenge: A financial institution needs to move a critical, decades-old accounting system to the cloud. The system has very specific dependencies on an older operating system and custom network configurations. A full rewrite is too risky and expensive.
  • Analysis:
    • SaaS is a non-starter. You can't buy a custom legacy system off the shelf.
    • PaaS is too restrictive. Its managed, modern environments won't support the old, specific dependencies of the application.
    • IaaS is the clear winner. It provides the flexibility to create a virtual environment that perfectly mirrors the on-premises setup. You can install the exact OS version needed and replicate the network configuration. This "lift-and-shift" approach is a primary use case for IaaS.

Scenario 2: Building a New Mobile App Backend

  • The Challenge: A startup with a small, skilled developer team needs to launch a new mobile app quickly. The backend must scale instantly, but they don't have a dedicated operations team.
  • Analysis:
    • IaaS would work, but it would be slow. The developers would be spending time on infrastructure management (provisioning servers, configuring databases) instead of writing application code, delaying market entry.
    • SaaS is not applicable, as they are building a custom backend, not consuming a finished product.
    • PaaS is the sweet spot. Using a service like AWS Elastic Beanstalk, developers can push their code and let the platform handle the scaling, deployment, and management. This allows the team to focus entirely on building features, which is their core value.

Scenario 3: Choosing a New Company-Wide CRM

  • The Challenge: A marketing agency needs a robust Customer Relationship Management (CRM) system. The team consists of marketers, not engineers. They need a solution that is ready to use immediately with zero maintenance.
  • Analysis:
    • IaaS/PaaS would be complete overkill. Building a CRM from scratch is a massive undertaking and is not the agency's core business.
    • SaaS is the obvious choice. Subscribing to a service like Salesforce or HubSpot provides an enterprise-grade tool immediately. The agency can focus on its business (marketing) while the SaaS provider handles all the technology.

Conclusion

In this lesson, we demystified the three fundamental cloud service models by focusing on the trade-off between control and convenience. You learned how to differentiate IaaS, PaaS, and SaaS based on the division of management responsibilities and how to apply this knowledge to select the right model for a given business need.

Here are your key takeaways:

  • The main difference between IaaS, PaaS, and SaaS is how much of the technology stack is managed by the provider versus by you.
  • IaaS (Infrastructure as a Service) offers the most control and is ideal for migrating legacy systems or for workloads requiring deep customization. Think Amazon EC2.
  • PaaS (Platform as a Service) is built for developers to accelerate application delivery by abstracting away infrastructure. It's perfect for building APIs and microservices. Think AWS Elastic Beanstalk.
  • SaaS (Software as a Service) delivers ready-to-use applications, offering the most convenience. It's ideal for standard business functions. Think Salesforce or Microsoft 365.
  • Most organizations use a hybrid approach, mixing all three models to fit different use cases.

We've now covered the "why" (characteristics) and the "what" (service models) of the cloud. In the next lesson, we will discuss the "where" by exploring the three cloud deployment models: public, private, and hybrid. We'll examine the pros and cons of each and determine which is appropriate for different business requirements.