10.1. Choosing Your Partners
If you choose a Texas BBQ joint to cater your wedding, you should not be surprised when brisket and beer, rather than caviar and champagne, appear on the menu. Likewise, it helps to consider your motivations and goals when choosing your test partners. Let's start with the question of why you want to use outside test resources rather than your own team exclusively.
You might want to get business analysts, help desk or technical support, target customers or users, or sales and marketing staff involved in testing to build their confidence in the quality of the system that's about to be released—or the testing that your team or some other team performed on that system. In some cases, the motivation is political, to make up for credibility deficits in the development team or your own team of testers. In other cases—especially customer involvement in acceptance testing—the motivation is contractual, since many outsource development efforts include a period of acceptance testing by the customers prior to final payment. I have worked on in-house IT projects that likewise included a user-executed acceptance test where a little bit of both applied.
More typically, though, my use of distributed testing, especially during system test, arose from one (or both) of two managerial motivations: either I was trying to leverage an external party's strength, especially one that I couldn't or didn't want to recreate in-house; or I was off-loading work that I couldn't handle ...