User-reported faults typically indicate that both the software quality was suboptimal and testing failed to catch defects before release. If testing were comprehensive, most defects would be caught internally. User discovery of defects represents a failure in both development quality and the testing process.