The following is excerpted from Software Testing Techniques, 2d. Ed. by Boris Beizer.
First Law: The Pesticide Paradox -- Every method you use to prevent or find bugs leaves a residue of subtler bugs against which those methods are ineffectual.
That's no too bad, you say, because at least the software gets better and better. Not quite!
Second Law: The Complexity Barrier -- Software complexity (and therefore that of bugs) grows to the limits of our ability to manage that complexity.
...