This article explains the basic concepts of Platform as a Service(PAAS) and the benefits of using Force.com for enterprise application development. Approaches to enterprise application development have evolved over the decades. Each new generation makes the older technologies, and often the associated vendors, obsolete.
Recently, the concept of Cloud Computing has emerged as an effective method for rapidly building and maintaining enterprise applications. In its most basic form, Cloud Computing is the use of computing resources (hardware and software) that are delivered as a service over the internet. Cloud computing relies on sharing of resources to achieve economies of scale similar to a utility (like the electric grid that powers the country) over a network.
Cloud Computing services can be delivered as Infrastructure as a Services (IAAS), Platform as a Service (PAAS), or Software as a Service (SAAS). The further up the stack you move, the more specific the feature/service becomes.
Ideally we could purchase every piece of business software we need as a service. Unfortunately this is far from the case. While there are many good SAAS solutions available for the most common enterprise applications including Email, Collaboration, CRM, HR, Finance/ERP/MRP, nearly every organization still has unique department applications that our left unmet.
On the other end of the cloud stack we have IAAS. IAAS solutions are used to host applications and servers. IAAS services are provided by traditional computer (Oracle and IBM) and emerging tech companies (Amazon and RackSpace) to deliver hardware infrastructure services (CPU, Memory, Storage, Network, etc) and software infrastructure services (Database, App Server, Messaging) to run applications. This is great, but it requires considerable investment in non unique computing services to leverage IAAS solution in new enterprise application development.
Happily in the middle sits Platform as a Service(PAAS), the ideal cloud computing technology for enterprise application development. PAAS provides all of the benefits of IAAS, but plus application development components that reduce the effort associated with common application development tasks including UI,Security,Data Validation, Workflow, Reporting, Collaboration, Search, Mobile, Social.
The emerging leaders of PAAS are Force.com from Salesforce.com, Windows Azure from Microsoft and AppEngine from Google. Each platform has it’s pros and cons, but the Force.com platform has been around the longest and in our mind is the most advanced for Enterprise Application Development.
Here is what sets it apart.
1) Less Code. You can build the same application logic in force.com with a fraction of the code required in either Google AppEngine or Windows Azure. Less code means easier to manage and lower maintenance costs.
2) Faster Development. Because a lot of the application is developed with clicks not code and because there are so many prebuilt application development services, development goes a lot faster. In our experience, Force.com apps can be built a lot faster than other PAAS apps and they can be built 5x faster then traditional on-premise development solutions.
3) Future Proof. With the pace of technology change it is nearly impossible for internal application development efforts to keep up with changes in the tech landscape. When you build applications on the force.com platform they are automatically upgraded with the platform. This means the core features of your application will continue to evolve, with no development effort at all. For instance, when Salesforce.com adds social, mobile, reporting or security features your applications will automatically get those features.