Embracing Continuous Software Updates


Jason Luther

Cloud computing with continuous software upgrades is certainly a departure from more traditional software delivery models, but the leading-edge approach maximizes benefits to customers and end users while minimizing any potential drawbacks.

While there are well-known benefits to moving to a cloud computing model from the traditional self-hosted software model, many of the advantages for an end user are indirect and not always apparent at first glance, like the ability for a solution provider like RetailNext to add additional computing capacity whenever service loads increase.

But there is one benefit of a cloud service that is very direct and apparent to you, our end users: continuous delivery of software updates. At RetailNext, we continually invest in innovation to further reinforce our industry leadership, and as a result we deploy updates to our cloud service several times a day without any apparent downtime to our end users. A store manager may open up our dashboard one day and be greeted with an improved dashboard, a new way to visualize data, or just a faster experience, and nobody on the IT staff had to lift a finger.

This is the fastest way we can deliver value to our customers. In the on-premise world, software updates are much less frequent, and a considerable amount of time can go by before a given improvement reaches the end user after it’s been implemented by a software developer and passed through the quality assurance process. Even after it’s released by the provider, a customer must schedule downtime to update the software, probably after testing it in a lab first. With the cloud service, RetailNext still performs the same level of quality assurance, but customers get the benefit as quickly as possible.

Who wouldn’t want to get features immediately?

Well, it turns out that this can be as terrifying as it is exciting to end users and to our partners in the IT departments of our client organizations.

When was the last time a service you love made an “improvement” that infuriated you? This is always a risk when software is upgraded, but it’s something on-premise software users have more control over. If you don’t like what’s in the new version, you don’t always have to upgrade. Unfortunately you also miss out on security updates and other improvements, but you have some more control over the timing of the rollout. At RetailNext, we use an approach that is designed to give you the best of both worlds. We build large updates to our user interface without removing the existing functionality. We can release those updates to a smaller set of users, and then incorporate their feedback before we make the improvement available to everyone.

The other stakeholder who is likely to have strong feelings about upgrade frequency is IT. The word “upgrade” can conjure up nightmares of Microsoft Patch Tuesdays or enterprise software upgrades that fail and have to be rolled back during an overnight maintenance window. It turns out the cure for this is not to upgrade less often, but to upgrade as frequently as possible! Each change to software introduces risk, and more changes means more risk, so larger upgrades are more likely to fail than smaller ones. Taken to the extreme, that means that we want to make upgrades as small and frequent as possible, so that’s what we do with our cloud service.

The other crucial difference between cloud and on-premise software is the person doing the upgrades in the cloud is a software engineer, usually the one responsible for the code change that is being deployed. That means that it’s her responsibility to make sure it works, and she’s the best qualified person to fix any problems that do arise. In contrast, the IT engineer who is deploying someone else’s software upgrade (perhaps in the middle of the night) can’t do anything but report the problem to the vendor and hope for a response that can be used during the next maintenance window.

The world of cloud software with continuous upgrades is certainly a departure from more traditional software delivery models, but we hope you’ll agree that our approach maximizes the benefits to our customers while minimizing any potential downsides.

Join the #retail, #inspiringretail and #SmartStore conversations with Jason on LinkedIn, or with RetailNext on Twitter @RetailNext and www.facebook.com/retailnext.