Cloud computing is fundamentally structured around different layers or dimensions, each offering distinct levels of service and control. According to a common classification from July 15, 2015, the cloud computing stack can be defined as having three core dimensions: a software dimension, a platform dimension, and an infrastructure dimension.
These dimensions represent the different ways users can access and utilize cloud resources, ranging from ready-to-use applications to raw computing power. Understanding these layers is crucial for selecting the right cloud service model to meet specific business needs.
The Three Core Dimensions
The three dimensions are often visualized as a stack, with Infrastructure as a Service (IaaS) forming the base, Platform as a Service (PaaS) sitting above it, and Software as a Service (SaaS) at the top. This layering indicates increasing levels of abstraction and managed services as you move up the stack.
1. The Infrastructure Dimension (IaaS)
At the foundational level is the infrastructure dimension, typically offered as Infrastructure as a Service (IaaS). This dimension provides access to fundamental IT resources over the internet.
- What it provides: This includes virtualized computing resources like servers, storage, and networking capabilities. Users rent these resources and manage their own operating systems, applications, and data.
- Key characteristics:
- Highest level of flexibility and control for the user.
- Requires users to manage the operating system, middleware, runtime, and applications.
- Billing is usually based on consumption (e.g., per hour, per GB).
- Examples:
- Amazon Web Services (AWS) EC2 (compute) and S3 (storage)
- Microsoft Azure Virtual Machines and Blob Storage
- Google Compute Engine and Cloud Storage
2. The Platform Dimension (PaaS)
Sitting atop the infrastructure dimension is the platform dimension, commonly known as Platform as a Service (PaaS). This layer provides a runtime environment for developing, testing, and deploying applications.
- What it provides: PaaS offers tools, services, and a managed environment that abstracts away the underlying infrastructure. Developers can focus on writing code without worrying about managing servers, operating systems, or database configurations.
- Key characteristics:
- Simplifies application development and deployment.
- Cloud provider manages the operating system, middleware, and runtime.
- Users manage their applications and data.
- Examples:
- Google App Engine
- AWS Elastic Beanstalk
- Microsoft Azure App Service
- Heroku
3. The Software Dimension (SaaS)
The highest layer is the software dimension, delivered as Software as a Service (SaaS). This dimension provides fully functional applications delivered over the internet on a subscription basis.
- What it provides: SaaS offers complete, end-user applications accessible via a web browser or API. The cloud provider manages the entire stack – infrastructure, platform, and the application itself.
- Key characteristics:
- Easiest to consume; no installation or management required from the user.
- Cloud provider is responsible for maintenance, updates, security, and scalability.
- Users typically only manage user accounts and application configuration.
- Examples:
- Google Workspace (Gmail, Docs)
- Microsoft 365 (Word, Excel)
- Salesforce
- Dropbox
- Zoom
Summary of Cloud Dimensions
Dimension | Service Model | User Manages | Provider Manages | Typical Users |
---|---|---|---|---|
Infrastructure | IaaS | OS, middleware, runtime, applications, data | Servers, storage, networking, virtualization | IT Administrators, Developers |
Platform | PaaS | Applications, data | OS, middleware, runtime, servers, storage, networking, virtualization | Developers |
Software | SaaS | User accounts, application configuration, data | Application, runtime, middleware, OS, servers, storage, networking, virtualization | End-users |
Understanding these three dimensions – Infrastructure, Platform, and Software – provides a clear framework for classifying the various services available in the cloud computing landscape.