SaaS
Software as a service (SaaS ) adalah model perangkat lunak lisensi dan delivery di mana perangkat lunak dilisensikan basis langganan dan secara terpusat hosted. Kadang-kadang disebut sebagai "on-demand software", dan sebelumnya disebut sebagai "software plus services" by Microsoft. SaaS biasanya diakses oleh user menggunakan thin client melalui browser web. SaaS telah menjadi model pengiriman umum untuk banyak aplikasi bisnis, termasuk office software, messaging software, perangkat lunak pemrosesan penggajian, DBMS software, perangkat lunak manajemen, CAD software, perangkat lunak pengembangan, gamification, virtualization, accounting, collaboration, customer relationship management (CRM), Management Information Systems (MIS), enterprise resource planning (ERP), invoicing, human resource management (HRM), talent acquisition, learning management systems, content management (CM), dan service desk management. SaaS telah dimasukkan ke dalam strategi hampir semua perusahaan enterprise software terkemuka.
Menurut perkiraan Gartner Group, penjualan SaaS pada tahun 2010 mencapai $10 miliar. Selain itu, 59% dari semua alur kerja cloud akan dikirimkan sebagai perangkat lunak sebagai layanan pada akhir tahun menurut Global Cloud Index Cisco. Berdasarkan laporan Fortune Business Insight, market size Software as a service (SaaS) global diproyeksikan tumbuh dari $251,17 miliar pada tahun 2022 menjadi $883,34 miliar pada tahun 2029, dengan CAGR sebesar 19,7%.
Aplikasi SaaS juga dikenal sebagai perangkat lunak berbasis web, perangkat lunak sesuai permintaan, dan perangkat lunak yang dihosting. Istilah "Software as a Service" (SaaS) dianggap sebagai bagian dari nomenklatur cloud computing, bersama dengan Infrastructure as a Service (IaaS), Platform as a Service (PaaS), Desktop as a Service (DaaS), managed software as a service (MSaaS), mobile backend as a service (MBaaS), dan information technology management as a service (ITMaaS).
Sejarah
Hosting aplikasi bisnis terpusat sudah ada sejak tahun 1960-an. Mulai dekade itu, IBM dan mainframe lainnya melakukan bisnis biro layanan, sering disebut sebagai time-sharing atau utility computing. Layanan tersebut termasuk menawarkan daya computing dan penyimpanan basis data kepada bank dan organisasi besar lainnya dari data center mereka di seluruh dunia.
Ekspansi Internet selama tahun 1990-an menghasilkan kelas baru centralized computing, yang disebut Application Service Providers (ASP. ASP menyediakan bisnis dengan layanan hosting dan mengelola aplikasi bisnis khusus, dengan tujuan mengurangi biaya melalui administrasi pusat dan melalui spesialisasi penyedia solusi dalam aplikasi bisnis tertentu. Dua pelopor dunia dan ASP terbesar adalah USI, yang berkantor pusat di wilayah Washington, DC, dan Futurelink Corporation, berkantor pusat di Irvine, California.
Software as a Service pada dasarnya memperluas gagasan model ASP. Istilah Software as a Service (SaaS), bagaimanapun, umumnya digunakan dalam pengaturan yang lebih spesifik:
- Sementara sebagian besar ASP awal berfokus pada pengelolaan dan hosting perangkat lunak pihak ketiga independent software vendor, vendor SaaS biasanya mengembangkan dan mengelola perangkat lunak mereka sendiri.
- Sementara banyak ASP awal menawarkan aplikasi client-server yang lebih tradisional, yang memerlukan penginstalan perangkat lunak pada komputer pribadi pengguna, solusi SaaS saat ini lebih mengandalkan on the Web dan hanya memerlukan browser web untuk digunakan.
- Sedangkan software architecture yang digunakan oleh sebagian besar ASP awal diamanatkan untuk mempertahankan contoh aplikasi yang terpisah untuk setiap bisnis, solusi SaaS biasanya menggunakan arsitektur multitenant, di mana aplikasi melayani banyak bisnis dan pengguna, dan mempartisi datanya sesuai dengan itu.
Akronim tersebut diduga pertama kali muncul dalam sebuah artikel berjudul "Strategic Backgrounder: Software As A Service," yang diterbitkan secara internal pada Februari 2001 oleh Divisi eBusiness Software & Information Industry Association (SIIA). DbaaS (Database as a Service) telah muncul sebagai sub-varietas SaaS.
Distribusi
Model cloud (atau SaaS) tidak memiliki kebutuhan fisik untuk distribusi tidak langsung karena tidak didistribusikan secara fisik dan digunakan hampir secara instan, sehingga meniadakan kebutuhan akan mitra dan perantara tradisional. Namun, seiring pertumbuhan pasar, pemain SaaS dan layanan terkelola terpaksa mencoba mendefinisikan ulang peran mereka.
Harga
Tidak seperti perangkat lunak tradisional, yang secara konvensional dijual sebagai perpetual license dengan biaya di muka (dan biaya dukungan berkelanjutan opsional), penyedia SaaS biasanya menetapkan harga aplikasi menggunakan biaya langganan, biasanya biaya bulanan atau biaya tahunan . Akibatnya, biaya penyiapan awal untuk SaaS biasanya lebih rendah daripada perangkat lunak perusahaan yang setara. Vendor SaaS biasanya memberi harga pada aplikasi mereka berdasarkan beberapa parameter penggunaan, seperti jumlah pengguna yang menggunakan aplikasi tersebut. Namun, karena dalam lingkungan SaaS, data pelanggan berada di vendor SaaS, ada peluang untuk membebankan biaya per transaksi, peristiwa, atau unit nilai lainnya, seperti jumlah prosesor yang diperlukan.
Biaya yang relatif rendah untuk user provisioning (yaitu, menyiapkan pelanggan baru) di lingkungan multitenant memungkinkan beberapa vendor SaaS menawarkan aplikasi menggunakan model freemium. Dalam model ini, layanan gratis tersedia dengan fungsi atau ruang lingkup terbatas, dan biaya dikenakan untuk fungsi yang disempurnakan atau ruang lingkup yang lebih besar. Beberapa aplikasi SaaS lainnya benar-benar gratis untuk pengguna, dengan pendapatan yang diperoleh dari sumber alternatif seperti iklan.
Pendorong utama pertumbuhan SaaS adalah kemampuan vendor SaaS untuk memberikan harga yang bersaing dengan on-premises software. Hal ini konsisten dengan alasan tradisional untuk mengalihdayakan sistem TI, yang melibatkan penerapan skala ekonomi ke operasi aplikasi, yaitu, penyedia layanan luar mungkin dapat menawarkan aplikasi yang lebih baik, lebih murah, dan lebih andal.
Architecture
The vast majority of SaaS solutions are based on a multitenant architecture. With this model, a single version of the application, with a single configuration (hardware, network, operating system), is used for all customers ("tenants"). To support scalability, the application is installed on multiple machines (called horizontal scaling). In some cases, a second version of the application is set up to offer a select group of customers access to pre-release versions of the applications (e.g., a beta version) for testing purposes. This is contrasted with traditional software, where multiple physical copies of the software — each potentially of a different version, with a potentially different configuration, and often customized — are installed across various customer sites. In this traditional model, each version of the application is based on a unique code.
Although an exception rather than the norm, some SaaS solutions do not use multitenancy, or use other mechanisms—such as virtualization—to cost-effectively manage a large number of customers in place of multitenancy. Whether multitenancy is a necessary component for software as a service is a topic of controversy.
There are two main varieties of SaaS:
- Vertical SaaS
- Software which answers the needs of a specific industry (e.g., software for the healthcare, agriculture, real estate, finance industries).
- Horizontal SaaS
- The products which focus on a software category (marketing, sales, developer tools, HR) but are industry agnostic.
Characteristics
Although not all software-as-a-service applications share all traits, the characteristics below are common among many SaaS applications:
Configuration and customization
SaaS applications similarly support what is traditionally known as application configuration. In other words, like traditional enterprise software, a single customer can alter the set of configuration options (a.k.a. parameters) that affect its functionality and look-and-feel. Each customer may have its own settings (or: parameter values) for the configuration options. The application can be customized to the degree it was designed for based on a set of predefined configuration options.
For example, to support customers' common need to change an application's look-and-feel so that the application appears to be having the customer's brand (or—if so desired—co-branded), many SaaS applications let customers provide (through a self service interface or by working with application provider staff) a custom logo and sometimes a set of custom colors. The customer cannot, however, change the page layout unless such an option was designed for.
Accelerated feature delivery
SaaS applications are often updated more frequently than traditional software, in many cases on a weekly or monthly basis. This is enabled by several factors:
- The application is hosted centrally, so an update is decided and executed by the provider, not by customers.
- The application only has a single configuration, making development testing faster.
- The application vendor does not have to expend resources updating and maintaining backdated versions of the software, because there is only a single version.
- The application vendor has access to all customer data, expediting design and regression testing.
- The solution provider has access to user behavior within the application (usually via web analytics), making it easier to identify areas worthy of improvement.
Accelerated feature delivery is further enabled by agile software development methodologies. Such methodologies, which have evolved in the mid-1990s, provide a set of software development tools and practices to support frequent software releases.
Open integration protocols
Because SaaS applications cannot access a company's internal systems (databases or internal services), they predominantly offer integration protocols and application programming interfaces (APIs) that operate over a wide area network. Typically, these are protocols based on HTTP, REST, and SOAP.
The ubiquity of SaaS applications and other Internet services and the standardization of their API technology has spawned development of mashups, which are lightweight applications that combine data, presentation and functionality from multiple services, creating a compound service. Mashups further differentiate SaaS applications from on-premises software as the latter cannot be easily integrated outside a company's firewall.
Collaborative (and "social") functionality
Inspired by the success of online social networks and other so-called web 2.0 functionality, many SaaS applications offer features that let their users collaborate and share information.
For example, many project management applications delivered in the SaaS model offer—in addition to traditional project planning functionality—collaboration features letting users comment on tasks and plans and share documents within and outside an organization. Several other SaaS applications let users vote on and offer new feature ideas.
Although some collaboration-related functionality is also integrated into on-premises software, (implicit or explicit) collaboration between users or different customers is only possible with centrally hosted software.
OpenSaas
OpenSaaS refers to software as a service (SaaS) based on open source code. Similar to SaaS applications, Open SaaS is a web-based application that is hosted, supported and maintained by a service provider. While the roadmap for Open SaaS applications is defined by its community of users, upgrades and product enhancements are managed by a central provider. The term was coined in 2011 by Dries Buytaert, creator of the Drupal content management framework.
Andrew Hoppin, a former Chief Information Officer for the New York State Senate, has been a vocal advocate of OpenSaaS for government, calling it "the future of government innovation." He points to WordPress as a successful example of an OpenSaaS software delivery model that gives customers "the best of both worlds, and more options. The fact that it is open source means that they can start building their websites by self-hosting WordPress and customizing their website to their heart’s content. Concurrently, the fact that WordPress is SaaS means that they don’t have to manage the website at all -- they can simply pay WordPress.com to host it."
Drupal Gardens, a free web hosting platform based on the open source Drupal content management system, offers another example of what Forbes contributor Dan Woods calls a "new open source model for SaaS". According to Woods, "Open source provides the escape hatch. In Drupal Gardens, users will be able to press a button and get a source code version of the Drupal code that runs their site along with the data from the database. Then, you can take that code, put it up at one of the hosting companies, and you can do anything that you would like to do."
Adoption drivers
Several important changes to the software market and technology landscape have facilitated acceptance and growth of SaaS solutions:
- The growing use of web-based user interfaces by applications, along with the proliferation of associated practices (e.g., web design), continuously decreased the need for traditional client-server applications. Consequently, traditional software vendor's investment in software based on fat clients has become a disadvantage (mandating ongoing support), opening the door for new software vendors offering a user experience perceived as more "modern".
- The standardization of web page technologies (HTML, JavaScript, CSS), the increasing popularity of web development as a practice, and the introduction and ubiquity of web application frameworks like Ruby on Rails or Laravel (PHP) gradually reduced the cost of developing new SaaS solutions, and enabled new solution providers to come up with competitive solutions, challenging traditional vendors.
- The increasing penetration of broadband Internet access enabled remote centrally hosted applications to offer speed comparable to on-premises software.
- The standardization of the HTTPS protocol as part of the web stack provided universally available lightweight security that is sufficient for most everyday applications.
- The introduction and wide acceptance of lightweight integration protocols such as REST and SOAP enabled affordable integration between SaaS applications (residing in the cloud) with internal applications over wide area networks and with other SaaS applications.
Adoption challenges
Some limitations slow down the acceptance of SaaS and prohibit it from being used in some cases:
- Because data is stored on the vendor's servers, data security becomes an issue.
- SaaS applications are hosted in the cloud, far away from the application users. This introduces latency into the environment; for example, the SaaS model is not suitable for applications that demand response times in the milliseconds.
- Multitenant architectures, which drive cost efficiency for SaaS solution providers, limit customization of applications for large clients, inhibiting such applications from being used in scenarios (applicable mostly to large enterprises) for which such customization is necessary.
- Some business applications require access to or integration with customer's current data. When such data are large in volume or sensitive (e.g. end users' personal information), integrating them with remotely hosted software can be costly or risky, or can conflict with data governance regulations.
- Constitutional search/seizure warrant laws do not protect all forms of SaaS dynamically stored data. The end result is that a link is added to the chain of security where access to the data, and, by extension, misuse of these data, are limited only by the assumed honesty of 3rd parties or government agencies able to access the data on their own recognizance.
- Switching SaaS vendors may involve the slow and difficult task of transferring very large data files over the Internet.
- Organizations that adopt SaaS may find they are forced into adopting new versions, which might result in unforeseen training costs, an increase in probability that a user might make an error, or instability from bugs in the newer software.
- Should the vendor of the software go out of business or suddenly EOL the software, the user may lose access to their software unexpectedly, which could destabilize their organization's current and future projects, as well as leave the user with older data they can no longer access or modify.
- Relying on an Internet connection means that data are transferred to and from a SaaS firm at Internet speeds, rather than the potentially higher speeds of a firm’s internal network.
- Can the SaaS hosting company guarantee the uptime level agreed in the SLA (Service Level Agreement)?
The standard model also has limitations:
- Compatibility with hardware, other software, and operating systems.
- Licensing and compliance problems (unauthorized copies of the software program putting the organization at risk of fines or litigation).
- Maintenance, support, and patch revision processes.
Engineering applications
Engineering simulation software, traditionally delivered as an on-premises solution through the user's desktop, is an ideal candidate for SaaS delivery. The market for SaaS engineering simulation software is in its infancy, but interest in the concept is growing for similar reasons as interest in SaaS is growing in other industries. The main driver is that traditional engineering simulation software required a large up-front investment in order to access the simulation software. The large investment kept engineering simulation inaccessible for many startups and middle market companies who were reluctant or unable to risk a large software expenditure on unproven projects.
Healthcare applications
According to a survey by HIMSS Analytics, 83% of US IT healthcare organizations are now using cloud services with 9.3% planning to, whereas 67% of IT healthcare organizations are currently running SaaS-based applications.
Data escrow
Software as a service data escrow is the process of keeping a copy of critical software-as-a-service application data with an independent third party. Similar to source code escrow, where critical software source code is stored with an independent third party, SaaS data escrow is the same logic applied to the data within a SaaS application. It allows companies to protect and insure all the data that resides within SaaS applications, protecting against data loss.
There are many and varied reasons for considering SaaS data escrow including concerns about vendor bankruptcy unplanned service outages and potential data loss or corruption. Many businesses are also keen to ensure that they are complying with their own data governance standards or want improved reporting and business analytics against their SaaS data. A research conducted by Clearpace Software Ltd. into the growth of SaaS showed that 85 percent of the participants wanted to take a copy of their SaaS data. A third of these participants wanted a copy on a daily basis.
Criticism
One notable criticism of SaaS comes from Richard Stallman of the Free Software Foundation referring to it as Service as a Software Substitute (SaaSS). He considers the use of SaaS to be a violation of the principles of free software. According to Stallman:
With SaaS, the users do not have a copy of the executable file: it is on the server, where the users can't see or touch it. Thus it is impossible for them to ascertain what it really does, and impossible to change it. SaaS inherently gives the server operator the power to change the software in use, or the users' data being operated on.
This criticism does not apply to all SaaS products. In 2010, Forbes contributor Dan Woods noted that Drupal Gardens, a free web hosting platform based on the open source Drupal content management system, is a "new open source model for SaaS". He added:
Open source provides the escape hatch. In Drupal Gardens, users will be able to press a button and get a source code version of the Drupal code that runs their site along with the data from the database. Then, you can take that code, put it up at one of the hosting companies, and you can do anything that you would like to do.
Similarly, MediaWiki, WordPress and their many extensions are increasingly used for a wide variety of internal applications as well as public web services. Duplicating the code is relatively simple, as it is an integration of existing extensions, plug-ins, templates, etc. Actual customizations are rare, and usually quickly replaced by more standard publicly available extensions. There is additionally no guarantee the software source code obtained through such means accurately reflects the software system it claims to reflect.
Andrew Hoppin, a former Chief Information Officer for the New York State Senate, refers to this combination of SaaS and open source software as OpenSaaS and points to WordPress as another successful example of an OpenSaaS software delivery model that gives customers "the best of both worlds, and more options. The fact that it is open source means that they can start building their websites by self-hosting WordPress and customizing their website to their heart’s content. Concurrently, the fact that WordPress is SaaS means that they don’t have to manage the website at all – they can simply pay WordPress.com to host it." The cloud (or SaaS) model has no physical need for indirect distribution because it is not distributed physically and is deployed almost instantaneously, thereby negating the need for traditional partners and middlemen.