For every software project, there is an inherent conflict of
interest that occurs as testing begins. The people who have built
the software are now asked to test the software. This seems
harmless in itself; after all, who knows the program better than its
developers? Unfortunately, these same developers have a vested
interest in demonstrating that the program is error free, that it works
according to customer requirements, and that it will be completed
on schedule and within budget. Each of these interests mitigate
against thorough testing.