Tuesday, January 15, 2008

The difference between "ASP", "On Demand", and "SaaS"

What is the difference between ASP, On Demand, and SaaS?

I am frequently asked about the difference between the terms: Application Service Provider (ASP), OnDemand, and Software as a Service (SaaS).

Simply put, OnDemand Software refers to the delivery of software over the internet on a subscription or per transaction basis. OnDemand software is created in one of two ways. The first option, (v1.0) utilizes an ASP to convert legacy software applications (software that was not designed to be deployed over the internet) and the applicable hardware to fit the OnDemand definition. The second option, (v2.0) is for Independent Software Vendors (ISVs) or SaaS Enablers to develop the software from the ground up in accordance with the SaaS concept.

On Demand or “OnDemand”

OnDemand software refers to software that is:

(1) Accessed via a commonly used protocol such as the http (web)
(2) Priced in a cost-effective manor (subscription or per transaction versus capital investment)
(3) Requires the ISV or OnDemand company to maintain the software (often with the use of service level agreements or “SLAs”)
(4) Is hosted or resides at a centralized facility
(5) Capable of of immediate quick utilization (hence “on demand”).

As stated above and clarified below, there are two ways of making software available OnDemand.

Application Service Provider (ASP)

The concept of ASPs is far from new. Non-internet ASP models evolved piror to the conception of the internet. The airline industry provides an example of a non-internet ASP concept. I recommend visiting the article found at http://computer.howstuffworks.com/asp1.htm to further understand the concept of a non-internet ASP.

ASPs on the internet were the first companies to deploy, host, and manage access to traditional software (i.e. packaged) applications to multiple clients from a centrally managed facility. The traditional software applications and hardware infrastructures were converted to allow clients the ability to access the application over the internet instead of installing the software onsite.

As a result of this new delivery method, software pricing models began to change. Now that the ASPs had full control of the software, payment could be collected on a “pay-as-you-go” or “per transaction” basis. This revolutionized the software industry mainly because customers who normally could not afford the capital investment of software could afford a subscription based model. Think of ASP’s as the version 1.0 enablers who took existing applications which where not intended to be web-accessable and made them available to clients over the web for an affordable investment.

ASPs lead the way for delivery and pricing software as a service instead of consumers purchasing a software product. ASPs have several limitations based on the development of legacy software. These limitations are what lead to the concept of building and delivering new software in the SaaS model.

Software as a Service (SaaS)

You probably have a good feeling of what SaaS is now. SaaS is a model of software delivery (all activities that make a software available for use). Software in the SaaS model is paid for on some form of consumption basis (rather than the traditional perpetual license) and the application and server side hardware infrastructure is hosted, maintained, enhanced, managed, and upgraded the SaaS provider.

Links for more information

http://www.idc.com/getdoc.jsp?containerId=33453&pageType=PRINTFRIENDLY#33453-S-0001 - IDC 2005 software as a service taxonomy and research guide. This is a great research paper for anyone interested in SaaS.

http://www.wikipedia.org/ – This is a great site to look up definitions such as OnDemand, ASP, SaaS, ISV, etc.

Saturday, January 5, 2008

The Evolution of Software Licensing

Traditionally, software licensing strategies have been dominated by the concepts of fear and piracy to embed complex licensing and/or cumbersome licensing schemes into perpetually licensed software products. This tactic has proven to be highly profitable for market leaders in this space such as Macrovision and generated strong industry wide competition and innovation from competing companies such as SafeNet, Reprise, and Agilis.

The problem with a perpetually licensed approach is that the bells and whistles embedded into these schemes are often misused by customers and create customer dissatisfaction and resentment. Complex licensing schemes are difficult to implement, hard to maintain, and difficult for customers to use. Additionally, these schemes often prevent honest customers from purchasing additional seats because it is difficult to monitor usage. Finally, companies who make use of all available licensing features often find they have created a product management nightmare.

Honest customers want to remain honest and comply with the terms of licensing agreements. Software companies want to protect revenue streams by ensuring compliance and preventing piracy, as well as expanding usage. Meeting all of these demands in the perpetual licensing model is difficult at best.

The SaaS model solves this problem by being inherently tied to the concepts of subscription and usage. The majority of SaaS applications today make use of basic username/password authentication schemes to grant access to all or some of a SaaS based application. This model is much more eloquent than having to request or reset perpetually based licensing features. In this model, the burden of license management is removed from the customer and passed onto the product management function of the SaaS provider. Successful SaaS applications build restricted access relationships into the offering and tie roles and rights to an authenticated user. Thus, when companies want to add users or subscriptions there is typically a self-service module to facilitate such requests and existing agreements or credit cards are charged appropriately without modification.

For SaaS companies that have considered the product management aspects of subscription or metered consumption before deploying their SaaS application, this is a wonderful model for facilitating additional usage and/or subscribers. For those companies that have not thought through subscription access, there is a strong market need for the development of a SaaS based subscription management service that assists SaaS companies in managing and developing subscriptions within their SaaS applications.

Nevertheless, the SaaS based licensing model provides an eloquent evolution for license management.