Tuesday, May 23, 2006

Software as a Service (SaaS)

Expressed most simply, software as a service can be characterized as follows:

"Software deployed as a hosted service and accessed over the Internet."

It doesn't prescribe any specific application architecture; it doesn't say anything about specific technologies or protocols; it doesn't draw a distinction between business-oriented and consumer-oriented services, or require specific business models. According to this definition, the key distinguishing features of software as a service are where the application code resides, and how they are deployed and accessed.

For example, consider Web-based e-mail services, such as Microsoft Hotmail. It meets all of the basic criteria: a vendor hosts all of the program logic and data, and provides end users with access to this data over the public Internet, through a Web-based user interface.

From an application architect's point of view, there are three key differentiators that separate a well-designed SaaS application from a poorly designed one. A well-designed SaaS application is scalable, multi-tenant-efficient, and configurable.

SaaS is going to have a major impact on the software industry, because software as a service will change the way people build, sell, buy, and use software.

Adopted from Architecture Strategies for Catching the Long Tail by Frederick Chong and Gianpaolo Carraro.


Post a Comment

<< Home