- If there is one error in the product, probably there are more errors in it
This assumption mirrors the principle, which states that if an error is found in the part of the program, then there is a high probability that another error is contained in this part. In other words, errors tend to accumulate. When correcting an error, check its immediate environment: whether there are any suspicious symptoms of an error here.
- Identify the error, not warning signs for it
Another common drawback is the elimination of the symptoms of the error, not the error itself. If the intended change does not eliminate all the symptoms of the error, it cannot be fully identified.
- The probability of correct error identification is not 100%.
Certainly, this assumption is taken to be true, but the reaction can be different during the error correction process.
For example, “yes, this is often the case, but such amendment is so insignificant therefore no one can doubt about its correctness”). It can never be assumed that the text that is included in the program for correcting the error is correct. It can be argued that the amendments are more likely to introduce new errors than the source code of the program. It is understood that an error correction program should be tested, perhaps even more carefully than the product itself.
Resorting to QA consulting companies people solve or even prevent their development problems by finding out how to improve the process.
- The probability that an error will be correctly detected decreases with the increase in size of the program
This assumption is formulated in different ways. Experiments have shown that the ratio of the number of incorrectly found errors to the number of initially identified errors increases for large programs. In a large program designed for different purposes, every sixth newly discovered error can be introduced during the previous modification of the program.
- Beware of introducing a new error when making changes to the code
It is necessary to consider not only incorrect amendments, but also those that seem correct, but have an undesirable side effect and thus cause new defects. In other words, there is a possibility not only that the error will be detected incorrectly, but also that its correction will lead to a new error. Therefore, after the adjustment is carried out, a regression test should be performed again to figure out if a new error has been introduced.