Platform-As-A-Service, Chapter 2
Platform-as-a-service — application development platforms running in clouds — are entering a new phase of evolution, and not a moment too soon. I've become interested in a new set of products I'm calling "adaptive PaaS" (for lack of a better term) that I think will make the benefits of cloud computing available to a lot more development shops. I'm doing a webinar on this topic May 20th with Appistry's Sam Charrington. I hope you can join the discussion.
As I described in my early reports on PaaS, these products include full development tooling, runtime services, and administration and management tools. While complete, most of these "full PaaS" products are best for new applications, and they incorporate much proprietary technology. Consequence: Many if not most clients are still saying "no" to PaaS for two reasons.
- Lock-in: PaaS products lock up your code in a single provider's environment.
- Poor fit: Too many PaaS products just aren't strong for core business applications, particularly for rehosting existing applications.
These limitations often prompt developers who want the flexibility of cloud computing to use IaaS platforms like Amazon EC2 instead of PaaS. With IaaS, developers can code in the language and frameworks they choose, reducing lock-in and ensuring a good platform-application fit. As a result, while we see both interest and adoption of software-as-a-service (full applications) and infrastructure-as-a-service (virtual servers, storage, and networks), PaaS is lagging in adoption.
Adaptive PaaS employs a different approach than full PaaS, seeking to adapt applications built in Java, .NET, and other languages to cloud infrastructure, and then manage those applications through change cycles. Adaptive PaaS removes development tools and frameworks from the PaaS stack, and provides only packaging, deployment, distribution management, workload management, and resource virtualization services. Developers use the tools and frameworks supported by the adaptive PaaS platform. Some of the products also provide billing and other application services that developers can call from within their applications.
I call this category "adaptive PaaS" to describe its primary function (adaptation).
- Adaptive PaaS adapts conventional application code to the elastic scaling and multitenancy of cloud architectures. Developers don't have to use special APIs or languages (like salesforce.com's Apex) to create apps for the cloud. They code as they always have.
- Adaptive PaaS adapts conventional servers and storage to provide "cloud" services by providing application, database, and/or file virtualization services. Some of the early adopters of adaptive PaaS use the software to implement internal clouds.
The vendors that I've talked with providing adaptive PaaS are:
- Appistry — provides the IQ product line for Java applications.
- Apprenda — provides the SaaSGrid for .NET applications.
- IBM — provides WebSphere Virtual Edition and WebSphere CloudBurst for WebSphere applications.
- Oracle — provides the beginnings of an adaptive PaaS with Oracle Virtual Assembly Builder and JRockit Virtual Edition for Oracle WebLogic applications.
- TIBCO — provides the Silver Suite for Java, .NET, C++, and other applications.
My introductory conversations with Appistry and Apprenda first started me thinking about "PaaS, Chapter 2." I had to account for the value these vendors provide to both internal development shops and ISVs.
Please join us on May 20th for the PaaS, Chapter 2 webinar.