SaaS Maturity Model by Microsoft

A simple SaaS maturity model was proposed by Microsoft in 2006. This four level model uses three basic fundamentals to define its various stages. These are:

  1. Scalability – the applications should be scalable
  2. Multi-tenancy – the applications should be able to cater to many customers to ensure its cost effective
  3. Configuration – the applications should be customizable

Apart from Microsoft, Forrester has also published its maturity model for SaaS

Based on the above three fundamentals, following four level maturity model was proposed:

 


                                                              Exhibit 1: SaaS maturity model by Microsoft


The descriptions of various levels are provided below:

  1. Level 1: Ad-hoc / custom: At this level, every customer (tenant) is provided a separate copy of the software. This can be highly customized (but not through configuration, but by actual code / processes, etc.) to client needs but lacks both scalability and multi-tenancy aspect. This level is least cost effective as no economies of scale are harnessed. Thus characteristics of this level are:

    • Scalability – No
    • Multi-tenancy – No
    • Configuration – No
  2. Level 2: Configurable: In level 1, while the customers still work on individual copies, the applications are customized by changing configurations and not by writing custom code / processes etc. In this level, the base code remains the same, but it is still no scalable and cannot support multi-tenancy. Thus characteristics of this level are:

    • Scalability – No
    • Multi-tenancy – No
    • Configuration – Yes
  3.  This level includes multi-tenancy concepts. Same applications are served to multiple customers who can customize these through configuring a self-service tool. Thus characteristics of this level are:

    • Scalability – No
    • Multi-tenancy – Yes
    • Configuration – Yes
  4. Level 4: Configurable, Multi tenant and scalable: This level adds scalability to level 3 offering. In this state a load balancer is introduced to maximize the utilization of storage and processing power. This level allows creation of new instances and adds them to the dynamic pool of instances. Because of these characteristics, the level is also scalable. Thus characteristics of this level are:

    • Scalability – Yes
    • Multi-tenancy – Yes
    • Configuration – Yes

While very simple to understand, the authors of the model pointed out the following limitations / drawbacks of the model:

  1.  Bit too artificial and does not include client requests such as data isolations, etc.
  2. Does not touch upon the topic of versioning and upgrades of single instances
  3. Does not tell how to move from level N to N+1