Yes. There are high quality and low quality software products. “It works” is not always enough.
Just like a physical product, you can consider it to have internal and external quality.
External quality is how your users judge your software. Software with external quality looks good, is intuitive to use, responsive and reliable. With the best product in the world, customers will judge the capability based on external quality.
So what if your user interface is a bit laggy? Or the system throws some errors if you do things in the wrong sequence? The user will often consider the software to be unreliable or untrustworthy. They will often tar the rest of the product with the same brush too.
Internal quality is about how well written the code is. Software with excellent internal quality is easy to upgrade and maintain. Internal quality makes it cheaper to develop in the long run. It also makes it easier to keep your customers happy with new features and rapid bug fixes.
In some cases, internal quality issues will become external quality issues. In other cases, it may mean customers see you as unresponsive or lagging the industry if you can’t keep up with the latest features and demands.
So ask yourself, does your software meet the level of quality you would require for your hardware?
Still unclear on what constitutes software quality? Of course, like many software engineers, I can go into far more detail! In this article, I break it down further.