Enough PaaS vs. IaaS: The cloud is really about Services as a Platform

31 Comments

For the last few weeks, an interesting and timely debate has been brewing among the technology press and various technology vendors and users about whether or not platform as a service, or PaaS, will survive as an independent cloud computing service category.

NetworkWorld’s Brandon Butler asked if “the PaaS market is dying as we know it”. Long-time cloud bloggers David Linthicum and Reuven Cohen concurred with Butler’s theory that PaaS was being absorbed into the IaaS and SaaS categories. This was met with counterarguments from EMC’s JP Morgenthal and Red Hat’s Krishnan Subramanian that PaaS is indeed a key service catagory.

I think this discussion is worth commenting on largely because it highlights the distinction between what services exist in the cloud and how those services are acquired. This is a common confusion, in part because the distinction is occasionally detrimental to various vendors’ attempts to differentiate themselves, and in part because the cloud services market is really quite immature when it comes to platform services for developers. (I’m not talking about the platforms themselves, but the market of those providing those platforms as services.)

First, let’s review what is meant by “platform as a service.” The years-old definition provided by the U.S. National Institute of Standards and Technology is:

The capability provided to the consumer is to deploy onto the cloud infrastructure consumer-created or acquired applications created using programming languages, libraries, services, and tools supported by the provider. The consumer does not manage or control the underlying cloud infrastructure including network, servers, operating systems, or storage, but has control over the deployed applications and possibly configuration settings for the application-hosting environment.

Thus, to be considered a platform service, the service has to hide much of the vagrancies of coding for operations. The service provides the libraries, services and tools needed to build an application that (a) runs, and (b) deploys scales, and recovers with a minimum of attention on the part of the developer.

Blurring the lines

Two things have happened since that definition was first put forth. The first is that IaaS providers, especially Amazon Web Services and Microsoft, have delivered services that blur the lines between platform and infrastructure. In Amazon’s case, it evolved a set of a services from the infrastructure up to include middleware services (RDS and Elastic Beanstalk, for instance), as well as deployment and ongoing operations services such as Autoscaling and Opsworks.

Microsoft, on the other hand, worked from the platform functionality down toward the infrastructure, adding “virtual machines” to its existing platform service portfolio. Why would it do this? Because as good as the Azure platform services may be at supporting generalized application development, developers often found they wanted to deploy their own software stacks that bypassed the platform.

This is the crux of the problem with claiming that PaaS, IaaS or SaaS will be the “winning mode.” From a developer’s perspective, it just doesn’t matter. Development is a collection of activities, some of which can benefit from automation of highly routine tasks, and others require extreme flexibility in how software is built, deployed and operated. You can’t pick one model over the other except in the most extreme edge cases.

Structure 2010: Yousef Khalidi – Distinguished Engineer, Windows Azure, Microsoft; Lew Moorman – President, Cloud and CSO, Rackspace Hosting; Mike Piech – Senior Director, Product Marketing, Oracle; Byron Sebastian – CEO, Heroku; Tien Tzuo – CEO, Zuora

Then Heroku CEO Byron Sebastian talks PaaS (along with executives from Zuora, Oracle, Rackspace and Microsoft) at Structure 2010. Has the term come and gone already? (c) Pinar Ozger

SaaP — Services as a Platform

This is why I prefer the term “Services as a Platform,” once posited by Cisco’s Lew Tucker (but, according to Lew, having originated from a source long forgotten) as the “winning cloud model.”

By focusing on the fact that cloud is about the consumption (and delivery) of services to be consumed by those that need them, and that development in the cloud is largely centered on how those services are composed into solutions to a wide range of problems, we cover the entire blurry distinction between IaaS, PaaS and SaaS. We also create a term that’s basically synonymous with cloud computing itself — from a developers perspective — and is thus just as useless in describing anything concrete.

Let’s not get hung up on how “important” PaaS is relative to IaaS or SaaS. Some platform tools, such as Cloud Foundry or OpenShift, will be important for creating common interfaces for application development. Some platform services, such as Salesforce.com’s Heroku or Microsoft’s Azure, will be successful as parts of larger cloud service portfolios. But developers won’t bond to one and only one model for long. The composability of the overall cloud market will drive them to explore other models.

And this, ultimately, is a great thing for the future of software innovation.

What do you think? Is it important to choose a winning model, and is PaaS that model? Is “Services as a Platform” a better way to think about software development in the cloud? Let me know in the comments below, or on Twitter, where I am @jamesurquhart.

31 Comments

Carlos Frederico Jeunon

I cannot but agree with Chris Saunders.

Moreover, NIST’s [IPS]aaS IMO serves as features-and-complexity points of reference for Cloud services, each one with its distinct vendor lock-in risk, being SaaS the most strict of the triad. In the latter, for instance, take an e-mail service (SaaS) where one could optionally write a set of complex scripts and make use of a database interface to implement filtering and workflow (PaaS). It’s a shade of gray and proprietary just like Excel with add-ins, does it really need a new designation?

OTOH, exchanging eventual proprietary features for mandatory proprietary functions suggests that “SaaP” means “Cloud heavily seasoned with vendor lock-in”. And forget about the mission.

As Cloud computing gets into everyone’s mouth, it’s inevitable for it to fall prey to the everlasting “feature vs. function vs. mission” plague or, to use Cloud jargon, “BaaS”. ;-)

John Morada

In agreement with Chris, I rarely see my clients asking to move to the Cloud just because they have nothing better to do. There is a compelling business need (e.g. growth, market expansion, etc.) to which this technology offers an efficient answer, currently. A corollary to this is the blurring lines between business and IT.

A corollary question to Chris’ last sentence: is the blurring of business and IT purchasing decisions causing the blurring of the XaaS stack?

sansha

I will prefer it to be called as SERVICE as a UTILITY – and then who cares, how or where it is being hosted or platformed, as long as security is not compromised. Although at present the Word Security is a misnomer!

Bill Rafferty

I have been working with cloud technologies for many years, most of which were re-defined as the platforms looked to either differentiate or quite blatantly, jumped on the new in vogue definition.

Cloud gets beaten up as being too ambiguous or lacking clarity. This by it’s first iteration was the exact goal, originally used by telephone providers when describing overly complex connectivity models that don’t need definition as they just provide the service.

‘Services as a Platform’ just looks like we have come full circle to group XaaS definitions into something wide in definition with goal orientation focus that just provides the service. I don’t see value in creating a new ambiguous definition that was originally met with ‘cloud’.

So to debate which acronym will ultimately ‘win’ (I hate that measure regardless) is mute, the future of software innovation will always evolve and I will stick with cloud in whatever model works for the problem at hand, definitions can be left to the tech train spotters peddling a new word for an old paradigm.

the cloud is dead, long live the cloud.

Kenny

People will use what they need, and those needs are different from person to person.
Common sense.

writeameer

The NIST definitions are dated and were early broadstroke attempts at describing progressions in IT and serve well at a very high level.

If history is anything to go by, there is never a one size fits all solution. These “XaaS” solutions will likely evolve and grow to better complement each other improving interplay and blurring the lines even further. The “XaaS” acronyms will probably stop making sense in the not to distant future. The general trend will be just making technology easier to consume.

Aside from furthering corporate agendas, there is little sense is using these early definitions as a foundation to predict the future.

Ron Segal

James, I concur completely with your thinking on ‘service as a platform’ being where we should be heading. For me this is moving towards a software revolutionary equivalent of the 3D printer. I’m just a little cynical though about how long it could take to get there, given the many seemingly obvious, technological revolutionary promises that have never really materialised, or in a much weaker form than envisaged, such as ubiquitous OO components. Best wishes, Ron.

chipchilders

James,

The most important aspect of your post here was the conclusion you reached: don’t worry about the terms, just focus on offering / consuming *services*. The more we think about how services can be modular yet composable, the more diversity in the application architectures we will see. At CumuLogic we are seeing interest in modular services from both sides of the IaaS / PaaS divide. Customers and partners might start out thinking about how to extend their IaaS with higher value services, or they might come at the discussion with the goal of using a PaaS with more modular services underpinning their applications. Both are right.

Bob Sochacki

Who cares what you call it, define and make sure the organization know what it means from Sales to Delivery. Say what you do and do what you say and prove it!

It is a service and you need to make sure you define the service and the customer knows their responsibility and yours…

Most “service” companies, still have “PRODUCT” marketing departments. Shouldn’t they be called “Service Marketing” since their is really no product? They have Customer Success Departments, but shouldn’t that be a culture and not a department?

Telmo Silva

Echoing Dr. Andrés García-Camino and Chris’ comments, the “right” stack or stacks depends on the objective and architecture of what you are attempting to do by using cloud services (of any kind).

At first seeing the heading of this article I thought “here we go again with some more web 2.0 marketing crap” but in the end I think the article is stating exactly that the focus should not be on I/P/S but on what services the provider has to offer to manage the infrastructure, platform or software.

If you are moving an existing application to the cloud, building an ecommerce or public web site, or building a multi-tenant SaaS application will greatly change the needs and level of control that the implementation team will require of the cloud provider.

Mike Kennedy

Services as a Platform has my vote of the concepts described. Ultimately, this is the value of the cloud and covers the bases for developers.

Chris Saunders

Reblogged this on Capacitive Flux and commented:
The “XaaS is dead, long live YaaS” commentary is becoming tiresome. IT is complex in the abstract, and is made even more complex by organizational structures, political currents and tribal knowledge. Each business seeks to extract value from their technology investments in a way that works for them.

Labels are useful when they convey meaning efficiently, but in my experience every customer and organization has built their own taxonomy around the higher order concepts. I have spoken to folks that have a set of vSphere clusters and a bunch of manual processes to deploy that calls it “cloud” and yet other folks that have been doing self-service, automated lifecycle management for a decade and labelled it a “cloud”.

I try and go back to the basics when I hear “PaaS” or “IaaS” in any conversation – what is it you’re trying to accomplish? What does your leadership team care about in that mission? What does success look like for you? And then I move into the conversation that is – what does “PaaS” mean to you?

IT is complex, organizations are even more complicated. We should try our best to make this as simple as possible by having conversations about business value instead of silly industry jargon with no common understanding.

Mark

“We” tried by saying “cloud”. It didn’t work. “We” tried saying IaaS and PaaS and SaaS. It didn’t work.

Having a common understand of what it is is important. Until there is – there will not be understanding of the value.

Whatever we should call it – it IS about business value:
– reducing time from “start” to users using the system
– reducing waste
– reducing one-offs
– focus on core competencies
– etc.
In other words “Lean IT”. Argh I think i just used another one of those terms.
http://blogs.gartner.com/mark_mcdonald/2010/06/25/a-model-for-the-lean-it-organization/

Chris Saunders

Most organizations are distracted from the real discussion by semantics. Using NIST definitions is a good foundation, but most folks have either built their own definition of XaaS (where X = I, P, S) or have adopted a definition purpose built to suit the sales strategy of a close partner.

I agree with the sentiment here – ultimately these are all tools to enable the business to extract value from the latest innovations in technology. Technologists and pundits alike would do well to remember that. Very few businesses deploy technology for the sake of technology. Organizations will define their own IT ontology, and move forward with driving value out of their technology investments based on those belief structures.

Claude Rallins

‘Service as a Platform’ does not distinguish Cloud from other Service Trade platforms, like Hospitality, so it too is “useless in describing anything concrete”. Why use a term that is so broad some Cloud fuzzy folks might wonder if sleeping was a Cloud Platform service?

URL as a Service (URLaaS) defines Cloud, IMO. The Cloud URL UI distinguishes it from the Software interface. The mission of Cloud is one of a “Universal Resource Locator”.

And, as Cloud evolves in a sensor driven, IP networked, Internet of Everything environment the URL, with (Cloud driven) data visualizations from the sensors, becomes the public interface for Cloud services.

Dr. Andrés García-Camino, PhD in AI

IMHO, it depends on the point of view (POV) (i.e. biased, e.g. Client-Server; in the terms of Markets, Service Provider-User, etc).

PaaS, SaaS, IaaS, etc are defined in a Provider POV to sell services.
SaaP would be a more User POV that would integrate services from different Providers into an User Solution Platform that luckily may operate in a peer-to-peer fashion with other SaaP’s Platforms (B2B turned into C2C) in other to create an Emergent P2P Grid-Cloud in the Users side of the Cloud.

IMHO, Cloud Computing (B2C) is merely a distraction to diverge us from how profitable peer-to-peer (C2C) is for Users (without intermediate vendors and rules that raise costs for the User in favour to Business) if it is used for the right legal purposes, not just illegal sharing as it was created at the beginning.

Control World Cryptography and you’ll control the World.

Dharshan

I am not sure I agree with the assertions. IaaS, Paas & SaaS are abstractions representing different layers of the software stack. Customers will gravitate to the one that solves their current needs. So I don’t think its one against the other – all three layers will do great as more customers move their application stack to the cloud.

GP

James – thanks for the article. As the cloud novelty is wearing off, the focus is shifting to business service platforms – the ability to rapidly develop and deploy applications. Being in the middle of several large IaaS projects, the primary discussion is around delivering a seamless business platform experience that leverages an increasing set of common and enterprise wide services around identity management, operations management, data and application services etc. There is some confusion around what exactly PaaS means – some people automatically associate it with technologies like OpenShift, CloudFoundry etc. but others especially business users and most IT managers have a broader interpretation.

Mark

GP. Most IT managers and business users don’t get IaaS let alone PaaS. What is your “interpretation” of PaaS?

I hope the “cloud” novelty is wearing off. Maybe some of us will finally be able to use “cloud” technologies.

openopsiq

Mark – My interpretation based on the environment I have been working in for the two years is a IaaS++ construct. This means the ability to deliver additional layers of capabilities or features built on top of an off-the-shelf-IAAS and delivered with a unit of service pricing. The additional services could include managed services such as vulnerability scanning, patching, continuous monitoring, restore/backups etc. The user just has to “drop-in” their application and are able to consume cloud services without the need for worrying about the management of the infrastructure.

Abdeslam Lahlou

I totally agree, we share the same point of view, If a cloud computing technology provider wants a better penetration to markets, he has to provide all services related to cloud computing, and I think IBM will be the best cloud computing solutions provider as we can see its intentions to develop more the concept of opensource platforms. Even the concept of hybrid cloud computing could help to bring better Paltforms as a service.

Neil Mackenzie

— Because as good as the Azure platform services may be at supporting generalized application development, developers often found they wanted to deploy their own software stacks that bypassed the platform.

I don’t think this is quite right. The stateless nature of Windows Azure PaaS cloud services is more suited to green-field development where statelessness can be designed in ab initio. While some existing workloads can be shoe horned into the required statelessness there are many workloads for which the effort swamps the value. Microsoft’s creation of Windows Azure Virtual Machines is a reflection of that reality, in that it is an environment that existing workloads can be forklift migrated into.

However, Microsoft also went in the other direction at the same time and created Windows Azure Web Sites an even higher-level PaaS solution than the original cloud services. While some developers may want to deploy their own software stacks (in an operations be damned kind of way) many developers seem thrilled at the development flexibility and deployment ease provided by Windows Azure Web Sites. I see a lot more excitement from developers moving in that direction than from people faced with using System Center, Chef or Puppet to manage IaaS deployments.

Mark

Af, i get your point. Partially because of the term – it creates the wrong concepts. for instance their is no “the cloud”. It is not a thing or place. It is more of a concept and a set of characteristics.

Ragu Siva

I believe the vendor’s success stories and power play will determine X-as-a-Service survival. So to put it in simple terms. SaaS leaders Office 365 and SForce will keep SAAS light on for the future. AWS and Azure Services will drive the IAAS future. PAAS will become a PASS and renamed it to be as IAAS+

Comments are closed.