IaaS, PaaS, SaaS… Most probably you are familiar with this abbreviations. These are fundamental layers in cloud computing these days. IaaS stands for Infrastructure as a service. PaaS stands for Platform as a Service and, finally, SaaS stands for Software as a Service. These concepts were around for some time. SaaS is probably one of the earliest and it became a delivery model for many software providers these days. Salesforce.com, Google Apps, Workday – this is a very short list of notable SaaS providers. On the opposite side, IaaS offers virtual computing power – virtual machines, servers, storage, networks, etc. Amazon delivered the most reliable IaaS infrastructure today – AWS. Other competitors are scratching their heads these days trying to understand how to compete with that.
Let me get back to engineering, manufacturing, PDM and PLM. IaaS and specifically AWS became a mainstream for almost everybody. It is hard to find development organization that is not using AWS for some purposes. Massive amount of cloud applications today are dependent on IaaS cloud infrastructure. Some of PLM vendors decided to to leverage the power of IaaS to turn their existing solutions into cloud ones. I covered this topic couple of months ago here – Cloud PLM and IaaS Option.
The part of SaaS is clear as well. We can see a growing number of cloud (SaaS) applications. Notable vendors in PLM are Arena Solutions, Autodesk and some others. The topic I want to discuss today is PaaS. According to PaaS wikipedia definition
Platform as a service (PaaS) is a category of cloud computing services that provides a computing platform and a solution stack as a service. Along with software as a service (SaaS) and infrastructure as a service (IaaS), it is a service model of cloud computing. In this model, the consumer creates the software using tools and/or libraries from the provider. The consumer also controls software deployment and configuration settings. The provider provides the networks, servers, storage and other services. PaaS offerings facilitate the deployment of applications without the cost and complexity of buying and managing the underlying hardware and software and provisioning hosting capabilities.
Here are few examples of notable PaaS providers – Heroku, Windows Azure, Google App Engine, and few others. If I think back to the idea of turning you PDM/PLM application to a platform in a conventional (pre- PaaS world), than I will think about usage of PLM as a platform to develop variety of applications and implementations. If you remember history of PDM /PLM platforms, you probably agree with me that it took a significant effort and time to leading PLM vendors to create platforms that can be easy used and evolve in the future is incredibly complicated tasks. Still existing platforms such as Enovia, TeamCenter and Windchill are complex and hard to use. It made me think more about PaaS and ability of PLM to leverage PaaS in the future.
The following article caught my attention last week – The problem with PaaS. Read this article and make your opinion. According to the article, the central paradigm of PaaS is to provide development and deployment environment to the user. I found the following passage interesting. It describes the problem very well. Take a read.
The central idea of PaaS is the CSP provides a development and deployment environment to the user. True, PaaS abstracts the underlying infrastructure, but that’s the role of the IaaS underneath the PaaS platform. The goal of PaaS is to abstract the development environment details themselves. Unfortunately, building an abstraction at this level is extraordinarily difficult, because developers typically require fine-grained, hands-on control of their development environments. Change a classpath or config file setting or environment variable or any number of other nuts and bolts that make up a coder’s day-to-day work environment, and everything the developer has built will crash and burn.
What is my conclusion? What is the future of PLM and PaaS? It is a complicate task to build a scalable, flexible and expandable PLM platform in the cloud. Some vendors are following this path now and some of PLM vendors are looking how to turn their existing systems into cloud PaaS. I can hardly see how cloud vendors will be able to leverage existing PaaS because of complexity of implementations, integrations and system conflicts. It would be very interesting to see if one of the existing cloud PLM products will turn into scalable PLM PaaS. Just my thoughts…