Cloud Computing Overview (Part 1)

Thanks go out to Richard Goering for his recent blog post about Hybrid-SaaS.  At the end of Richard’s post he thought a definition of the different layers of the stack would help, so this is a much simplified series of summary descriptions for each of the layers.

The Cloud Computing Stack

Starting at the beginning, below is the three layer Cloud Computing stack.  We start at the application level with the Software-as-a-Service (SaaS) layer.  I recently learned that the term was coined by David Thomas, (CEO and Founder of Intacct, now at TechAmerica) in a “gathering of the clans” at the salesforce.com offices in San Francisco involving Marc Benioff and a number of other early SaaS leaders in the early 2,000’s.  The objective of the meeting was to come up with a term to differentiate themselves from “ASP“s, but I digress. 

SaaS is the delivery of the end-application within a browser.  Next down is the Platform-as-a-Service (PaaS) layer and represents a collection of development tools, API’s, and resources used to create SaaS applications.  Finally, there is Infrastructure-as-a-Service (IaaS); a collection of (usually) virtualized compute, network, and storage resources.

Cloud Computing Stack

 SaaS Layer

This is the piece of Cloud Computing that we come into contact with everyday (every hour!?).  It is Facebook, Google Docs, LinkedIn, Virgin’s online booking app, Expedia, etc.  It is a remote application accessed and used via a common web browser.  There are no downloads, no installations, and no licenses to deal with.  Although consumer applications do not have Software License Agreements (SLA), many B2B (Business-to-Business) apps do have SLA’s, especially when deployed throughout an enterprise.

Implicit in the fact that SaaS is remote, and nothing needs to be installed - no servers and no IT required.  Two of the especially sweet reasons to go with SaaS.

Within each application there is the core functionality that delivers the value of the application.  The app engine, if you will.  This holds the secret sauce of an application, the core algorithms and differentiated functionality.  Outside of this, there is a varied collection of fairly standard components (see diagram below).

There are usually at least two interfaces or views of the app, and often there are more depending upon privileges .  An administrator view and a user view.  Below this layer is a collection of common services, such as Identity Management, Access Control, Analytics, etc.

All of these components need to be seamlessly integrated for usability and security purposes (why bolting something together around a Google Group, for example, doesn’t work).  Security needs to be integrated across the entire app to ensure functional and data integrity.

Software-as-a-Service
Software-as-a-Service

Last, but not least, there will be a database that underpins everything.  The database is on the boundary between SaaS and IaaS and is commonly MySQL in most SaaS applications.

The entire app must be “infinitely” scalable.  Meaning that any number of users can start using the application at any given time.  In the bad-old days, in order to manage any spiky traffic, this meant leasing a whole mess of servers from a hosting provider.  Now we just develop the app on a scalable provider, such as Amazon’s EC2 and we’re good to go…as long as your credit card doesn’t max out ;-)

SaaS vs Client App Development

In my last blog post, I gave a collection of reasons why many enterprise software applications will have a hard time converting into a SaaS application.  The greatest technical reason is architectural - moving from a single-user client app (”single tenant”) to a mult-user server-based app (”multi-tenant”).  A Service Oriented Architecture (SOA) may help this transition, but there’s still a lot of work to do…in fact, the reality is, the endeavor will be a complete re-write.  (As a point of reference, I was talking to an Enterprise Software developer the other day, and he said his application had 11 Million lines of code…)

Also, the languages used are different - Javascript, Java, and php (or Python).  Thanks to all of the web startups out there, php and Python (”backend”) developers are hard to come by.  And so a move over to SaaS would imply a massive re-training effort.

I hope this was a useful summary.  It is in no way intended to be exhaustive.

If you know of any useful references, please add them in the comments.

Next up, Platform-as-a-Service, or PaaS.
Connect with me:

Posted under Xuropa, industry

This post was written by James Colgan on April 26, 2010

Tags: , , ,

SaaS not for all Enterprise Software Apps: Hybrid-SaaS Required

“Huh?”, I hear from my friends,  ”SaaS (Software-as-a-Service) isn’t for all Enterprise Software?”  Let me explain.

This has been something I’ve been talking about from “the beginning“, but never got around to putting it up here for discussion.  I was finally prompted by a conversation I had over dinner with Richard Goering last week at the EDP Symposium and Workshop.  I could tell that he wasn’t expecting this perspective from me, and his question was a follow-up of what I’d said in my presentation earlier in the day.

The reality is, the world is not as as straight forward as some would have us believe - especially in some markets.  Thousands of software applications have characteristics that create barriers so high that delivery in a “salesforce.com“-like SaaS manner doesn’t make sense.  At least for a long time.

Now that we have a clearer definition of what SaaS is within the Cloud Computing stack, and we have a fuller understanding of the use models of software applications, we can more clearly see and articulate the nuances, layout the challenges and reasons why SaaS doesn’t make sense all the time, and what the alternatives are.

Software-as-a-Service Characteristics

Firstly, starting at the beginning, here is the Cloud Computing stack (I’ll go into more detail in a later post).

Cloud Computing Stack

Cloud Computing Stack

The top layer, SaaS, today includes applications such as CRM , online docs, tax preparation, social networking, etc.   The characteristics of this layer most relevant to our conversation are:

  • These applications were written from the beginning to be web-based
  • They are applications that deal with what I consider the outer-circle of a company’s IP (a Rolodex, business processes, for example)
  • They do not require interoperability with any other software application or data
  • The user interface is consistent across all users
  • In the main, these applications were created by market segment newcomers

Platform-as-a-Service Characteristics

The second layer, Platform-as-a-Service (PaaS) is a bundling of compute resources, storage facilities, datasets, an integrated development environment (IDE), and some proprietary APIs.  The characteristics for this layer are:

  • Tools to develop, debug, and deploy new software applications
  • You have to use the infrastructure of the PaaS vendor

Enterprise Software Requirements

When we step beyond the “safe” outer layer of IP and start dealing with the “crown jewels” of a company, what do we find?

  • An installed base of millions of lines of code that has been used for years or even decades
  • Applications that work with (or are used to generate) a company’s core IP
  • IP protection concerns vary
  • Applications that are part of sophisticated and complex flows of third-party applications and databases
  • A varying degree of customization in order to meet customer-specific work flows, data formats, and other internal “standards”
  • Vendors with shareholders and investors that base their investment upon expected business models and revenue streams

The Rub

All of the above enterprise software characteristics present challenges to a company in moving to a SaaS model.  However, the most crucial aspect of this list is that it’s not all one-sided.  If the list were purely issues for the vendor or the customer, then a straight forward migration can be imagined due to simple market forces.  But when both sides of the purchase equation have reasons to stick with the status quo, migration is stymied to the point when only a really large economic imperative causes the shift to occur out of necessity…or it takes a much longer time for the natural migration to occur.  It took Salesforce.com about 10 years to go from being an ASP startup to a $1B SaaS company.  Even though the rate of change is increasing, we’re still talking about a while.  Don’t believe me?  Have you taken a look over a bank tellers shoulder recently?  Or an airline booking agent?  Surprised to see the DOS app running there?  It’s running in a shell, but it’s still DOS.

Having said that, the transition will occur.  The question is, “How?”.  It will be a while before companies go out and rewrite their software to be “pure-SaaS”.  In the meantime, we need to look to scenarios where a move to the cloud makes sense, and we need a different type of SaaS to support the move.  Let’s call it “Hybrid-SaaS”.

The Move

I don’t think there’s any argument that we have an economic imperative and cloud computing is very attractive.  So the pieces will eventually fall into place, but what will that transition look like?  Here are two plausible scenarios:

The Little Guy

This would be a small company with a limited sales channel and a need to find growth somehow.  So they’d be more willing and able to explore mixed business models easily differentiating between product brand, level of service, market segment, or geography, etc.  If they have a differentiated product, great, but if they’re competing with an incumbent the agility of a Hybrid-SaaS model may provide them an edge in penetrating “the long tail” of a market.

The New Product

This is a new product within a large and established company.  The scenario is exactly as Geoffrey Moore described in a presentation I attended a few weeks ago.  Although the large company has a strong and established sales and support channel, the challenge to the new product is that it is essentially ignored.  The new product is risky for the sales organization as it could sour a relationship if something goes wrong, and that could impact existing business.  Also, the new product is not likely to be purchased “in volume”, and so the return on what would be a hard and long evangelical sale is not there.  This scenario kills new products and hinders large companies moving into new market segments.  Another opportunity for “Hybrid-SaaS”

There are more, but this will do to get us started.

Getting Started

So now we have a couple of realistic scenarios in which a company or a business unit would consider moving to the cloud.  The economic imperative is established, but so many hurdles remain.  In a later post I’ll go into more detail (this is already getting way too long) of what Hybrid-SaaS looks like, but for now, let’s break down the problem and go back to our friend Geoffrey Moore.  This is the Technology Adoption Curve, it’s inevitable, and we need to start somewhere.

Hybrid-SaaS

If we were to put software into the cloud, what would the solution need to look like?

  • No re-write of the product code
  • Easy installation of the software as-is
  • Zero IT overhead
  • Cloud and data center agnostic
  • Manageable by marketing, sales and applications engineering
  • Easy, secure, and manageable access for customers
  • No change in licensing mechanisms
  • No client-side installs
  • Scalability across an entire market
  • Collaboration tools
  • Management tools

The solution needs to meet these requirements technically.  Because we’re not going to re-write our code, we need to start at the infrastructure layer (IaaS) and build up.

We also need to look at some early adopter use-models.  Scenarios that get value out of the cloud in a way that is in line with business objectives.

How do we leverage the Cloud?

Using the cloud and monetizing the delivery of software via the cloud may be too much of a challenge initially.  IP is still a concern to many customers.  Business models need to be tested, etc.  However, there are ways that the cloud can be used to materially impact a business, increase revenues, lower the cost of sales, and shorten the sales cycle.  Here are some of the usage models for when your software is on the cloud in an environment that meets the above requirements:

Pre-Sales

  • Lead generation
  • Self-qualification
  • Self-education
  • Training
  • Evaluations

Post-Sales

  • Account penetration
  • Self-education
  • Training
  • Upgrade campaigns

Development

  • Third party collaboration
  • Beta testing
  • Focus groups

Using the cloud in this way, value is extracted and existing business models are maintained and actually enhanced.

Fundamental to all of this activity is a deepening of the engagement between the vendor and the user.  From this point we can begin to approach the chasm with a greater understanding of what life on the other side should look like for both sides of the vendor/user equation…because it’s not straight forward.

Posted under Xuropa, industry

This post was written by James Colgan on April 16, 2010

Tags: , , , , ,

Cloud Computing and Electronic Design Presentation: EDPS 2010

Last week I had the honor and the pleasure of presenting Cloud Computing and Electronic Design at the Electronic Design Processes Symposium in Monterey.

It was interesting to find that many of the members of the audience have used or are using Cloud Computing in some capacity within their work.  Not surprisingly, most implementations are still ad hoc or experimental.  However, there were a significant number of discussions leading to more formal adoption of Cloud Computing.  We’re definitely moving…

Here is the presentation I made.  Is your company using or looking at using Cloud Computing?

Posted under Xuropa

This post was written by James Colgan on April 12, 2010

Tags: , , , , ,

Need to get 4TB into the Cloud? No problem!

Great news from Amazon Web Services (AWS) yesterday - they’ve made it easier to get your data up into the cloud.  All you have to do is ship them the raw SATA drive and they’ll plug it in.  Easy!  And they’re now accepting capacities up to 4TB.

This is why we work with AWS - they’re constantly raising the bar higher and higher.  They take care of the infrastructure, and we deliver the Platform and Software layers to our Enterprise Software customers.

Anyone out there need more than 4TB?

This announcement got me thinking about the other direction of the data transfer that still hounds Enterprise Software vendors.  Most vendors still deliver most if not all of their products as client-side installs. 

With the goal of lowering the cost of sales, software and tools vendors enable customers to download from their website (the cloud) evaluation versions of their products.  This would be fine if these distributions hadn’t grown to be hundreds of megabytes themselves!  A very large semiconductor vendor told me that it takes a customer 3 1/2 hours to download their software over a T1 line in North America.  And of course, it takes many attempts for it to be successful.  Not a scalable model and one of the many reasons why we promote moving evaluations and pre-sales training to the Cloud using Xuropa.

The reality is, this problem is only going to get worse.   (Numbers provided by OECD.)

WW Broadband Penetration, OECD 2009

WW Broadband Penetration, OECD 2009

Broadband Pentration Growth, OECD 2009

Broadband Pentration Growth, OECD 2009

Software distributions are only going to get bigger, and with broadband penetration low and not climbing at a huge rate, something needs to change.  Of course, corporations will always be at the forefront of broadband adoption, but the rise of virtual teams and off-site workers will continue to exacerbate the problem of a lagging telecommunications infrastructure.

Although a full SaaS model would remove this problem.  There are many other obstacles and reasons why a complete move would not work for many of these software vendors.  However, moving the front end of the acquisition process (pre-sales training and evaluations) just makes sense.  Doesn’t it?

Posted under Xuropa, industry

This post was written by James Colgan on March 10, 2010

Tags: , , , , , , ,

SaaS Landscape Mostly Over the Horizon

Courtesy of "Hameed"

 

Phil Wainewright writes a very informative blog over at eBizQ that brings in his thoughts, observations, and views on Cloud Computing and SaaS (Software-as-a-Service).  Really good stuff that I highly recommend.

Every now and then I need to pinch myself though.  In a recent post, he wonders if standalone Enterprise 2.0 (think, “social networking tools inside the corporation”) vendors will survive as more SaaS vendors integrate these types of features into their products.  It’s an interesting thought, but already?

For this to happen, all customers of software will have moved at least one of their “ubiquitious apps” to a SaaS vendor that has incorporated one or more of these corporate-social feature-sets.

Although Salesforce.com have made great in-roads, and Google has shown how to get into large corporations or government agencies with gmail, two numbers from Gartner should give pause:

Given that SFDC revenues will likely account for 10% of the forecast SaaS revenues for 2013 and the huge gap between the two numbers overall, it appears likely that the Enterprise 2.0 vendors will have a large enough market to go after. 

Taking a step back a bit, considering where we are in the technology adoption curve for SaaS overall, and how much uncertainty exists around how the landscape will look ultimately, isn’t it too early to call the demise of any SaaS player?   

For some time to come, there will be a need for technologies and applications that operate at the Platform level to fill gaps and smooth interoperability between products, solutions, and platforms.  Even though ultimately many of these point solutions will be acquired or spun-out as economics and strategic positioning dictate.

Rather than looking over their shoulder for a SaaS player integrating their functionality, they should be more concerned about serving the market that’s out there, providing value, and generating revenues.

We still have a long way to go…

Posted under industry

This post was written by James Colgan on March 8, 2010

Tags: , , ,

The Xuropa Platform - Your Software in the Cloud

The Xuropa Platform is used by Enterprise Software vendors to deliver their products via the cloud as-is. “Cloud agnostic”, the Xuropa Platform provides the web experience, user management and analytics, and sales and marketing tools to deliver your application within an engaging web experience.

The Xuropa Platform can be used to deliver remote hands-on demonstrations, evaluations, and training. The platform can also be used for full Software-as-a-Service (SaaS) delivery and monetization of your enterprise software.

Watch the below video to find out more.  Even better, contact us for a demonstration and to take the cloud for a spin! saas at xuropa dot com.

Posted under Xuropa

This post was written by James Colgan on February 26, 2010

Tags: , , , , , ,

Cloud Computing – A Rose by any other name?

It is a testament to the times that as a new burgeoning technology is hatched by an ”army of geeks” in a caffeine drenched frenzy, I can have a conversation at a party with a lawyer from a completely different field and find that he already has a rudimentary grasp of that same technology - Cloud Computing

Even if I normalize for the natural demographic skew of my location (San Francisco), it is impressive to consider how quickly this phenomenon has progressed towards the mainstream.  Clearly, the message has a lot to do with the rate of transmission. 

Software-as-a-Service“, or worse “SaaS”, didn’t catch the imagination as well as “Cloud” did.  Which is ironic considering SaaS is actually what the consumer/user really interacts with.  What was originally represented by “The Cloud” was a metaphor for all of the networking, server hardware, protocols, etc. that no user in their right mind would want to know even existed, never mind have to understand. 

Even Marc Benioff, CEO of Salesforce.com, the original “Software-as-a-Service” company, writes in his letter to shareholders, “We have become the first enterprise Cloud Computing company to report more than $1 billion in revenue.”  He may argue that this is in line with their Force.com strategy - providing their compute power in the form of a “Platform-as-a-Service” (here we go again) – Sales Cloud 2.  But considering where the vast majority of those $1 billion came from, it more reflects the company’s savvy marketing team.  If a Cloud Computing company were to be defined as any company that provides compute resources as a utility, then wouldn’t Amazon have been the first $1 billion Cloud Computing company the moment they turned on AWS?  “SaaS” appears to have lost its luster and “Cloud Computing” is the “new black”.

The reality is, what you call something does matter.  And every successful company out there knows this.  To throw up your arms and quote Shakespeare is to miss the point, and likely doom your company/product to failure in the process.

To give something a name is to give it meaning.  Even better – a name should imbue the audience with a passion, an image, something that goes far beyond its function.  “Cloud Computing” does that, with very little effort….”SaaS” needed an education cycle, time, and resources, and the market really doesn’t have that kind of patience.

(If you’re curious, in 2006 SFDC was all about “CRM”, and press releases in 2008 described the company as “…the market and technology leader in Software-as-a-Service (SaaS) and Platform-as-a-Service (PaaS)”.)

Posted under industry, marketing

This post was written by James Colgan on February 12, 2010

Tags: , , ,

Dilbert on Cloud Computing, SaaS, and Outsourcing

Dilbert.com

 

Maybe the benefits of the technology are slightly exaggerated here ;-)

Posted under Humor, industry

This post was written by James Colgan on January 19, 2010

Tags: , , , ,

Environmental Effects of Cloud Computing

Photo via Tipiro

Photo via Tipiro

It is interesting to see the recent commentary regarding the environmental effects of Cloud Computing, and I’m happy to see the dialog coming while the industry is still in its infancy.  If only the same could have happened with the automotive industry - what a different world we’d live in today!

As Reuven Cohen (CTO of Enomaly, a Cloud provider) writes,

“The general consensus says that reducing the number of hardware components and replacing them with remote cloud computing systems reduces energy costs for running hardware and cooling as well as reduces your carbon foot print while higher DC consolidation / optimization will conserve energy.”

But as Mr. Cohen and James Urquhart (Product Marketing Manager, Cloud Computing and Virtualized Data Centers at Cisco) agree - there is no proof.  There is no standard measurement or parameter that everyone agrees indicates that the net result is better or worse for the environment.  And so for now we’re really discussing the hypothetical and using deduction to point us in the right direction.

One point we can all agree on - as a civilization, we’re doing more computational work now than ever before.  Of course, this will only continue to grow, and exponentially. 

Think about the rate of increase in the number of people performing some sort of computation (for example, the 300+ million members of Facebook all uploading photographs and playing Mafia Wars) and the rate of increase in the amount of data to be manipulated (consider a 5 megapixel camera built into everyone’s phone, or everyone watching Avatar in HD on Hulu).  All the while, in the cloud, processors will be running algorithms to deliver the experience while constantly making adjustments as they dynamically navigate the trade-off between data size, connection speed, and client performance (processor and screen resolution).

The question is, are we more environmentally friendly doing all of this in a shared Cloud or on our own datacenters?

Mr. Urquhart’s reasoning takes us in a positive direction,

“I believe one thing to be true: the increased efficiency of the hardware components in most cloud data centers and the increased utilization of these components mean that we are almost certainly doing more work per unit of energy consumed than before.”

But on the face of it, I can only agree with part of this.  Indeed, greater efficiency built into the hardware is a good thing for the environment - the lower the power consumed and the greater the amount of work done per clock tick of the processor is good.  However, greater utilization of that hardware due to virtualization could take us in the opposite direction with respect to the environment.

Firstly, (as both Mr. Urquhart and Cohen agree) the more compute cycles available, the more we’ll use.  It’s what we do.  Therefore, increased utilization due to virtualization will actually increase energy consumption and impact the environment negatively in absolute terms.

But more subtly, how the compute power is delivered is actually more important in comparing a datacenter to a virtualized cloud.  Virtualization improves utilization, but does it improve system energy efficiency over the same workload?

Whether the hardware is virtualized or not - the processor still needs to tick.  In fact, through virtualization, the processor needs to work harder with more fetches from cache, DRAM, or the hard drive to deliver the same calculated result to the end user.  And so, on the face of it, greater utilization due to virtualization actually impacts the environment negatively…for now.

We need to go back to the hardware to turn this around.  Virtualized servers drive the high-end of the processor lines of the physical servers that support them.  The increased demands of compute power per square millimeter of the processor and parallelization/efficiency within them will drive overall energy efficiency of the system in the right direction.

One additional point to consider is data distribution.  The power it takes to deliver the compute power from the cloud/data center to the remote user has an impact.  A centralized cloud vs multiple distributed datacenters (from different service vendors) and their proximity to the users needs to be added into the equation.  If we’re talking about consumer services sharing a cloud, the impact of centralization will be significant and detrimental.  However, corporations using their own local datacenters on-site are much more energy efficient in data transport energy costs.

Clearly, the calculation is not straight forward, and when all’s said and done, it may only be interesting from an academic perspective.

Fortunately for all of us, being green is considered by many to be a tier one value proposition during the purchase process of equipment and services.  This demand will get baked into the product definition process and we’ll all move in the right direction.  One point that is without argument however - it’s a heck of a lot greener to work remotely on a cloud or datacenter, than either shipping CDROMs or getting on a plane and working on-site.

Posted under industry

This post was written by James Colgan on January 19, 2010

Tags: , , , , , ,

Navigating the Path to Recovery

There was some good news today when the Institute for Supply Management reported that the purchasing managers index rose to its highest level since April 2006 - 55.9.  This is yet another sign that we’re heading in the right direction, but we’re far from out of the woods.  Many of the factors built into the Wall Street Journal article back in August are still with us, and so the path we’re on remains unclear - Sharp Rebound; Slow Growth; or Double-Dip.

Since the recession officially started two years ago, we’ve all been focused on the bottom line and cutting costs like crazy.  The Bureau of Labor Statistics reported in December that Productivity in the non-farm business sector in Q3 of 2009 rose by 8.1%, the largest increase since the same quarter in 2003.  Which means that businesses are doing a great job of getting the most out of their remaining workforce after multiple Reductions in Force.

However, as we move forward, we need to change our focus if we’re to do more than just survive.

Moving Focus to the Top Line

So the question is, while we’re on the path to recovery, how can we take advantage of the sales opportunities that arise and grow the top line?  Traditionally, if we were to focus on increasing sales we’d have to invest ahead of the curve in sales resources - new or additional account, regional, country, or market coverage. 

In this environment, the length of a sales cycle is not predictable and when the recovery will actually occur is unknown.  This brings a great deal of “Balance Sheet Uncertainty” when companies do not have the resources to gamble.

Balance Sheet Uncertainty

Balance Sheet Uncertainty

So again, what do we do to get back into growth?

Enterprise Software - Take Your Product and Business Online

Fortunately, for Enterprise Software companies, there is an option - move your software and sales process online.  I do not mean for you to rewrite your software and business model overnight, but to install your software as-is on the Xuropa Platform.  You can then delivery your product for demonstrations, evaluations, training, or even in a post-sales Software-as-a-Service (SaaS) model.

In this manner, you are able to lower your cost of sales while focusing on growing your top line revenues.

Revenue Growth with Xuropa

Revenue Growth with Xuropa

Once your software is installed on the Xuropa Platform, you’ll be able to employ it to solve a large number of sales challenges.  And your business will be able to participate in the benefits of the SaaS model without having to re-invent your company. 

For more information on how we can grow your revenues, contact us at sales[at]xuropa[dot]com.

Posted under business, industry

This post was written by James Colgan on January 4, 2010

Tags: , , , , , ,