Platform-as-a-service (PaaS) is one of the three main categories of cloud computing service. The other two are Infrastructure-as-a-service (IaaS), which form the base layer below PaaS and Software-as-a-service (SaaS) which rest on the top of PaaS layer.
An application component involves elements like hardware, server, operating system, database, middleware, software and an application that is build, maintained and run on the top.
The application part is referred as software-as-a-service which is typically designed for end users. IaaS is the hardware and software that forms the base – support the whole system like server, storage and networks. The middle layer which is basically a platform (could be tools, software, middleware etc) which sits on Infrastructure and are used for coding and deploying the applications are called as PaaS. Hence, PaaS can be defined as a platform for the creation of application or software delivered over the web on demand.
Exhibit 1: PaaS
Top 10 characteristics of PaaS
- Each platform component is provided as a service. For ex: middleware –as-a -service , platform –as-a -service, messaging –as-a -service, integration –as-a –service, communication-as-a-service
- Provides services required to support the complete life cycle of building and delivering web applications and services on the internet.
- Provides services to deploy, test, host and maintain application in the same integrated development environment (IDE).
- Service provisioning includes multiple users concurrently using the same integrated application development environment
- Being a cloud offering, it follows cloud service model – pay per use / pay per go pricing model, where there is no need to buy the software, middleware or full year license; its pay on the basis of usage.
- PaaS reduces TCO (Total Cost of Ownership), there is no need to buy all the system, software, platforms, tools and kits needed to build, run and deploy the application. Users can only rent them for the period for which services will be used. It changes the cost structure from Capital expense (Capex) to Opex (Operational expense) for an enterprise.
- Built in scalability and elasticity to provide same efficiency and experience irrespective of load and usage
- PaaS is a perfect match for agile software development methodologies. An agile software development methodology is based on iterative and incremental development which may require iterations in need of software and other middleware platforms with progress and hence PaaS is the right match for agile application development methodology.
- PaaS helps in the rapid construction of applications in the cloud by providing the necessary elements such as workflow amenities that are essential to the creation of a business application.
- With PaaS, operating system features can be changed and upgraded frequently. Geographically distributed development teams can work together on software development projects.
The pricing depends on the usage and the platform component. For example: A PaaS platform (per login) can have a list price of USD2-8 per login with a maximum of 3-6 logins per user per month, and for more frequent users the unlimited pricing plan of USD30-80 per user per month.
Leading PaaS companies:
Some of the top rated and popular PaaS companies are:
- Google App Engine
- Microsoft Azure Services
- Force.com platform
- Fujitsu Messaging as a Service (MaaS)
- cloudMQ™ – MaaS
- Amazon SQS
- OpSource Connect
- Mule OnDemand
- Heroku PaaS
- Cast iron (IBM)
- Wolf PaaS