When users find faults after release, it indicates both that the software had bugs (poor quality) AND that the testing process failed to catch them (poor testing). If testing were thorough, users wouldn't discover these faults. Option A blames only the software; Option D blames only time constraints. The reality is both software quality and testing effectiveness were inadequate.