Unlike the fixed functions offered by SaaS, Platform as a Service (PaaS) provides a software platform on which users can build their own applications and host them on the PaaS provider’s infrastructure. The software platform is used as a development framework to build, debug, and deploy applications. It often provides middleware-style services such as database and component services for use by applications. PaaS is a true cloud model in that applications do not need to address the scalability of the underlying platform (hardware and software). When enterprises write their applications to run over the PaaS provider’s software platform, the elasticity and scalability are guaranteed transparently by the PaaS platform.
The platforms offered by PaaS vendors like Google (with its App-Engine) or Force.com (the PaaS offering from Salesforce.com) require the applications to follow their own application programming interface (API) and be written in a specific language. This situation is likely to change but is a cause for concern about lock-in. Also, it is not easy to migrate existing applications to a PaaS environment. Consequently, PaaS sees the most success with new applications being developed specifically for the cloud. Monitoring application-delivery performance is the responsibility of the PaaS provider. Pricing for PaaS can be on a per-application developer license and on a hosted-seats basis. Note that PaaS has a greater degree of user control than SaaS.
PaaS offers many benefits to the enterprise:
Developers are focused on application development, not infrastructure management.
The application is the unit of deployment and management, while the infrastructure is transparent.
The development team’s requirements for app tools and the operations team’s requirements for app management are satisfied.
The bottleneck in provisioning and deployment is eliminated.
This service codifies the relationship between developers, IT, and globally distributed clouds.