Realize the potential of the cloud with Aptaria.

Sunday, May 3, 2009

SaaS versus PaaS versus IaaS; Which is right for your organization

There is a healthy debate ongoing within the Cloud Computing community: Is SaaS, PaaS or IaaS best for your organization. Aptaria is pleased to offer its insight as enterprises re-think how computing services are delivered to their user base.

As enterprises of all sizes begin to realize the benefits of On-Demand computing, they are discovering that one-size-does-Not-fit-all. At Aptaria, we like to think of these three Cloud technologies as three points on a Computing Delivery Model Continuum (tm). On one side is the "Roll-Your-Own" datacenter where all computing services are delivered through hardware owned and operated by the enterprise itself. On the other end is Software-as-a-Service (SaaS), where the organization subscribes to services for all of its computing needs, thus avoiding the capital outlay for hardware and the highly skilled resources to maintain it. All things being equal, Aptaria believes the options on the right deliver computing services at a lower cost than those on the left.


Between these two extremes you'll find other options, some new to enterprise computing, some less so. For a number of years some large enterprises have leveraged Outsourced / Co-Location facilities in an attempt to lower costs. Virtual server technology (either on-premise or at an out-sourced datacenter) has also become popular in recent years as a means to further reduce hardware and administration costs.

New to enterprise computing scene are Cloud Computing offerings Infrastructure-as-a-Service (IaaS) and Platform-as-a-Service (PaaS). These new options offer the promise to further lessen the costs of delivering IT capabilities.

IaaS defined
IaaS is a computing model whereby computing power in the form of virtual servers are available to customers on a massive scale. Enterprises leverage this computing power through the Internet (The Cloud). In this model, enterprises develop their own machine images (such as Amazon Web Services Elastic Compute Cloud -EC2) and instantiate and manage their instances for themselves. Amazon and its many partners are continually enhancing these capabilities and making it easier to manage these resources.

IaaS is attractive to many enterprises because they are able to leverage much of their existing expertise in general purpose programming languages such as Java or .Net. On-premise applications written in these languages can be modified (sometimes without much effort) to work on an IaaS service, providing significant cost benefits.

PaaS defined
PaaS is the newest member of the continuum. In this model applications are built from the ground-up to leverage this platform. PaaS is distinct from IaaS in that the computing unit (the server) is abstracted. The platform handles instantiation of servers for you, allowing the application developer to concentrate on building business logic. This added layer of abstraction is considered a big advantage in developer productivity.

Salesforce.com's force.com platform is the most popular PaaS available today. This platform provides a robust environment for the creation of any general purpose browser-based application. Numerous enterprises have built their entire business on force.com with excellent results.

Recently Google's App engine has announced Java language support (in addition to its original Python support). This enhancement makes Google's App engine a viable option for organizations looking to leverage the Java skills present in their enterprises, while realizing the benefits of custom application development in the Cloud.

SaaS defined
Although SaaS has been around for some years now (gmail for example), a definition in this context is helpful. Computing services delivered as SaaS are unique in that a specific application or function has been developed and sold to an enterprise on a (usually) monthly basis. CRM and HR related applications are frequently delivered through this model, but there are entrants in every vertical. SaaS vendors usually provide a means to customize the functionality of the packaged application so that enterprises can seamlessly integrate it into their business processes. Salesforce.com, for example, offers its Apex programming language, a Java like OO language, and an extensive API to build enterprise-class mash-up applications.

Aptaria places IaaS to the right of all on-premise, CoLo and virtual options because this technology frees enterprises from not only the cost of acquiring, installing and maintaining hardware and software, because the economies of scale inherent in this model allow for additional savings. However, the costs associated with maintaining your own machine images limits the costs savings possible through this option.

To the right of IaaS is Paas. PaaS offers additional value and cost savings by abstracting the machine instances, freeing the application developer to concentrate on the needs of the business, not the complexities inherent in computing infrastructure.

SaaS lands to the far right on the continuum. This reflects the fact that Saas offerings are packaged applications that, for many organizations, can be used out-of-the-box with limited customizations.

Aptaria believes that the Computing Delivery Model Continuum(tm) can help the industry understand the ever increasing computing options before them and can help identify which model is best suited to their organizations needs and strengths.