SaaS definition
SaaS is regarded as cloud computing services such as PaaS (Platform as a Service), DaaS (Desktop as a Service), IaaS (Infrastructure as a Service), ITMaaS (information technology management as a service), and plenty of others. SaaS which is short for Software as a Service ([sæs]) is a technology of delivering software through a regular licensed subscription. The software is hosted on the server while users exploit a web application via a thin client.
A thin client is characterized as a lightweight, stateless, fanless terminal services providing users with remote access to data, applications, memory or any other valuable content stored on a server. The server manages all operations relating to data processing and software applications. A thin client allows users to promptly connect to the program without having to worry about security, scalability, and cost of the server management.
This way vendors of software as a service are responsible for the hostage and maintenance of the server, data, and code of the software. Organizations in their turn don’t need to pay for the hardware or sometimes even for the upkeep of an IT department.
Presently SaaS is in great request among business users as it provides applications meeting crucial needs: customer relationship management, sales management, financial management, human resource management, accounting, email, etc.
The emergence of SaaS
For the first time the abbreviation reportedly occurred in the article "Strategic Backgrounder: Software As A Service" in 2001 although the very technology of the centralized application hosting originated in the 1960s. IBM and other data centers provided big organizations with a computing resource, database maintenance, time-sharing systems, and utility computing. After the spike of the internet dissemination in the 1990s a new type of centralized hosting turned up: ASP which stands for Application Service Providers. ASPs were intended for hosting and handling applications which let business users minimize expenses and delegate the responsibility for the successful operation of the application to the vendors. Thus SaaS primarily promotes the concept of the ASP technology.
In the past Software as a Service used to be referred to as Software Plus Service whereas nowadays it is sometimes mentioned as On-demand Software.
SaaS Development and Ubiquity
After SaaS appeared in the IT market there were significant turnarounds assisting in the progress of its adoption and ubiquity.
- The process of making HTML, JavaScript, and CSS conform to a standard of web page technologies exploitation, the growing use of web development in general, and the dissemination of frameworks caused the splash of SaaS development. This, in turn, lets new solution vendors enter the IT market niche bringing about viable products ready to compete with existing providers.
- The increasing reliance on web-based user interfaces in addition to the dissemination of the technologies requiring such an approach of use led to the lack of standard on-premise and client-server applications popularity. Fat clients, therefore, started being treated as not sufficiently up-to-date which resulted in common loyalty to the emerged class of an IT practice.
- A solution stack for web development incorporated HTTPS protocol which endowed universal lightweight security to keep the data safe and the access to it limited.
- Such integration protocols as REST and SOAP empowered and facilitated integration between on-premise (internal) applications and cloud applications. This opportunity lets end-users exploit a great variety of networks and applications without carrying about program integration and compatibility.
- The rapid growth of wideband Internet network provided an opportunity to host applications distantly ensuring high connection speed and making redundant the need for local software.
SaaS vs Traditional Software
The main difference between traditional on-premise software and software as a service mostly relates to the payment method and the type of license (of course taking into account the speed of the application operation, opportunities for customization, accessibility, etc.)
Software as a Service | Traditional on-premise software |
|
|
Nevertheless one should certainly bear in mind that the ground zero for the choice is the requirements of an organization and the degree of complexity of the business processes run. Some consider software as a service more suitable for small or medium companies as the technology is still sometimes criticised for poor or at least not sufficient functionality. For that reason, large organizations and business often overlook the fact of SaaS cost-effectiveness and choose traditional on-premise systems. Although the technology is indeed working on the way to close the loop on the issue of functionality.
SaaS vs ASP
Software as a Service has its roots in the concept of the ASP technology. However, SaaS has several significant distinctions:
Architecture
The solutions entail a multitenant architecture which means that multiple users are able to connect to the single application and data. The source code of the application is the same for all users and when there are updates in the application they are rolled out to all the users. As for the architecture of ASPs, it implies sustaining one instance of the application for every user or business.
Software
SaaS providers develop, maintain and deliver their software whereas ASPs devote their efforts to hosting and handling third-party software produced by other vendors in the market.
Installation
Software as a service doesn’t need installation on-premise and requires only the Internet connection and a web browser to be run. ASPs in their turn provide client-server applications which need to be installed on the computers.
SaaS & APIs
In order to operate in tune with another software exploited software as a service has to be applied along with APIs - application programming interfaces. Whatever software is utilized by the user it can be integrated with SaaS through an API. API constitutes a code intended to let several software applications interact with each other. An application program interface has to detect the right model for an application to be developed so that to request services from other programs of an operating system.
API operation
As for the structure, API is composed of two parts. The first one is presented as specification explaining how the process of information exchange should undergo. The element is accomplished as a request for information handling and a reply in the form of the required data. The second part of API is a programming interface developed according to the specification. The software is aimed to connect to the features belonging to the API requesting for it.
APIs benefits
s APIs are intended for seamless data exchange between the cloud-based application and on-premise one (for instance) they are purposefully designed in the way to meet the needs of big organizations where multiple departments are going to use the application (e.g. SaaS) for a variety of purposes. Thereby today most programs are developed with regard to the use of API due to the convenience as it reduces cost and time of development and decreases the risks of errors.
SaaS Cloud Model
Although SaaS and Cloud Computing are often seen as very close terms there is a difference between them.
Cloud computing implies a third party hosting the user’s software which can be customized and handled by the user. The internet connection and a web browser ensure access to the application and personal data.
When it comes to SaaS, the user is not tied to hosting, maintenance and updating of the software. The vendor providing it is responsible for all the processes. The technology entails a subscription which can be waived anytime the software is no longer required.
Nevertheless, there are risks the users should be ready to meet: there is less control over data security, application handling and customization which is sometimes considered as essential.
SaaS Private Cloud
A private cloud is a technology exploiting the infrastructure applied in a public cloud to store the data on-premise. As well as in the public cloud users get access to the data via the internet and receive the same range of capabilities. Although the users don’t share the processing power with the public at large as it is used in common only by the users of an organization where the cloud is exploited. And as opposed to the public cloud, the private cloud technology involves a necessity in the IT department to support it.
Private cloud is convenient and useful mainly for large organizations willing to maintain a high level of their data security and a wide access to it for the employees. However, the private cloud doesn’t apparently bring the profit offsetting the cost of its development and handling. Thus it should be a carefully considered decision if to start such a project meaning that it would meet the requirements of a certain business.
SaaS multitenant architecture
SaaS solutions entail a specific kind of architecture - a multitenant one. Multitenant architecture implies that all users exploit a single version of the software including its hardware, network, and operating system. The software requires installation on several devices in order to keep it scalable. Here software as a service is opposed to traditional systems where each customer exploits a physical version (copy) of the software. Each instance of the application possesses different hardware, network, and operating system - configuration. Each one has its unique code as a base, is installed on a separate computer site, and can be easily customized. However, multitenancy is not an obligatory feature of the SaaS technology as sometimes it’s possible to handle a big number of users with the help of virtualization which is also profitable and rather economical.
Furthermore, there are two types of SaaS solutions:
Horizontal
This type serves the needs of a specific category of software: sales, HR, marketing, developers.
Vertical
It is responsive to the needs of an industry: sales, HR, marketing, IT department.
SaaS Main Features
Here are the main features characterizing a typical SaaS solution:
Configuration and customization
A classic SaaS application provides an opportunity for each user to set the parameters which are also called configuration options. The options serve to alter the functional performance of the application and its look and feel. This aspect of SaaS allows every user to have their own unique arrangement of the software responsive to the specified needs and requirements. Nonetheless, the extent to which the application can be customized is established during the process of development. This way due to the opportunity for configuration changing customers can often alter the look and feel of the application for instance with setting the application to display the brand of the organization they work at. Hence SaaS vendors generally let customers attain their custom logo and several custom colors. Although the page layout not always can be customized but only if it was created in a way to accept customization.
Integration protocols
SaaS software has no access to the user’s domestic databases and internal services which is rather often needed though. Thus SaaS applications are commonly delivered along with integration protocols and application programming interfaces as they assist in accommodation of several systems for the sake of user-friendliness. Normally, those protocols rely on SOAP, REST, and HTTP techniques. Furthermore, due to SaaS global dissemination and the API systems standardization led to the elaboration of plenty of mashups. Mashups are lightweight web developments intended to merge heterogeneous data from various sources and services to that to present a united aggregate system. Mashups have to as well distinguish on-premise applications and SaaS ones because the former are not smoothly incorporated outside the organization’s network security system.
SaaS releases
Given that SaaS vendors are responsible for the software maintenance and its updating, the applications are brought up to date more often rather than traditional on-premise applications. The software is commonly updated every week or every month depending on the product-specific nature. The updates are characterized with the following factors:
- Customers are not in charge of the updates. The software is hosted centrally and a provider is the only one managing and accomplishing the upgrades.
- The process of testing undergoes significantly faster due to a single configuration set of the application.
- There are no backdated versions of the software and the providers don’t need to handle and upgrade them given that there is just one application version for all customers to be maintained and upgraded.
- Owing to the application central hosting, the vendor has complete access to all users’ data and the software functionality and design are regularly enhanced through regression tests.
- Web analytics allows SaaS vendors to estimate the application usability and discover bottlenecks in the software to be fixed.
- Regular releases of the software require agile software development tools to keep the feature delivery high-quality, expedited, and frequent.
SaaS Collaboration
Web 2.0 functionality is a technology aimed at the enhancement of the content produced by users themselves, the usability of the system and its compatibility with other services and systems. Owing to the extensive use of web 2.0 and social networks, SaaS vendors saw the point to implement a feature allowing for collaboration and communication into the application.
Consequently multiple or even most of SaaS applications nowadays provide not only classic range of capabilities for project management but also a function permitting end-users to communicate. The communication, in this case, involves different opportunities to converse, comment on assigned tasks, share documents, offer plans, features, and ideas while staying in or out of the organization exploiting a SaaS application. Since SaaS solutions deliver access to data through a web browser, there is no need to stay at a working place to remain aware of the ongoing business processes.
Nevertheless, certain functions delivering the opportunity for communication are integrated and installed on-premise and in such an instance the collaboration is available only for the users working specifically there - on-premise.
SaaS Advantages
SaaS vendors supply advanced solutions which don’t necessitate purchasing, installation, hardware or software maintenance, and upgrading accordingly. The applications are increasingly welcomed by and are popular with organizations especially if they don’t have sufficient resources to purchase the software, deploy, and handle the needed technology supporting the application.
Among SaaS products there are well-known applications such as CRM, ERP, HRM, etc. Moreover, by means of SaaS customers are able to utilize such essential basic functions as email, billing, financial management, and others.
Payment model
As opposed to classic on-premise software, software as a service doesn’t need to be bought and installed but is available through a recurrent subscription. A pay-as-you-go pricing model allows users to avoid up-front costs and plan their finances more thoroughly. The customers can likewise stop using SaaS anywhen they want. One of its best functions is high scalability which means that the application scales up and down automatically conforming to the degree of the use and this feature as well lets minimize expenses.
Scalability
As it has already been mentioned SaaS is noted for its specific scalable usage. Due to the exploitation of the cloud users are free to choose the access as wide as needed depending on the requirements. Thus it is possible to select and use the needed features and services without changing the software or overpaying.
Updating
Customers don’t have to bother upgrading or purchasing a new version of the application used like in the example of traditional software. Instead, the providers assume the responsibility to manage patches in the application and upgrade it. Luckily for small and medium businesses this feature of SaaS allows to dispense with the IT department or at least cut down its workload.
Accessibility & usability
Due to the fact that any software as a service solution is provided over the internet, it can be accessed through any device or from any place with the internet connection. It implies that a user can be located anywhere in the world while being connected to the software and staying informed of the business data due to the cloud-based service. And even though some SaaS applications need plugins to be downloaded and installed, the technology mainly doesn’t need installation.
SaaS Limitations
Despite multiple benefits introduced by SaaS into the business management process, the technology itself involves several limitations and shortcomings that cannot but be taken into account before a decision made to start using SaaS.
As the concept of the method implies customers devolve their data to vendors regardless of the kind of information accumulated there. The users neither can control nor regulate the updates and their necessity which means that the businesses always depend on the software version delivered at the moment and they can’t know how it may be changed in the future. Furthermore, there is always a possibility of a service outage which would certainly affect the users’ operation and performance. Undoubtedly, there is also a possibility of a security breach which may result in a very undesirable precedent.
According to Richard Stallman from the Free Software Foundation, Software as a Service infringes the laws of free software. Stallman expresses an idea that the users don’t possess a physical version of a run file but may access their personal data only remotely. Respectively they don’t have an opportunity to make sure in which actual condition the software and the data are. Only the server provider has a right to change the software and check its functionality.
Although, one of Forbes contributors, Dan Wood for his part speaks about SaaS with the open source code as a new model providing more confidence and security for the customers. Woods gives an example of Drupal Gardens where end-users may just attain a source code version of the software code running their website including their data. Then the code can be used afterwards at the user’s discretion. In this case the opportunity of a copied code keeps the customers safer about their business.
Additionally, there is a range of other limitations to be aware of while getting acquainted with the SaaS technology:
Security and risks
As the data are maintained distantly and there is no direct access to it, data security is always in doubt.
Multiple users need to integrate a software as a service solution with their own current data. If the data is of large volume or if it requires careful handling the integration may turn out rather risky and expensive.
Seizure warrant laws do not guarantee the safety of the data belonging to SaaS. It means that the data misuse is avoided only due to the presumed integrity of the vendors who access the data at their own discretion.
Latency
Given that all SaaS applications are stored in the cloud it brings about latency in the software response. Thereby SaaS probably would not be acceptable for operations where the response is required instantaneously.
Customization
Multitenant architecture, as one of the main SaaS features, places restrictions on the degree of the customization in the application. As the solution is introduced to many users it cannot suit everyone meeting their individual needs.
Dependence on the vendor
There is always a probability to lose a current SaaS vendor due to different circumstances. Meanwhile changing a vendor entails certain risks related to data safety, integrity, and the process of its transferring.
Whereas users are tied to the provided software and are not able to choose the version, they have no alternative but repeatedly need to adapt and get used to an updated version of the application. It can introduce instability in the process of the application managing.
In case the vendor decides to retire from business or stop supplying the software, the customer has to look for a new SaaS provider, transfer all the data, and be ready for certain unforeseen costs.
Compatibility
SaaS solutions often need to be integrated with the user’s hardware, operating systems, and a utilized software. And it is a question whether the application is going to comply with the existing systems.
Internet connection
Internet connection always entails a possibility of power outages or speed declining. Internal network in any way provides a better connection and a higher speed.v
In view of the above customers must closely look at the service-level agreement offered by a SaaS supplier and ascertain that it is enforced.
SaaS Engineering Simulation
SaaS provides engineering simulation software as well as other applications though this kind of software is typically delivered as an on-premise product.
Engineering simulation is a solution intended to let users simulate engineering projects without a need to create physical objects. Thus through the technology it is possible to elaborate a range of complicated projects and schemes. Owing to it users can handle the following tasks:
- Compute complex formulas and constructions;
- Develop electrical circuits;
- Build a virtual model without establishing a physical object;
- Calculate a surface of a potential large object;
- Elaborate drawings of buildings, technical equipment, vehicles, etc.;
- Calculate potential loads to plants and factory equipment.
- Consequently, through engineering simulation provided as SaaS businesses and organizations don’t have to spend on extensive software and its installation but are able to use an application hosted and maintained by a third party.
SaaS statistics of the Proliferation
According to an electronic resource -
SaaS pricing model
Software's as a service pricing model is more beneficial rather than the one belonging to the traditional on-premise software primarily due to the multitenant architecture tying numerous customers. Furthermore, as compared to the traditional software it provides a recurring subscription, typically an annual or a monthly one. This allows users to disperse the expenditures over time without having to arrange a full payment at once. Additionally, the vendors of the cloud technology commonly provide one of the two pricing models: a pay-per-user model and a pay-as-you-go model.
SaaS pay-per-user pricing model
This kind of billing method is more common among the users. Under this type of billing an individual cost is brought upon each customer of a software as a service solution. Owing to the pay-per-user pricing model the application is ready to be used on all the devices including smartphones, tablets, laptops, pcs and others without any extra expenses. Users are able to pay periodically, for instance once a month.
Moreover, it is possible to exploit the pay-per-user pricing model to pay-per-multiple-users which implies that an individual cost is brought upon a particular group of users.
Pay-as-you-go pricing model
Under this type of billing method, a cost is incurred for a specified number of users and the level of resources required involving the storage space, the usage of CPU, etc. The customers pay for an agreed period of time of SaaS use. The pay-as-you-go pricing model is lucrative for the businesses to the extent that they have to pay only for the indeed required level of resources instead of having to pay the fixed rate for unnecessary services.
SaaS applications and users
Nowadays SaaS solutions are extremely popular with companies and organizations requiring diverse software for the successful business management. It has been integrated into practically all leading software organizations as it includes a large range of applications for the office. The following software functions can be gained through SaaS:
- Messaging and emailing;
- Payroll processing;
- Accounting;
- Invoicing;
- Database Management Systems;
- Development;
- Customer Relationship Management;
- Collaboration;
- Management Information Systems;
- Engineering simulation (e.g. CAD);
- Enterprise Resource Planning;
- Human Resource Management;
- Learning management systems;
- Content Management, etc.
Generally, SaaS perfectly suits organizations seeking to reduce IT department workload and the software costs. Consequently, the solutions mostly are popular with small and medium businesses, as rather than contributing money to a supplementary on-premise server capacity and new software versions, organizations are able to pay a recurring subscription fee without a need to install, maintain and update the software. The users always can expand and narrow the software requirements depending on the needs which in its turn affects the price. The staff as well becomes more productive since the IT department doesn’t have to deal with the on-premise software and hardware but are free to handle more essential problems connected with the company’s development. In addition, if there is a power outage or a security breach in the office of an organization exploiting SaaS, the personnel don’t need to worry about the data, its back-ups and safety because the vendor is in charge of it.
SaaS Examples
Dropbox
Dropbox is a service intended to let a user maintain all necessary files and documents right at hand. Dropbox data storage is displayed on a home screen of all the devices allowing to access the file, work on it, introduce changes, etc. without having to remain at the working place. It is as well possible to share the access to a file or a folder among working teams or individual employees. the users can set a password and even remotely wipe the information in case of necessity.
Microsoft Office 365
Microsoft Office applications such as Word, Excel, Onenote, PowerPoint, etc. have been the most frequently used services for the office work so far. Today Microsoft has extended its product to a cloud-based software - Microsoft Office 365. The service enables customers to compose new documents, introduce changes and share the access from any device supported by various operating systems such as including IOS, Android, and Windows. The users may connect with each other, comment on documents and suggest changes. It is also possible to exploit video conferencing.
Amazon Web Services
Amazon is well-known for its widespread e-commerce although so far it has gone beyond it and has developed an on-demand, cloud-based software delivery. Their services involve programs accessible through a pay-as-you-go pricing model. Today Amazon Web Services include about 70 diverse applications containing data storage, databases, computing, management tools, networking, and others.