In the clouds, trying to understand the terminology
Over the last few months I have spent time trying to understand the difference between Outsourcing, SaaS, ASP, etc., I have only just been able to reach one reasonably coherent conclusion. The world of IT has been changing radically. Each day new terms appear and disappear—all that achieves is to complicate things unnecessarily. And it will leave us worse off than we were before.
Last week several colleagues had a heated debate on what SaaS and ASP were and what they weren’t. To be honest, I never had it clear in my head, so I couldn’t position myself on either side of the debate. So I decided to search thoroughly with a fine comb until I could find a definition that would shed light on things.
And that happened today, when I came across an Italian website where Von Gunten tried to make things straightforward for dense minds like mine and put forward the differences between all these concepts. Don’t ask me who Von Guten is. For me he will always be the person who lit the way in the dark.
Then I came to the following conclusions. Gunten states that the IT world is undergoing a profound change, where everything moves in a “cloud”, in the local environment and at different speeds, but all in the same direction. Even then, this development is still rather recent to reach any sort of definitive and valid definition for all. This is why we are bombarded with an assortment of concepts, often used as a form of misleading publicity and with meanings that are in constant flux.
Now, after this short introduction, here are the terms we need to understand once and for all.
Multi-tenant architecture refers to an architecture that has several tenants. This is one of the technical aspects behind all these concepts we are trying to decipher. In a way that even a 4 year-old child can understand, multi-tenant means that each client will not be offered service based on a “separate and dedicated infrastructure”, but instead all clients operate in the same platform.
Once this is grasped, critical for understanding the rest, we can further develop the other remaining concepts important to us:
Software as a Service (SaaS) refers to the software availability over the internet in the form of “subscribed” services. This means that the user does not install the software, this in turn implies that he doesn’t have to run it locally in his environment. The client/end user will reap the benefits of accessing the software over the internet through a web browser, and he will use it on demand whenever it is needed. This isn’t just renting software, as all data is also stored by the SaaS provider. By implication we can also say that the provider too ensures high data availability and security.
For the provider to offer a high quality of service at a lower cost than an in-house one, the infrastructure must be built to comply with the multi-tenant model. For this service, the client will pay a subscription quota that depends on the application.
Another concept that assails us and leaves us bewildered is Platform as a Service (PaaS). Basically this is a development from SaaS, a concept that refers to the supply of an operating and development software environment for the internet. The PaaS client may develop a solution in a given area of work, concentrating on developing individual requests or a new application. In both cases the platform offers basic functions for developers who do not have to worry about managing users, address availability issues, etc. An example of a PaaS is Microsoft Azur.
And just when we think we have got it all down to pat, Infrastructure as a Service (IaaS) shows up. This takes things a step further by referring to offering virtual infrastructure as a service. The difference compared to traditional dedicated hosting is that the multi-tenant architecture is put at the service of the infrastructure. This means that service offerings can be easily extending and used on demand as needed. This way the user can make use of the tremendous flexibility. He can pay for a reduced number of services made ready for his use. An example of IaaS is Amazon Web Services.
Things complicate even further, right now a new concept has become the latest hot topic in the industry, cloud computing. We are reminded of the old cloud icon used to represent the internet. This is a deep metaphor that has emerged as the definition for all kinds of IT services rendered as an internet-based service. Such that this is now a general concept that encompasses all sorts of IT services over the internet. Although unfortunately for those of us who want to understand for once and all this web of intricacies, the concept is often used as a synonym for SaaS, PaaS or IaaS.
Last but not least, ASP which stands for Application Service Provider is attributed to the expression used at the end of the 90s as the first bit of internet publicity. The original design for ASP was almost identical to that of software as a service or SaaS. However the main tenet of ASP is that it is based on a single tenant and not on a multi-tenant model. That is why the idea of ASP failed and also because the technology wasn’t mature enough, nor was broadband wide enough.
Although Cloud Computing has all it takes to win the role as the leading concept used in day to day language, there are still many more concepts out there, such as Database as a Service, Communication as a Service, Service Enabled Application Platforms (SEAPs), etc.
Although this piece may have made some things a little clearer—well I hope so—clearly we cannot count our chickens before they are hatched. We must be prepared for whatever else may come up…
You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.