SaaS Software Testing and the Beauty of Incremental Improvements

Posted on Oct 5, 2012 in blogDevelopmentGeneral

In an earlier post, we explored the recent Apple map debacle, outlining how better software application testing tools coupled with better “tests” could have helped the tech giant avoid its major embarrassment.

But today, I wanted to approach the situation from a slightly different angle.

IT is one of the fastest evolving industries on the planet. Computers become obsolete the moment they leave the assembly line. And every day, newer, better, cheaper software products hit the market, forever raising the bar.

So naturally, consumers demand updates. There’s no way around it. Failure to constantly improve is one of the fastest ways to drive yourself out of business.

But in the case of the Apple debacle, their “improvements” were premature, to put it mildly. We’ve seen similar missteps from any number of companies as they rush mega updates and new releases to the market (remember XP to Vista?).

To be fair, mega releases have their time and place. For starters, they’re beneficial because they’re accompanied by a lot of fanfare. For branding purposes, it’s easy to get people excited about mega improvements with fancy names. At Testuff, we’re proud of each monthly update to our own software application testing tools, but with names like Version 1.45 and Version 1.46, rarely do we order balloons and confetti.

Mega updates are also necessary sometimes. It’s true. Both hardware and software can become so outdated or “non-interoperational” that incremental improvements simply aren’t possible. Many of the computers that were out 10 years ago wouldn’t be able to run the majority of software on the market today.

So those are the benefits. Now the downsides.

Mega Software Releases Bring Mega Risks

Game changing software may indeed offer numerous marketing advantages, but they also expose you to many more risks. The jump from XP to Vista, or more recently, the jump from Apple’s iPhone 4S to iPhone 5 are perfect examples.

The sheer logistics of starting all over and testing everything from scratch can be overwhelming. Even Apple, a company known for its flawless performance and unwavering commitment to detail has had to abandon the claim that its new mapping app was “the most beautiful, powerful mapping service ever.”

Bugs and difficulties like these can cause irreversible damage to a company’s public image (a theme we’ve discussed quite extensively over the past several weeks).

You can beta test and do soft releases to mitigate these risks. And of course, we’re strong advocates of using the best software application testing tools possible to further protect yourself.

But there’s potentially a better way to reduce the likelihood of premature mega releases.

Incremental Improvements and SaaS Releases
At Testuff, we’ve adopted an incremental approach to our SaaS software testing platform. It’s important to note that incremental and SaaS are not synonymous terms. Rather, they are complementary approaches:

  1. SaaS (or software as a service) describes a process in which users subscribe to a technology, either through a browser or a light desktop client (we currently use the latter, with plans to eventually offer our software application testing tools through the Web).
  2. Incremental improvements describe a process in which users can download minor updates that build upon a software’s pre-existing infrastructure. Each update should make the software faster, more secure, or more powerful.

When combined together, SaaS software that benefits from incremental improvements offers a number of important advantages over the traditional “mega release” model.

  • Obsolescence is rarer. When you use a light client or browser, there’s less pressure for users to constantly upgrade their software or hardware because most of the major changes happen off-site.
  • Missteps are rarer and more confined. You’re not rewriting the code from scratch – you’re just improving the existing software. If and when mistakes do occur, they’re not as devastating. Wouldn’t you rather people complain about release #85 than complain about the entire software package (or phone)?
  • Whereas mega updates are only scheduled periodically throughout the year, incremental improvements happen constantly. For our SaaS software testing tools, we make monthly incremental improvements that are timely, relevant, and based on “incremental feedback” from our users.

Is the SaaS Incremental Improvement Model for Everyone?

I’ll be the first to admit that our approach to software application testing tools built around incremental improvements is not the ideal model for all software development companies in all situations.

But what if Apple had tested its mapping service as an option with older releases of its iPhone? What if Microsoft had released some of its Vista security features as an option with XP? By rolling out these improvements slowly (with the ability for users to “opt out”), perhaps these embarrassments wouldn’t have surfaced.

At worst, users would have complained specifically about these minor releases, “I don’t like this new optional mapping service.” But as is, they ended complaining about the entire product, even if only one small feature was to blame.

This model isn’t for everyone, and as I’ve already pointed out, there are certain advantages to the mega update approach. But the SaaS model makes a lot of sense for us and for the thousands of Testuff users who demand reliable software application testing tools to improve their own products.

Do you feel that a similar approach would work for your own software development team? If so, why? If not, please share your thoughts down below.