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?

+1


a source to share


4 answers


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.

+2


a source


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.

+1


a source


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 ...

0


a source


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.

0


a source







All Articles