While Infrastructure as a service (IaaS) rents you computing resources instead of purchasing capital, Platform as a service (PaaS) replaces not only capital ownership, but the attendant labor required to maintain an application with reasonable service qualities, whether business application or online game.
Implementing IaaS is the easier of the two. Technologists have been VPN’ing into corporate data centers for years, so Iaas may change IT finance behavior, but not so much development, engineering and operations.
PaaS offers potentially much larger benefits. It encapsulates not just the raw computing resources, but the complex (and expensive) software stack necessary for business application support and the engineering and operational labor that attends such applications.
Urquhart’s article identifies a key change in application design, however, that is required to fully implement PaaS:
Platforms implement the non-functional requirements I sometimes call “the -ilities”: operability, security, availability, extensibility, reliability, etc. PaaS automates operational integrity and make your applications the center of attention while increasing flexibility and reducing costs.
But PaaS is fully realized only for applications that are fully designed for a automated Platform interface. Today, PaaS benefits are reserved primarily for greenfield developers, who can design their applications from the first line of code to manage operational integrity.
For those in IT looking to migrate to PaaS, either your application has already virtualized its platform interface, or you and/or your vendors have some work to do first. And every step of the way from source code to deployed environments must be automated for continuous delivery, or your PaaS initiative will come up short.
We see this obstacle as the principal impediment to cloud migration by our customers — and the next frontier for software application and solution providers. Let’s face it: not many application designers are good at addressing the “-ilities”, because there were always those guys down the hall who handled such problems. What if there is no longer someone monitoring your app server? What does that mean to the way you code? The way you detect and handle faults and errors?
Our message to application designers targeting PaaS? You own all the “-ilities” now, and even the simplest applications need to anticipate the challenges of a fully automated Platform. Just one more challenge of the “DevOps” convergence.
Have any comments or questions? Feel free to Contact Us. We’d love to hear from you!