Developer Exchange Blog
PaaS - the future of enterprise service infrastructure
There is a change coming for traditional enterprise service architecture and deployment environments. Some continue to believe that cloud computing is mosty hype and means little more than providing software via the Internet by hosting services at 3rd party data centers. That's not the case. Continuing to ignore this coming wave of change will be perilous.
Industry experts expect cloud based infrastructure, and Platform as a Service (PaaS) specifically, to be a long-term, transformational trend in the software industry. A new wave. Perhaps, a tsunami.
While PaaS is the expected direction, enabling products and services are still emerging. Investing time and energy at this point is wise, but it must be done with a clear understanding that the landscape is changing. Investments at this stage should be in understanding, prototyping and laying the foundation for a move in this direction over the next 2 to 3 years.
The Platform as a Service realm of cloud computing is analogous to application middleware. Its purpose is to provide the environment and features upon which solutions can be built. In this case, we're talking about solutions that exhibit cloudiness.
Many might ask, what in the world does "cloudiness" mean? It means exhibiting the properties of the cloud. That means very specific things, such as elasticity (an ability to grow and contract in size and processing power on-the-fly), robustness (not having a single point of failure), scalability (having an ability to increase in size dramatically), redundancy (automatically having replication in both function and in geographic location) and more.
Providing the middleware environment for applications requires providing numerous features. Some, as mentioned above, focus on the features of the runtime environment. Others focus on the development, operations, change management and governance of the environment.
Of course, one needs powerful databases and one needs to expose web services. One also needs support for the development and testing of solutions in the PaaS environment. This can include features for monitoring activity and performance, instrumentation about resource and feature usage, logging, and so on.
Each vendor's offering approaches PaaS differently. Most major vendors have announced plans for some type of PaaS offering, including Microsoft, IBM, Oracle, Red Hat, SAP and VMWare. Due to varying approaches to PaaS, the PaaS market is further subdivided into additional types of services, such as:
- aPaaS - application platform as a service
- dbPaaS - database platform as a service
- iPaaS - integration platform as a service
- bpmPaaS - business process management platform as a service
Ultimately, PaaS is desirable because it's the next step in the evolution of how applications are built. Each new evolution pushes us further and further from physical hardware and its accompanying hard constraints. Over the last decade or two, we've seen how helpful it has been to have a virtual machine as the underpinning of our programming environment (e.g., a Java VM, a Microsoft CLR). Even more recently, we've seen hardware virtualization take this a step further. Taking the next step requires a new environment and new service abstractions about which to program. Exactly which PaaS flavor will have value, and when, will depend on your own needs. Is now the time to propose a PaaS based solution? Maybe; maybe not. However, it's definitely something we should all be following very closely, while looking for good opportunities to reap benefits from this up and coming technological wave while mitigating the risks of early adoption.
- Pace Layering allows for different paces of change
- Portals and the Evolving User Experience - Part 1