#software #release #version #production

When is it reasonable to wait before the next software release?

The most important part of each project is the premiere of the new software release. A new version of a product, application or system on which developers have worked intensively. The so-called “going to production” is often associated with excitement, adrenaline and, in my personal opinion, a kind of inner joy that it is finally time to present it to the world. But is it always good to push the next software release to be deployed as soon as possible? From the article below, you’ll learn why sometimes it’s good to calm down and wait a little bit before going live with the next software release.

Photo by Surface on Unsplash

To release or not to release?

If you are a Product Owner, it’s natural that you always want the next versions of your software to be released as soon as possible. However, it’s good to be aware that there are situations when, paradoxically, you can save time and money by… not doing so and holding off the release a little bit. Being a Business Analyst puts me in a position to share some insights regarding those situations. So in this article, I will present to you some cases and will suggest what you can do to try and convince other stakeholders to postpone the final deployment.

Cyberpunk 2077 case

Most of us probably remember the most famous game premiere of 2020. The release of the long-awaited Cyberpunk 2077 just before the festive season resulted in a lot of negative comments over the quality of the game and the problems some users faced. It also caused some decline in the stock exchange quotations of this title’s publisher and certainly, a decline in the confidence gamers and investors had in the company.

When the software release rush is not favorable?

It is worth recalling two of the non-software related situations that are meaningful when talking about the rush. The first example can be the great service action performed by one of the biggest car manufacturers. Toyota was urged to fix gas pedals on 4 million vehicles due to an issue with the accelerator pedals in 8 models of the company cars manufactured between 2005 and 2010. Another example may be the new model of the Boeing 787 Dreamliner plane, which had to be grounded immediately after its premiere due to some failure.

Experience is the key

The most important elements of each project are… the people involved in its implementation. In my opinion, attention should be paid to the more experienced ones, and I do not mean the length of service, but the number of different types of projects and situations they have dealt with. Why is it so important? Let me quote the basketball master here — Michael Jordan:

The role of Continuous Integration and Continuous Deployment

This is where Continuous Integration (CI) comes in handy. It’s a tool used by DevOps, in which after each commit/mergeprocess, the system starts the compilation process, unit tests and any static analysis tools used. Any other quality-related tests that can be automated are also performed.

What arguments can appeal to the Product Owner not to release a new version of the software:

  • critical errors/bugs that prevent the safe use of the system;
  • failure to complete the entire critical path for the end user;
  • untested new functionalities relevant to the critical path;
  • new functionalities that do not meet the needs of the end user;
  • failure to provide end users with sufficient knowledge about new functionalities;
  • failure to provide sufficient knowledge to the maintenance team (if designated);
  • lack of access to infrastructure, whether it is in the process of testing — only one platform has been tested or during deployment;
  • no possibility to monitor, verify, uninstall and roll back the new version;

# Wrapping Up

As you can see, there are many reasons not to release your software as soon as possible and at any cost. It’s good to consider the so-called pros and cons. Nevertheless, a development team that is responsible for delivering a high-quality product should have the courage to inform the Product Owner whether it is reasonable to proceed with the premiere of the newest software release. Therefore, dear colleagues — have the courage to block a release when you see that something is not working as it should. And you, dear customers, Product Owners and Project Manager — try not to be upset when the Quality Assurance team doesn’t give the green light to proceed with the release. You can be sure that we do it only for the greater good of yours and the satisfaction of your users, to ensure that our common goal is achieved. As Ludwig Purtscheller once said:

We engineer the solutions to the problems that our customers want to address with their unique products/services.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store