John Meegan, Program Manager, Open Cloud Technologies, IBM
CSCC Steering Committee member
This post was originally published on the Thoughts on Cloud blog, August 22, 2016
One of the major benefits of platform as a service (PaaS) is its ability to improve a developer’s productivity. PaaS provides direct support for business agility by enabling rapid development with faster and more frequent delivery of functionality. It does this through continuous integration techniques and automatic application deployment. PaaS also enables developers to realize the cloud’s broader benefits.
- Scalability, including rapid allocation and deallocation of resources with a pay-as-you-use model (noting that the use of individual resources can vary greatly over the life cycle of an application)
- Reduced capital expenditure
- Reduced lead times with on-demand availability of resources
- Self-service with reduced administration costs
- Reduced skill requirements
- Support of team collaboration
- Ability to add new users quickly
The automation support one receives in a PaaS environment also provides productivity improvements and consistency in delivery. Along with automation is the ability for closer equivalence of the development, test and production environments, again improving consistency and reliability of delivery. This is one aspect of a DevOps/agile development approach that is ideal for a PaaS environment.
In addition, PaaS systems typically enable the sharing of resources across multiple development teams, avoiding the need for wasteful allocation of multiple assets of the same type in separate silos.
PaaS systems typically build in security and data-protection features, including resilience capabilities such as replication and backups. This can improve security and reduce the need for in-house security skills.
The provision of sophisticated, off-the-shelf capabilities as services enables the rapid creation and evolution of applications that address business requirements. This is especially important when considering mobile and web applications that include social and Internet of Things (IoT) capabilities.
Business applications typically require integration and involve aggregation of data and services from multiple existing systems. PaaS systems usually feature prebuilt integration and aggregation components to speed and simplify necessary development work.
PaaS systems can be used to build applications that are then offered to other customers and users as a software as a service (SaaS) offering. The requirements of SaaS applications, including scalability and the ability to handle multiple tenants, can usually be met by the cloud computing capabilities of a PaaS system.
In our next installment, we’ll provide guidance for acquiring and using PaaS offerings.
Interested in learning more about PaaS and getting a better picture of its implementation best practices? Check out my post on PaaS basics and download the Cloud Standards Customer Council’s “Practical Guide to Platform as a Service.”