Category Archives: Cloud Computing

Where are the opportunities for new SaaS ventures?

Almost four years ago, I wrote a post that argues that SaaS will eventually win over on-premise software. At the time, Larry Ellison, Oracle CEO, still argued that SaaS was a fad.

Now, in 2015, it’s clear that SaaS has won the “delivery”. What’s more, SaaS has also created new markets, penetrating customer segments for which an on-premise software solution was cost prohibitive in the past. Dozens if not hundreds of successful SaaS vendors are hitting the market and seem to be covering every single business need in every vertical.

Are there still opportunities for new SaaS ventures?

Continue reading

Planning and Launching Software Products in an Agile Environment

This week, I had the opportunity to speak in the Agile Practitioners 2013 conference. The topic of the talk was Product Roadmap, Planning and Launch in an Agile Environment.

The talk was around approaches to modern product management, and specifically considerations due to agile methodologies and short product release cycles.

Fundamentally, old-style product management assumed software releases are done infrequently, something along the lines of this diagram:


Whereas modern product cycles rely on shorter cycles, something along the lines of this diagram:


The assumption in modern approaches is that the road to good software is shorter when making smaller steps and frequent turns than when making large steps and more radical turns. (This is geometrically true in the diagrams…)

Old-style product cycles consisted of three main steps: planning (negotiation, prioritization, scheduling), development (design, coding, testing) and launch (alpha/beta, release, outbound marketing). The main question I was trying to tackle in the talk was how the corresponding activities map to product cycles with frequent releases.

On a side note, some organizations use old-style product cycles (infrequent software releases) while using “agile development” techniques internally (that is, frequent internal releases). While perhaps better than nothing at all, this approach misses—in my mind—much of the benefit in agile software development. In the end of the day, the biggest benefit is adapting to customer feedback, and without the software reaching real customers, value diminishes.

The areas I was trying to tackle in the talk were:

  • How does planning occur in an environment when there’s no defined period for planning (“beginning of the release”)? When the working assumption is that many of the details (and associated effort) will be revealed during the development process. And, how do roadmaps look in such an environment?
  • How do product launches occur in an environment when there’s no defined period for launch, but—instead—software is ready in chunks? How and when does customer feedback get incorporated into the cycle?
  • How does one integrate new approaches and opportunities brought about by agile development? Mostly, agile approaches facilitate experimentation through proof-of-concepts and such (with various variants such as MVP, MSP, and lean).

Here are some of the practices we’ve come to follow over the years:

Continue reading

Can Oracle buy its way into SaaS, or is it doomed?

A few interesting articles around Oracle’s dance with SaaS, spurred by its recent acquisition of Taleo (CRM/HCM), for $3.4 billion:

It will certainly be an interesting ride.

The Beginning of the End of Long Software Development Cycles

Last month, Microsoft announced that it would start to automatically upgrade Internet Explorer on users’ PCs, essentially following the route Google Chrome has taken.

This announcement has gained publicity in the Internet-related software community as it was evident that this action was taken to react to Google Chrome’s increasing market share. Within a few years, Google Chrome usage has grown, and it is now not only the second most popular browser overall (surpassing Mozilla Firefox), but also similar in popularity to Internet Explorer 8.0, hence essentially (in a tied race) the most popular specific-version browser overall.

But, the significance of this release transcends the browser war. It highlights that long development cycles are becoming a thing of the past.

Continue reading

Business Components of a SaaS Solution

Today, Google announced that its Google App Engine platform-as-a-service solution would be leaving Preview stage later this year.

The cloud computing concept has gained a lot of momentum in the last few years. Classification of the  solution space has somewhat focused on infrastructure-as-a-service (IaaS), which is typically associated with Amazon’s platform, and platform-as-a-service (PaaS), often associated with Salesforce and the aforementioned Google App Engine. In a previous post, I pointed to a short article that summarizes these terms.

A lot of debate has taken place around the economics of cloud computing, and around the advantages and disadvantages of the PaaS model. However, little discussion has taken place around additional (higher level; or: business) components that are needed to successfully run a SaaS business, in addition to the core infrastructure and the basic platform.

The diagram that follows is an outline of components that are part of the architecture of (almost) every SaaS business.

Continue reading

How SaaS and Agile Software Development coevolve as a disruptive innovation

Agile Software Development is continuously gaining momentum in the last decade since the introduction of the Agile Manifesto in 2001. Software-as-a-service (and cloud-based web applications in general) is also gaining momentum in the last decade, roughly during the same period. Is this a coincidence?

Time and again, the technology landscape exhibits parallel fast advancement of synergetic technologies and methodologies.

For example, in the late 90’s, my colleague Elan Dekel has started a company called EarthNoise, offering a video sharing website. Sounds familiar? In 1995, a company called YouTube was founded with a similar idea. It was acquired in 2006 by Google for $1.65b. EarthNoise, on the other hand, went out of business as early as 2001. In the four years that passed, broadband internet access became popular, and so did digital video cameras. The three areas—video sharing, digital cameras and broadband internet—evolved hand in hand to create a new phenomena—user generated video on the web. The ability and desire to share videos online drove increased adoption of broadband internet and digital video cameras (and yielded brand new products such as the now-defunct Flip). The increased consumer demand for broadband and cameras drove down prices and accelerated technology advancement. This in turn increased adoption of video sharing sites. Now, video sharing sites are an inseparable part of our lives.

Arguably, the success of the iPhone is—similarly—largely due to technologies that co-evolve with smartphone advancement: 3G connectivity, Wi-Fi connectivity, touchscreen technology, low-consumption processors and—at least to a certain degree—HTML5.

I would assert that software-as-a-service and agile development methodologies are likewise coevolving and drive each other’s adoption. It may not be obvious, but this creates a spiral effect (or—in Geoffrey Moore’s terms—a tornado) of disruptive innovation that will eventually displace many of the software development paradigms.

Here’s why.

Continue reading and SaaS Hardware Efficiency

According to Marc Benioff, CEO (in an interview on CNBC), the Salesforce’s cloud consists of 2,500 servers, serving 100,000 customers. A quick math reveals that this is an average of 0.025 servers per customer, or one server for every 40 customers.

Marc Benioff argues that in a traditional on-premises software model, customers would need one server per customer, or 100,000 servers overall. While Marc Benioff knowingly “oversimplifies” the truth (did anyone say virtualization?), the math is not totally off.

Indeed, it’s not unlikely that a “server” is not the same as a (perhaps some ancient Windows) server at an SMB site. And, on-premises software customers also share servers across applications (even before virtualization became so ubiquitous). Yet, there’s something compelling about the figures, and there there’s certainly something to be said about the cost efficiencies of SaaS, even if, as in this case, from a hardware allocation perspective alone.