Reputation: 16992
I went over a number of questions in Stackoverflow & on the web , which were very very useful. I had few questions on what I've read so far with regards to IaaS , PaaS & SaaS. However I have a lot of questions which may be very naive as I haven't seen any of these in action.
1) Is PaaS equivalent of a development environment where a software is developed / customized as opposed to IaaS which is an execution environment to run the developed the software (could be any env test or production)?
2) In case of PaaS , I saw apprenda as an example. As part of Apprenda , I saw .net , Java , IIS & SQL Server listed as part of platform. Does this mean that instead of having to install all these on my local machine or development box , I get to have a sort of remote machine where all the development tools are installed and I just have to go and program whatever I want to?
3) If I have not subscribed to IaaS for instance , how can I run the software developed using the platform that is exposed as a service?
4) I also read that PaaS can either be public or private (within company's firewall). If it is private , will the provider of PaaS basically set of up the platform for development on my company's infrastructure?
5) Can any website that provides be a capability to login be termed as SaaS? Eg: GMAIL , Yahoo Mail , Facebook etc.
6) Can Google Drive , Apple iCloud etc be termed as SaaS?
Upvotes: 3
Views: 1447
Reputation: 12819
The NIST definition of Cloud Services in general is a great place to start when looking for answers. It gives the 5 characteristics of Cloud Services:
And then talks about service models, which are SaaS, PaaS and IaaS. Simply running your app in the cloud is not sufficient to say it's SaaS. So, it's not just apps being targeted at non-technical users, it's apps that cover those characteristics. A sub-point to resource pooling above is providing some sort of multi-tenanted capability when delivering the solution to users.
1) Is PaaS equivalent of a development environment where a software is developed / customized as opposed to IaaS which is an execution environment to run the developed the software (could be any env test or production)?
A PaaS solution does not have to be a development environment. It can provide the resource for some software being developed, without the developer needing to provision all the underlying facilities to enable the delivery of that resource. Eg, SQL Azure is a PaaS that lets developers have access to a relational DB service. The developer can write and invoke queries against it, without having to stand up SQL Server instances themselves.
2) In case of PaaS , I saw apprenda as an example. As part of Apprenda , I saw .net , Java , IIS & SQL Server listed as part of platform. Does this mean that instead of having to install all these on my local machine or development box , I get to have a sort of remote machine where all the development tools are installed and I just have to go and program whatever I want to? It should mean that you have access to the remote resources that your development tools can connect to and manage. The server (say SQL server) is not the same as the tool you use to access it, say SQL Server Management studio.
3) If I have not subscribed to IaaS for instance , how can I run the software developed using the platform that is exposed as a service?
You can't.
4) I also read that PaaS can either be public or private (within company's firewall). If it is private , will the provider of PaaS basically set of up the platform for development on my company's infrastructure? A private PaaS means that a company has setup private infrastructure to allow developers to use a resources that are part of the architecture of a solution that do not need to be managed by the developers themselves.
5) Can any website that provides be a capability to login be termed as SaaS? Eg: GMAIL , Yahoo Mail , Facebook etc.
No, not according to the NIST definition. Providing user login is not the same as enabling multi-tenancy. Simply put, if the app enables companies/teams with groups of users to use it, it's moving towards SaaS. So, think solutions like Slack, Gitter & Freshbooks.
6) Can Google Drive , Apple iCloud etc be termed as SaaS? Google Drive as part of Google Apps for Business, yes. Until you start seeing, "iCloud for business", no.
Upvotes: 0
Reputation: 851
I try to provide simpler answer and mapping with Azure deployment model
SaaS: Software as a service.
PaaS: Plafform as a service.
IaaS: Infrastructure as a service.
Upvotes: 1
Reputation: 6566
PAAS : Platform as a Service
IAAS : Infrasctructure as a Service
But the world isn't that black and white. PaaS and IaaS grow towards each other. For example AppEngine managed VMS give you more freedom in choosing your underlying OS while still in a PaaS environment. And Google Autoscaler or Kubernetes brings managing your infrastructure to a more declarative level.
Finally SaaS products are oriented towards non-technical end users. So Apple iCloud, Google Drive, Gmail, Yahoo webmail are examples of SaaS.
Upvotes: 4