How can you determine the quality of a software product? Of course, there is an internal emotional component that denotes user satisfaction, the desire to pay for the product, high ratings in online stores or special resources, a positive attitude, and the like. However, emotions aside, what are the evaluation criteria? IEEE states that quality is the degree to which a product meets the needs and requirements of the end user. But what is the formula? Can we say that the product has, say, 73% satisfaction? As we know, every software product has an unlimited number of bugs. Some of them are discovered and corrected by the development team, we will denote them with the letter
We simply divide the number of errors found by their total number. Thus, the more bugs we can find before the product reaches the consumer, the higher its quality. 100% quality means that the end user of the software product did not find any bugs in it. 0% quality, accordingly, indicates that errors were found by consumers. Author - Egor Bugaenko, Oracle certified Java architect, co-founder and CTO of Teamed.io , lead architect of Rultor.com and Jcabi.com , and a big fan of test automation. Author's website: http://www.yegor256.com/ Primary source: https://www.javacodegeeks.com/2017/12/formula-software-quality.html
F
. Others emerge during use by end consumers, let's call them U
. Thus, the total number of bugs from the infinite set that we try to minimize is equal to F+U
. Obviously, the smaller the number U
, the higher the quality. Ideally, U
it should be equal to zero, which will mean that users did not find any bugs. How to achieve this if the number of errors is infinite? The only possible way is to increase F
, hoping that U
it will decrease automatically. Accordingly, product quality can be measured using the following formula:
Q = F / (F + U)