PaaS is a popular term to describe Platform as a Service or application development and deployment functionality available as a service. A complete PaaS delivers the entire web application lifecycle as a service, on a single platform. Development and delivery are the two main phases of the web application lifecycle.
Within the development phase, five important features must exist to be considered a complete PaaS:
Within a PaaS, the integrated development environment (IDE) is built specifically for the development of applications that leverage and present data via leading-edge user experiences. A PaaS joins the IDE with both testing and hosting environments. Complete PaaS solutions include comprehensive development, debugging and testing tools presented in a familiar IDE.
End-users are accustomed to ever increasing more interactivity and functionality in web applications. Making rich interactivity an intrinsic part of the PaaS frees developers from the challenge of pushing in interactivity after adding the functionality. Complete PaaS offerings deliver this interactivity with portability between browser clients so end-users may use the browser of their choice without browser-specific programming by the app developer.
Tremendous value can be derived in the PaaS through the connection of multiple types and sources of data. PaaS enables connectivity to multiple data sources while abstracting the tedious task of writing the glue code to bring the sources together. Applications need to leverage existing software investments in databases, and internal or external web services, requiring that the PaaS offer a wide variety of connectivity options. Many applications require external services with "live" data from multiple sources so automatically updated connections between applications and services must be the standard without requiring additional development work.
A complete PaaS supports both formal and on-demand collaboration throughout the software lifecycle while maintaining security of source code and intellectual property. The ability to share, and obtain reusable source code and software components can increase productivity and reduce risk and costs.
As evidenced in the open source community, great progress can be seen through the gathering of individuals working to solve similar problems. PaaS enables the sharing of application code and experience by dropping communication barriers and providing the ability for the community to engage with each other.
Within the delivery phase four important features must exist to be considered a complete PaaS.
With a PaaS, once an application is ready for deployment it can be made instantly available to end-users without building or maintaining hardware and software, managing bandwidth, and QOS contracts. Applications hosted on a PaaS can reach any number of users from anyplace with required speed, responsiveness and security.
The PaaS controls deployment management. As applications incrementally improve and are enhanced, versions can be easily rolled out to end-users from the PaaS. With a straight-forward management console, businesses can easily control which version of an application is available without disrupting the access for end-users.
Scalability, reliability and security should be built-in to a PaaS without requiring development, configuration or additional cost. The ability of an application to automatically partition state and data to service an arbitrary number of users must be assumed without additional work by the developer. Applications delivered on a PaaS:
- Automatically scale
- Allow the secure exchange of confidential information
- Securely execute of monetary transactions
Developers are free to build applications with knowledge that the security of customer data, network traffic, source code and server hardware is maintained automatically by the PaaS throughout application development and delivery.
PaaS provides comprehensive instrumentation of application and user activity to provide greater insight into application usage and effect improvements. With instrumentation, organizations can see exactly how users are using the application, the type of performance they are experiencing and any application crashes.
Bungee Connect is a complete PaaS. The Bungee Connect PaaS delivers the entire application lifecycle, including all the environments, tools and systems required to develop, deploy and host web applications. Learn more.