A SaaS solution can be implemented according to four different levels of maturity (summarized in the following figure).

SaaS Level 1: Custom Tenant
The first level of maturity of a SaaS solution is similar to the software delivery model of the first Application Server Providers (ASP). Each client (or tenant) has its own customized version of the application hosted and uses its own application instance, sharing with the other customers only the lower layers of the IT infrastructure. This SaaS model is based on the sale of a limited number of software functions through a rental agreement. In this model, application maintenance is particularly complicated and time-consuming. If a bug is identified, the resolution of the problem must be applied for each different instance and each must be individually tested, validated and re-initialized. This is why ASPs generally offer their services at a very high price. Traditional traditional client-server applications can be transformed into the first level of SaaS with a relatively low effort and without the need to redefine the architecture of the entire system. Although this level offers few benefits compared to a mature SaaS solution, it provides a cost reduction through the consolidation of hardware and administration.

SaaS Level 2: Configurable applications
At the second level of maturity, the SaaS model requires the vendor to host a separate application for each customer (or tenant). All instances use the same implementation code and the SaaS vendor responds to different customer needs by providing multiple configuration options that allow you to customize the look and set of features for end users. While sharing the same code, each instance remains completely isolated from the others. The transition to a common code base for all allows us to considerably reduce the software update effort: every improvement to the code made necessary for a customer is immediately available to all others, eliminating the need to update every single instance. On the other hand, turning a traditional application into a SaaS application to the second level of maturity can require a much greater effort than switching to the first level. This SaaS model also requires that the vendor has a sufficient amount of hardware and storage available to support a large number of applications running concurrently.

SaaS Level 3: Configurable Applications and Multi-Tenant
At the third level of maturity, a SaaS vendor through a single application instance provides service to all customers. Thanks to the use of configurable metadata it is, in fact, possible to provide a graphical interface and a set of customized functions for each customer, guaranteeing the confidentiality of each client’s data through security policies. This type of approach eliminates the need to provide the resources needed to execute an instance for each client, and takes the form of more efficient use of computational resources and significant cost savings. A significant disadvantage is represented by the scalability of the application limited by the power of the server on which it is executed.

SaaS Level 4: Configurable, Multi-Tenant and Scalable Applications
At the fourth level of maturity the SaaS vendor manages multiple clients on a server farm capable of balancing the load. A SaaS system of this type is arbitrarily scalable based on the number of users, the number of servers and instances can be changed without having to modify the applications and the bugs can be corrected for all customers with the same simplicity with which they change for one only.

Evolution of SaaS
With the entry of Enterprise customers into the SaaS market, we are witnessing an increase in requests for changes and customizations and the emergence of a seemingly “hybrid” model between the hosted and the pure-play SaaS. Larger customers require integration with their existing applications, a flexible service distribution model and an evolution in functionality. This new generation of SaaS embraces both a multi-tenant and a single-tenant code, eliminating some of the first economies of scale. Customers are asking for a check on updates, configurations and customizations, as well as integration with their IT. The pricing model is evolving towards a hybrid between a license and a flexible subscription.