Platform as a Service (PaaS) may be defined simply as a computing platform that allows the creation of applications quickly and easily and without the complexity of buying and maintaining software and infrastructure.
PaaS lets organizations achieve the fastest time to market with the lowest cost of ownership and management.
Examples of PaaS include Amazon EC2, Google App Engine, Microsoft Azure, Oracle Public Cloud and Force.com.
PaaS Key Benefits
Organizations using PaaS techniques have reported operational savings of up to 50% compared to having individual project teams manage their own silo’ed technology stacks. The cost savings most commonly come from standardized and consolidated resources (e.g. servers) as well as elimination of redundant work across teams.
Fewer database elements (servers, storage, network components) all mean reduced capital expenditures. Fewer elements also means reduced operating expenditures because of the efficiencies gained in managing a consolidated database environment rather than a multitude of silo’d systems each with their own database.
Organizations are able to more rapidly deploy environments for development, testing and production. In some cases, the provisioning, configuration, and integration of a platform can take up the majority of an application production schedule. PaaS lets applications get into the hands of testers and end-users nearly as fast as they can be developed. Also, when application workloads fluctuate, PaaS scales out and in to better match supply with demand.
Fewer database elements coupled with standardization of operating systems, servers, database versions, and configurations makes for an easier to manage and more reliable environment.
PaaS is especially useful in any situation where multiple developers will be working on a development project or where other external parties need to interact with the development process. PaaS is useful where developers wish to automate testing and deployment services.
PaaS compliments agile software development as it eases the difficulties around rapid development and iteration of software.
PaaS may be more completely described as a standardized, shared and elastically scalable application development and deployment platform delivered as a service. The platform typically includes database and middleware, as well as development, management, security and integration capabilities, all delivered as a service. Sometimes referred to as "Shared Services", PaaS challenges the notion that every application requires a unique technology stack unto itself and that businesses can't free themselves of rigid deployment scenarios for their packaged and custom applications.
PaaS enables organizations to consolidate existing applications on a shared, common architecture, as well as build new applications that leverage the shared services provided by the platform.
PaaS is an evolutionary approach to delivering middleware and database capacity needed to host applications. When fully implemented, PaaS delivers:
• Rapid (near real-time) capacity provisioning against physical servers
• Highly optimized application to server ratios and the ability to turn off spare capacity
• Cross-domain monitoring and proactive alerting
• Coarse or fine grained metering facilities to establish usage parameters for PaaS tenants
Most organizations will see the cost reduction and increase in agility once they start implementing PaaS solutions. Organizations that will benefit the most often have one or more of the following characteristics:
• Application Time to Market is a key pressure for development teams. The ability to quickly move an application from concept to production
• Considerable over-provisioned infrastructure. Data center consolidation efforts can be the catalyst to begin to adopt PaaS techniques
• Difficulty aligning application utilization with stakeholders. Across a large portfolio, PaaS will provide better metrics support for usage and chargeback
• High operational costs. The net reduction of administrators for a set of applications has a measurable impact on the bottom line. PaaS is an attractive option when it is cheaper to throw bodies at the problem
• High degree of custom craftsmanship per application environment. When the loss of a single administrator has catastrophic consequences for application maintenance, it may be time to consider PaaS. PaaS encourages repeatable, formalized processes for administration using centralized management tools
Once the PaaS platform is built to pool database and application deployment resources, there are additional, value-added, shared services that can be shared by multiple applications. These services are often required by multiple lines of businesses, span multiple business applications, and have high performance and availability requirements.
Additional examples of these services include structured and unstructured content services:
• Shared services for storing and managing structured and unstructured content
• Shared centralized integration backbone services to integrate applications. The central integration platform can support several different types of integrations, including integration among applications deployed within an enterprise; integration with partner applications; and integration with applications deployed on external cloud
• Shared business process design and run time services, where business users can collaborate online to design and optimize business processes that span multiple groups. When complete, these processes run on a central IT platform