What are non-trivial defects and how to overcome them?
The [Software Defect ReductionTop 10 List] is said to be that "40 to 50 percent of user programs contain non-trivial defects."
What are some non-trivial defects and how to overcome them?
a source to share
I would interpret "non-trivial" as it "has a real impact on the user."
For example, if there is a typo in a menu item, it would be a trivial defect. If the spreadsheet application crashed when it tried to save any sheet with the number "999", it would not be trivial.
I would be very surprised if the number was really low, like 40-50%. In my experience, almost every important application has non-trivial defects, even if they are rare. (If I'm the only user in the world who uses the number 999 in a spreadsheet, the error is still very important to me, so I don't think it can be classified as trivial.)
In terms of "bridging" defects - normal flurry of unit tests, continuous build, automated integration tests, manual testing, providing excellent user feedback and management willing to invest in bug fixes and new features.
a source to share
Subjective, but:
Non-trivial: defects that prevent users from doing their work, or that significantly affect their productivity Trivial: defects that simply annoy users
Obviously, there is a big gray area here because what is annoying and trivial for one product may be annoying, but not trivial for another.
a source to share
First, it's worth noting that most of the individual defects are trivial: tests are aimed at detecting them.
Thus, non-trivial defects are usually a combination of two or more separate defects, each of which is harmless (the test input does not cause them).
The second step in non-triviality is when times are part of the I / O space: specific dates or durations.
Then you can add discrepancies between assumptions and reality: compiler, target platform, inputs, ...
Shake it all up and the power can be with you ...
a source to share
Try to understand the other side first: trivial defects. A trivial defect is either harmless or easy to fix (typo in the text in the UI, wrong color for the button, labels not perfectly aligned).
Non-trivial defects are everything else: performance issues, application processing, data corruption, etc. They are sometimes difficult to find and often difficult to fix.
a source to share