Cloud computing services are categorized depending on how they work and their primary structural systems. Similar to other considerable advancements in technology, many providers utilize the various categories of cloud computing services to deliver their products. The value brought about by different cloud providers is therefore based on the understanding that the services differ by their intrinsic components.
These components are realized in terms of service-oriented architecture which runs under the umbrella “everything as a service” with acronyms such as YaaS or PaaS or DaaS or just SaaS. Hence, this means that cloud computing providers grant their services according to different models, which are largely grouped into three categories namely Software as a Service (SaaS), Platform as a Service (PaaS) and Infrastructure as a Service (IaaS).
Because these models are offered in abstraction, they are usually described as layers in a stack – as a result of the wide range of services set up on top of each other depicted as cloud. In this article we look into the categories of cloud computing services as follows:
Software as a Service (SaaS)
SaaS applications are built for end-users and are primarily web-based since they are delivered over the web. SaaS is appropriately defined as “software that is deployed over the Internet.” Accordingly, the software or applications are designed for user utilization only when running on a cloud infrastructure and can be accessed from several user devices either through a program interface or a thin client interface like a web browser.
Users of the application lack control over the cloud infrastructure and all its related features such as operating systems, network, servers or storage. Users can only manage configuration settings. This simplifies support and maintenance as cloud users don’t have to install and run the applications on their devices.
SaaS applications have different pricing models suited for every package and for this reason; the prices are scalable and adjustable. As a result, organizations and businesses can cut down IT operational costs by outsourcing software and hardware maintenance and support to the SaaS solutions. Some of the essential characteristics of SaaS include;
- Web access to commercial software
- Software and application management from a central location
- Software delivered in a “one to many” model
- Users are not obligated to take charge of software upgrades and patches
- Application Programming Interfaces (APIs) makes it possible for integration between different pieces of software
SaaS is quickly growing as a method of delivering technology as it becomes common within almost every organization. It is provided to organizations either as a service on demand through a subscription, or at no charge but the provider generates revenue from user list sales or advertisements. Examples of SaaS application provisions areas include e-mail, customer service, financial management and expense management just to mention a few.
Platform as a Service (PaaS)
Platform as a Service (PaaS) is a set of services and tools created to make deploying and coding of software applications efficient and effective. PaaS strengthens the benefits brought about by SaaS applications, but through software development support. Platform as a Service is defined as a computing platform that makes it possible for easy and quick design of web applications without necessarily having to buy the infrastructure and software for maintaining the applications.
PaaS and SaaS are similar in their making with the only exception that, instead of being software delivered over the web, it is a platform for the design of software which is delivered over the web. PaaS providers create an ample environment where application developers can design or create software applications. The providers simply come up with an appropriate standards and toolkits with effective channels for app development and distribution.
Most of the PaaS models deliver computing platform that includes a web server, programming-language execution space, operating system and database. Consequently, application developers don’t have to buy and manage the underlying software and hardware layers for developing and running their software solutions. Once the applications are created, the underlying storage devices can automatically scale to suit the application demands.
Due to some recent advances in technology, there have been specialized PaaS applications aimed at delivering data and integrated solutions, namely dPaaS (Data Platform as a Service) and iPaaS (Integration Platform as a Service). Some of the PaaS providers include Google App Engine and Microsoft Azure. Similar to SaaS, PaaS users lack control over the cloud infrastructure and all its related features such as operating systems, network, servers or storage. Users can only manage configuration settings and application deployment. Some of the defining characteristics of PaaS include;
- Services to create, test, deploy, host and manage applications within the same integrated development space.
- Web based user interface (UI) design tools help to develop, alter, test and deploy different UI scenarios
- Has multi-tenant structural design where multiple concurrent users make use of the same development application
- Has built in scalability of deployed software including failover and load balancing
- Integration with databases and web services through universal standards
- Provides a foundation for the development team cooperation – some PaaS solutions incorporate communication and project planning tools
- Incorporated with tools for managing subscriptions and billings
Infrastructure as a Service (IaaS)
Infrastructure as a Service (IaaS) is the software and hardware that pulls all the resources together – operating systems, network, servers or storage. Therefore, IaaS is a method of delivering and supporting cloud computing infrastructure namely; operating systems, backups, network, servers and storage as an on-demand service. With IaaS, users buy datacenter space, software, network equipment and servers. Additional resources such as raw block storage, load balancers, virtual local area networks (VLANs), firewalls, software bundles and virtual machine disk-image are also offered.
In other words, IaaS the most basic cloud-service model that brings about machine and other IT infrastructure resource virtualization. The service can also support a huge number of virtual machines together with the ability to scale services up and down consistent with the user’s varying demands. There are certain underlying technologies used to maintain, secure and scale the services.
Infrastructure as a Service is offered in layers and is classified under Public, Private, or Hybrid infrastructure. Public cloud consists of shared resources and deployed on a self-service basis on the Internet. Private cloud emulates the same infrastructural deployment as public cloud, but done on a private network. A combination of the two creates the Hybrid cloud infrastructure. Some of the generally accepted characteristics of Infrastructure as a Service (IaaS) include;
- Resources and infrastructure are distributed as a service
- Allows for vibrant scaling
- Highly varies in cost, it has a utility pricing model
- In most cases, it includes numerous users on a single piece of hardware
Cloud computing is a terminology that cannot be ascribed to one particular thing, instead, it is an overall terminology that caters for a number of services from Infrastructure as a Service as the foundation, through Platform as a Service as a development tool and all the way to Software as a Service substituting on-premise applications. Hence, for organizations and enterprises expecting to join cloud computing, it is fundamental for them to have a handle on the various aspects of cloud computing and to evaluate their situation in order to determine the most appropriate solutions for their needs.