Cloud computing has come a long way. Years ago, companies had only one option for data storage, enterprise systems, networking, application development, et cetera: on-premises.
Today, companies have a range of cloud computing options: from on-premises to Software as a Service (SaaS) to Infrastructure as a Service (IaaS) to Platform as a Service (PaaS).
On-Premises
Before cloud computing came along, companies housed all of their data, enterprise systems and other software onsite.
Somewhere on their property, they had a room dedicated to their servers. For smaller companies, it was often behind a door that employees occasionally opened by mistake and quickly closed, after peaking into the dark, hot cave filled with servers.
For larger corporations, server farms took up vast real estate. The more data they had, the larger the server farm—not to mention the resources that went along with these server farms and enterprise applications, both of which require dedicated full-time staff.
As an example, onsite enterprise systems are usually proprietary, meaning only engineers with special knowledge (i.e., the vendor’s engineers) are able to efficiently (or at all) fix, modify or update the system.
Enterprise applications require periodic updates, as any software does. However, because onsite systems reside at companies’ physical locations, the vendor has to send someone out to do any work on them.
Companies need to either hire or develop someone proficient in the application or continue to renew their service agreement with the vendor as long as they run the application. (Assuming the vendor stays in business.)
After a large outlay of capital to invest in the on-premises infrastructure, companies are loath to change to other enterprise systems. Instead, they hold onto their legacy system as long as they can, regardless of better options out there.
Cloud Computing: SaaS
Software as a service (SaaS) emerged as an alternative to onsite solutions. Vendors maintain software and data online in exchange for monthly fees.
SaaS has taken over as the first choice among most companies, primarily because of its ease and flexibility.
This is an aging argument, but it’s worth repeating some of the reasons companies still choose on-premises solutions over SaaS solutions.
On-premises systems require a large initial investment in hardware as well as continued investment in system maintenance, whether in-house or with the vendor. However, on-premises systems offer more customization options and provide the additional security of a closed system.
Software as a service enables you to pay as you go without any investment in hardware and switch vendors whenever you want. Also, as a user you don’t have to maintain or update the system and you’re always on the latest version because the vendor continuously updates the software on their end.
—Kirk Porter, President of Avitus Technologies
Cloud Computing: IaaS
It was only a matter of time before vendors took things one step further and started offering IaaS.
Infrastructure as a service (IaaS). The capability provided to the consumer is to provision processing, storage, networks and other fundamental computing resources where the consumer is able to deploy and run arbitrary software, which can include operating systems and applications.
The consumer does not manage or control the underlying cloud infrastructure but has control over operating systems, storage and deployed applications; and possibly limited control of select networking components (e.g., host firewalls).
—National Institute of Standards and Technology
Similar to SaaS, IaaS provides companies with flexible infrastructure in the cloud. In other words, companies can get online data storage, data management, networking, et cetera in an on-demand, pay-as-they-go manner.
Cloud Computing: PaaS
A hybrid between IaaS and SaaS, PaaS offers companies the ability to develop applications online without having to maintain infrastructure to support the application development.
For us, PaaS is a set of services aimed at developers that helps them develop and test apps without having to worry about the underlying infrastructure. Developers don’t want to have to worry about provisioning the servers, storage and backup associated with developing and launching an app.
They want to write code, test the app, launch the app, and be able to continually make changes to it to fix bugs. All the back-end stuff about setting up servers should be done automatically and transparently in the background, and that’s the promise of PaaS.
—Sacha Labouray of CloudBees
Cloud Computing Evolves
The days of a single option for information management are gone. Companies don’t have to make large capital outlays or stay with a single product or vendor despite wanting to switch to different offerings.
Companies can now choose between on-premises or as a service or even a hybrid of both for their software, network, data storage and data management needs.