What is Platform as a Service?

By Lisa Gecko

“Cloud computing” has dramatically changed how business applications are built and run. At its core, cloud computing eliminates the costs and complexity of evaluating, buying, configuring, and managing all the hardware and software needed for enterprise applications. Instead, these applications are delivered as a service over the Internet.

Cloud computing has evolved to include platforms for building and running custom applications, a model known as “platform as a service” (PaaS). PaaS applications are platforms to write and create your own software as a service (SaaS) solutions. One popular example of a PaaS is VMware’s Cloud Foundry. This software allows developers to quickly deploy Java Spring applications on your choice of cloud service providers, and is a full featured, open PaaS service that enables customers to build and deploy applications on multiple frameworks and multiple clouds.

With the in-house network model, building and running on-site applications has always been complex, expensive, and risky. Each application required hardware, an operating system, a database, middleware, Web servers, and other software. Once the tiers were installed, a team of developers had to navigate complicated programming technologies like J2EE and .NET. A team of network, database, and system management experts was needed to keep everything up and running. Inevitably, organizational growth would require an update to the application, which would then kick off a lengthy development, test, and redeployment cycle.

Large companies often needed expensive facilities to house their data centers. Extensive amounts of electricity were also needed to power the servers to keep them cool. Finally, a failover site was needed to mirror the data center so there was a backup in case of a disaster.

Just as Amazon.com, eBay, Google, iTunes, and YouTube made it possible to access new capabilities and new markets through a Web browser, PaaS offers a more effective and cost efficient model for application development and delivery.

With the PaaS model, cloud hosts provide all the infrastructure and services needed to develop applications over the Internet. It is delivered in a similar way to a utility like electricity or water. Users simply log on and use what they need without worrying about the complexity behind the scenes. And like a utility, PaaS is based on a usage based fee structure so users only pay for what they use.

PaaS is driving a new era of mass innovation. For the first time, developers around the world can access unlimited computing power. Now, anyone with an Internet connection can build powerful applications and easily deploy them to users wherever they’re located.

As you can see, PaaS has several advantages for developers. With PaaS, operating system features can be changed and upgraded frequently. And distributed development teams can work together on software development projects. Services can be obtained globally without concern for international boundaries. Initial and ongoing costs can be reduced by the use of infrastructure services from a single vendor rather than maintaining multiple hardware facilities that often perform redundant functions or run into incompatibility issues. And overall expenses can also be minimized by integrating programming development efforts.

On the flip side, PaaS offerings may require proprietary service interfaces or complex programming languages. And the flexibility of offerings may not meet the needs of some users whose requirements rapidly evolve. Organizations must carefully choose their cloud host based on capacity, scalability, service features, as well as pricing.