The Evolution of SaaS

Jan 8, 2007 by

Regardless of whether one believes that Darwinian evolution is how the species of this planet came to be, most will agree that the premise and underlying structure of evolution is both powerful and to some degree measurable in the real world. One of the most important things to ask IS “Why study history and why attempt to understand the underpinnings of our origins?” The answer, in my opinion, is simple: we study history to mitigate risk in the present and future, and build on a foundation of measurable results. That said, understanding how SaaS came to be, and where it’s heading with the powerful concepts of the SaaS Platform and ecosystem. This complements one of my earlier posts regarding the categorization of SaaS, and I’m definitely looking for input as I view the unfolding of these definitions a communal effort.

I find that diagrams do a much better job at explaining concepts rather than multiple paragraphs of banter. As a result, I’ve put together a brief overview of how I see the evolution of SaaS unfolding. The evolutionary variable (measured over time) is how SaaS was/is implemented:

(bigger)

The timeline focuses how SaaS (On Demand) implementations have changed. Generally, implementation can be hidden from a user, but that’s not always the case. For example, a “streamed” application like Office 2007, while it would fall under the category On Demand, is far different than say Zoho’s web office, both from the implementation standpoint and the viewpoint of the end user. Looking at the timeline, however, one underlying theme is present: overtime, implementations converge to abstraction. We see this all the time in the IT industry, whether it’s the operating system abstracting the hardware layer (HAL), development languages such as C# and Java abstracting away some of the more difficult concepts such as memory management, our industry noticeably thrives on simplifying through abstraction. This is how we become more efficient, less vulnerable; abstraction helps us become a well-oiled machine and helps the end user see more and more value. With this abstraction also comes the ability to harness it as a common ground through concepts such as valuable SaaS ecosystems. Prior to platform and platform-esque implementations, the concept of the ecosystem would have been overly difficult to introduce and implement correctly. The evolution of SaaS is continually refining the various SaaS species to be more in-tune with the long term, ensuring that it’s here to survive the long haul (short of a catastrophic asteroid landing, of course).

SaaS is continually pushing towards a day where both use and development of SaaS applications is easier. Nonetheless, many of the early SaaS successes (Salesforce.com, WebEx, RightNow, etc.) were the precursors to this abstraction, which is something that the industry should value since they laid the groundwork for moving forward and turning SaaS into a viable delivery mechanism. Now, these same industry leaders are trying to move into a more abstract space with their own product-centric platform introductions. While they may succeed, history has shown us that it’s not the oldest species that survives, but the smartest, and these companies are going to face a slew of new SaaS platform players. These SaaS players are looking to enable the next-generation of applications for the enterprise, and hope to carry the genetics of SaaS but leave those early species behind with the dinosaurs.

read more

Taxonomy of SaaS Platforms

Dec 27, 2006 by

The advent of SaaS has ushered in quite an exciting (and still unfolding) age in the IT industry. By its very nature, SaaS brings ever more diverse sets of software functionality to a much larger audience. With this, however, has come a slew of new terms, old terms with new meanings, and new concepts. The single most important new concept, in my opinion, is the introduction of the SaaS Platform, or also known as an on-demand platform (full disclosure, Apprenda is creating a SaaS Platform). Nowadays, the word on the street ’platform this’ and ‘platform that’ but if we get down to the grit, what does ‘SaaS platform’ mean and how can we categorize different platforms?

In this post, I’m going to provide a simple definition of a SaaS platform (I’m sure I’ll expand on it in a later post). In essence, a SaaS platform is a software and hardware layer that allows the applications it hosts to be distributed in a multi-tenant, service fashion without having to explicitly engineer the distribution model. It can conceivably be thought of as the next level above the application server/application container (JBoss, IIS, etc.).; a ‘super container’, if you will. As I mentioned, the industry is abuzz with the word ‘platform ‘, but do they fit this definition? This was a question I struggled with for a while, and the answer is, yes! The problem is, everyone is referring to the concept of platform from different angles. Some vendors have reclassified complex APIs as platforms (undoubtedly thanks to creative marketing), others have aligned and augmented these APIs with a vertical/horizontal ecosystem, while still others have defined something even more general. This creates a confusing message to the industry. My goal with this post is to detangle this message and break it down to a purer form. Each of these adheres to the aforementioned ‘SaaS Platform’ definition at some level, but they are different in that they aim to achieve different goals. For example, Salesforce.com has heavily touted its platform for some time now. Initially, the platform was a robust API that allowed other vendors to tap into Salesforce.com’s powerful application model and build added functionality into it. Later, Salesforce.com moved away from this and created something known as the AppExchange, which became an ecosystem for CRM-aligned SaaS applications built on their platform. Recently, Salesforce announced a new, more powerful platform named Apex that supersedes all previous notions. Notice anything? They called each one of these a platform,
and to some level, rightfully so. The concept of platform has transcended the deliverable, scorching a path through multiple implementations. Similarly, companies including NetSuite and WebEx have announced intentions to release or have already released platforms of their own. All of these platforms vary in form. This variation allows us to generally bucket each platform into 4 broad classifications:


(bigger)

The nesting in this quasi-Venn diagram serves a purpose, but I’ll get to that in a minute. The breakdown is relatively simple:

  1. Product-centric SaaS Platforms – A platform that relies on a core application or product for consolidated data and/or functionality. This type of platform is very much a hub-and-spoke system where the product lies in the center and platform tenants (other applications) tap into and extend the product. While a ‘marketplace’ may form, the more formal public ‘ecosystem’ concept generally may not exist. Examples include API-linked SaaS applications like RightNow and Taleo.
  2. Vertically Aligned SaaS Platforms – A platform that attempts to consolidate common functionality for an industry vertical and provide that functionality as a commodity to its tenants. This allows for an ecosystem to develop around a niche market with the platform provider at the center. Ecosystem strategy and goals may be influenced by the providers needs.
  3. Horizontally Aligned SaaS Platforms – A platform that attempts to consolidate common functionality for a horizontal. This allows for an ecosystem to develop around a niche market with the platform provider at the center. Ecosystem strategy and goals may be influenced by the providers needs. Examples include Salesforce.com’s Apex and WebEx Connect.
  4. General Purpose Platforms – These are platforms that aim to consolidate SaaS functionality and provide value-added services for tenant applications to tap into. Their goals tend to be delivery-oriented. Generally, ecosystems within this category are not dependent on the provider, but rather the platform provider may act as an aggregator with no underlying goal other than success of the application providers residing on the platform. Apprenda’s upcoming SaaS platform is an example.

The classifications help identify the ‘out of box’ experience, and generally also helps shape implementation expectations. As I mentioned, the nesting is also important; it identifies containment and overlap potential. An application platform (product-centric) can be built on top of an existing vertical, horizontal, or general purpose platform. Similarly, a vertical/horizontal platform and ecosystem may develop within a general purpose platform.

I plan on expanding on this taxonomy in the future, so definitely feel free to comment!

read more

Forget Web 3.0 – Let’s Talk Software 3.0

Dec 18, 2006 by

If all SaaS was meant to be browser-based, it would have been called ‘Web Apps As A Service’ (WaaaS). So let’s not forget that when we’re talking about SaaS, we’re talking about the evolution of software, not just web apps. Given that, it’s a bit incorrect to say that SaaS is the natural evolution of Web 2.0. Instead, consider Web 2.0 to be an augmenter in the evolution of software. Perhaps SaaS would more accurately be called Software 3.0, rather than Web 3.0.

Thanks. I have to get that off my chest because believe it or not in browsing blog posts and comments across the web as of late, I still see many people saying things like “check out my site at www.something-that-ends-in-r-because-I-shortened-er.com. It’s a SaaS mashup that is the future of Web 3.0!” To which I reply…. “Huh?”

Web 2.0 in all its rich, protocol-driven, glory undeniably brought the user experience portion of Internet-based services, or web applications, closer to our familiar traditional software experience. But let’s not forget that as a whole this paradigm shift which we’re in is in fact called Software as a Service for a reason. Just because we happen to have undergone a user experience mutation in recent years, and now we append ‘as a Service’ to it, doesn’t mean we have to abandon our notion of what software actually is. According to Dictionary.com, software is “anything that is not hardware but is used with hardware.” Whoa. That’s a lot of things, that software.

An analogy: When you go to a restaurant and order a steak, you are receiving that steak as a service rather than cooking it yourself at home. Either way, it’s still a steak. While it may be flavored differently, it doesn’t take on different properties as a steak because it was prepared in someone else’s kitchen. The same thing prevails here – SaaS dictates that you use software cooked in someone else’s kitchen (the service), but don’t accept anything less than real software. In other words, don’t accept Web 2.0 when you’re really looking for SaaS – because if you do, you’re only getting a piece of the action. Consider Web 2.0 to be a mutation in the evolution of Software, but don’t forget that there’s a whole lot more to software that is still required for it to be software.

In late 2005, Phil Wainewright of ZDNet SaaS Blogs started an interesting series of articles with an introductory piece called “What to expect from Web 3.0“. In it, he asserts that Web 2.0 is merely a staging ground for what will ultimately become ‘a much more mature and durable Web 3.0 era’. Noting companies like Google, Amazon, and eBay as the major players of the Web 2.0 phase, he rightly (*sob* Writely) drops names such as Webex, Netsuite, Jamcracker, and of course Salesforce.com as potential leaders in this new Web 3.0. In setting up the piece, Mr. Wainewright stresses distinctions between his notions of Web 2.0 and Web 3.0 by drawing a topology of Web 3.0. A piece of this topology is a layer known as ‘Service Clients’. To paraphrase the article, these are enterprise application clients as we know and love them, but with the augmentation that they are themselves provided as services. Fundamentally, we are talking about virtualization and service a la SoftGrid™ . However, let’s not go too far in this direction either.

So, does SaaS mean Web Apps? Mashups? Virtualization? Application Streaming? Thick Clients?

The answer is YES.

Incidentally, this is why the SaaS platform space is so interesting right now. There are platform players arriving on the scene everyday bringing enablement to the table. But who’s going to bring the SaaS platform that is so general purpose and all-encompassing that it allows vendors to produce the real software of the Software 3.0 era?

In summary, take a look at this fundamental diagram that shows Web 2.0 simply as a modifier to the progression of software:

read more