Is there any general standard that defines what is a SaaS and what is a PaaS. The 2 seems to be used interchangeably? My guess is that everything is SaaS, so is there something about PaaS that makes it different from SaaS and better called PaaS?
In both cases, deliver is "as a Service", ie, you have someone providing hosting / infrastructure, and charging based on utility (ie, how much the service is used).
The difference then, is between what is provided, ie, "Software" or a "Platform".
- Software (generally) refers to a specific application (eg a billing system, or a CRM solution)
- Platform (generally) refers to infrastructure/services that you can use to deploy your own software/solutions.
Or, using proof by example:
- Salesforce.com provides a CRM solution that any business can use. It is a pre-built application that runs on Salesforce's servers.
- Windows Azure provides hosting and a set of services (web servers, storage, etc) that you can use to build and host your own CRM solution.
There's nothing that makes one "better" than the other, since they are two different approaches used to solve two (mostly separate) different problems.
The difference between SaaS and PaaS is really what the software that is being offered as a service is doing. When it is being sold as-is and just run with different data files, it's software as a service, and when it is being added-to with further application-specific software to create a customized service, it's platform as a service. That's it. There's very little technical difference at all.
Of course, in business terms there's a big difference. In particular, SaaS is sold to the end consumers (whether those are private individuals or businesses) whereas PaaS is sold to companies who resell it as products (or to units of large businesses who repackage it for internal customers). This is a very important difference because it changes how the service is billed, sold and marketed, but it is not a technical difference. Mind you, there's not a huge amount of basic technical difference between SaaS and Infrastructure as a Service either; there's very much a technical continuum between them. (Infrastructure is just a very low level platform, and it's all about running software and managing data anyway.)
SaaS, PaaS and IaaS are the three parts of the Cloud Computing pyramid.
Whereas SaaS stands for "Software as a Service" and refers to a specific application or software, PaaS stands for "Platform as a Service" and is a system that can be used for creating the software(most often a SaaS).
SaaS apps are normally used directly by the end customer (Ex- CRM/ERP used by a business) whereas PaaS is normally used by ISV's, startups,etc. to create apps for reselling or utilization.
Examples of SaaS are Salesforce's CRM and examples of PaaS are Force.com, Heroku, Wolf Frameworks, etc.
Basically, SaaS is a specific online software solution such as CRM, Project Management, Billing, Accounting etc. that mostly flexible by providing some scalability and extensibility features.
On the other hand, PaaS is kind of base services that contains required features to host many different type of online softwares including SaaS applications.
At this point i can say that there are different kind of PaaS in the market. Some of them are targeting the developer by providing both infrastructures (Amazon EC2, GoGrid) and frameworks (Wolf Framework etc) in specific technologies such as Microsoft Azure, Google Apps, Heroku and more ...
The others (including Force.com and Viravis) provides complete solution for a specific needs (such as online database applications) for developers and business analysts as well as the end users by providing required tools to develop online applications without programming.
As a result, all of the PaaS providers in the market presents a simlified solution for creating and running online softwares including SaaS applications. I think this is the main difference between SaaS and PaaS.