Developers are least independent, whereas outsourced testing companies are most independent, because they don’t take defects as criticism.
Several levels of independence can be defined as shown below:
- Tests designed by the person(s) who wrote the software under test
- Tests designed by another person(s) within the development team
- Tests designed by a person(s) from a different organisational group
(i.e.: an independent test team) or test specialists (i.e.: usability or performance testers)
- Tests designed by a person(s) from a different organisation or company
(i.e.: outsourcing or certification by an external body)