Why Software Quality Matters

Image credits: Photo by Polina Tankilevitch from Pexels

What happens when we ship low-quality software to production? Here is a summary of what I think are the most severe results of bad software quality:

Loosing customers and revenue How do you react after buying something that completely fails your expectations or breaks in no time? You will probably avoid that product, brand or manufacturer in the future. That means company X just lost potential revenue from your future self. Even worse, you might push for a refund or complain about your negative experience on the internet. This can quickly cause severe financial damage to a company. It’s the same for software products that have a lot of bugs, frequent crashes, or just an overall bad user experience.

Increased maintenance effort One distinct difference between software and other products is that it is non-physical. Usually, a user cannot look on the inside or judge the quality of a code base. For software developers, on the other hand, the quality of the code base becomes clear very quickly. Low-quality code is harder to understand and harder to change. This increases the long-term cost of maintenance. Assuming the product lives long enough (even just a few months or years), making changes to it or just understanding internal behavior becomes very painful and expensive.

Risk of damage and reputation loss The presence of bugs is normal in software systems. However, there is a big difference in terms of the frequency and severity of issues. Small issues like layout problems or quirky behavior are usually just a minor annoyance. But, more severe problems can actually lead to large financial losses or, in extreme cases, even impact humans health or actual lives. Recent history has revealed quite a few cases of software problems that resulted in serious accidents, e.g. in traffic, aerospace, medical treatments or financial services. Moreover, the topic of cybercrime brings a whole set of additional risks that can lead to compromised personal data and other serious issues.

As you can see, ensuring proper quality is mostly about protecting against the risk of negative consequences. However, we can also turn these aspects around and frame them in a more positive way:

  • Building high-quality software increases the chance of customers being loyal and buying repeatedly.
  • High quality benefits a company’s reputation, which is a good marketing measure by itself.
  • Developers will be more productive when maintaining quality software, i.e. they will require less time for changes.

What is your experience with software quality? Would you add anything to the list above? Feel free to tell me.

#SoftwareEngineering #Quality #ITProfessionals #CustomerSatisfaction

Bastian Isensee
Bastian Isensee
Software Engineer (Freelancer)

Quality-driven Software Engineer focused on business needs, knowledge sharing, FinTechs, Golang and Java