Consuming software as a service has become the dominant trend for enterprise applications over the past decade. Here’s how SaaS took over the world. Credit: Thinkstock One of the most popular forms of cloud computing is software as a service (SaaS). It is one of the three major categories of cloud computing, along with infrastructure as a service (IaaS) and platform as a service (PaaS). SaaS has become the dominant software delivery model since the concept debuted in the early 2000s. SaaS defined SaaS stands for software as a service, which means software is hosted by a third-party provider and delivered to customers over the internet as a service. While most SaaS products are aimed at business users, some products have proved popular with individual consumers, like note-taking app Evernote or personal finance tools like TurboTax and Mint. In business settings, users access productivity applications or enterprise software from a service provider instead of from their company’s private data center. Microsoft 365 and Salesforce are common examples of such SaaS software used in business that had been previously hosted and distributed by businesses’ own data centers. SaaS is a marked difference to the old model of making a one-off purchase of software that must be hosted, implemented, and maintained by the buyers themselves. The SaaS delivery model is enabled by a multitenant architecture, where a service provider can distribute multiple versions of the same software from a single physical server. Each user or business has its own version of the application, with the associated customizations, data, and access controls, but from a shared code base that can be patched, updated, and maintained centrally. As a result, software can be purchased by individuals or for a select group of users and paid for on a monthly or annual subscription basis per “seat,” instead of making a large upfront investment in a perpetual (permanent) license, starting a lengthy implementation, and committing to years of maintenance, upgrades, and support contracts. SaaS vs. IaaS vs. PaaS SaaS sits alongside infrastructure as a service (IaaS) and platform as a service (PaaS) as the three most popular models of cloud consumption. Simply put, IaaS provides the building blocks for consuming cloud services, such as compute, storage, networking, and monitoring, while PaaS assembles these building blocks into a more easily consumable software development platform. SaaS is different in that it isn’t primarily aimed at software developers. Instead, popular business applications like email, customer relationship management (CRM), and financial management tools are available on-demand from anywhere via a web browser, desktop computer, or mobile device. SaaS advantages for enterprise IT As employees have become more distributed and remote, SaaS allows authorized users to access an application from anywhere on any authorized device, without having to be behind the company firewall. This also allows for greater real-time collaboration, because SaaS enables concurrent usage of the same tool or document. SaaS also gives companies more flexibility as they grow, as they only have to pay for the employees using the software, if usage is tracked and managed correctly. This model also lowers the maintenance burden on IT teams to stay up-to-date with the latest releases or installing patches such as security updates, because the SaaS provider handles all that. SaaS risks and challenges SaaS also comes with a new set of risks, most of which boil down to a reliance on a third-party provider to maintain the security and uptime of their services for users. Unlike the highly customizable business applications of old, customers are also reliant on the provider to build new features and squash bugs in a timely manner. They also require the provider to maintain the software availability. As we’ve seen countless times in the cloud era, outages at a service provider can affect thousands, even millions, of customers all at once. There are also portability restrictions that come with an increasing reliance on SaaS. Moving an entire company’s worth of CRM data over the internet to a different SaaS provider (or back to a private data center) is no small feat and would require a strong reason to do so. Security and privacy are also issues, especially if a trusted service provider experiences a data breach. However, the industry consensus is that SaaS security is much stronger than the security in most enterprise data centers, though a SaaS provider breach will affect many more users than a breach at an individual private data center. SaaS company examples The concept of software as a service as we know it today was pioneered by Marc Benioff and Parker Harris at Salesforce in the early 2000s. Today Salesforce is not only a SaaS behemoth, but also the clear market leader in customer relationship management (CRM) software. The Salesforce model spawned countless other companies that deliver their software as a service, including file storage with Dropbox and Box, collaboration software with Microsoft 365 and Google Workspace, messaging with Slack, HR and finance applications with Workday, and IT service desk software with ServiceNow. Most enterprise software companies have duly pivoted to offer their software as a service or at least with on-demand pricing, as the market now dictates. At the other end of the scale, there are new SaaS startups cropping up all the time, looking to make everything from tax-filing applications to e-signature software available on demand. Related content feature 14 great preprocessors for developers who love to code Sometimes it seems like the rules of programming are designed to make coding a chore. Here are 14 ways preprocessors can help make software development fun again. By Peter Wayner Nov 18, 2024 10 mins Development Tools Software Development feature Designing the APIs that accidentally power businesses Well-designed APIs, even those often-neglected internal APIs, make developers more productive and businesses more agile. By Jean Yang Nov 18, 2024 6 mins APIs Software Development news Spin 3.0 supports polyglot development using Wasm components Fermyon’s open source framework for building server-side WebAssembly apps allows developers to compose apps from components created with different languages. By Paul Krill Nov 18, 2024 2 mins Microservices Serverless Computing Development Libraries and Frameworks news Go language evolving for future hardware, AI workloads The Go team is working to adapt Go to large multicore systems, the latest hardware instructions, and the needs of developers of large-scale AI systems. By Paul Krill Nov 15, 2024 3 mins Google Go Generative AI Programming Languages Resources Videos