Managing Outsourced Testing----(1)Create outsource criteria
When a project starts, ask the following questions. This will determine which areas need attention.
- What does the delivery schedule look like?
- Are there product requirements or specifications?
- Is there a test strategy or plan?
- Are there any special skill sets needed to complete my project?
- Is there a need for testers with expertise in a product area (e.g., finance etc.)?
Some software applications require explicit subject matter expertise. If the current staff does not have this knowledge, there may be a need to outsource.
If testing a client / server or web application, it is imperative there is some sort of stress or load testing. This testing will simulate user load and give you an idea of how the system will behave when the number of users increase. Stress / Load testing is typically carried out by senior technical engineers. This talent can be hard to find. Stress testing usually occurs once the application is close to shipping, which means the schedule might be very tight when the opportunity arises. This testing usually requires extra hardware as well.
- Do I have funding for outsourcing or can I arrange for funding?
Money can always be an issue. If money is tight, then oustource just the most critical items in the criteria. One creative alternative maybe to borrow resources from another department. Another is to strike a deal with a nearby college to get some interns.
Once you complete the questions, compile the list and create search criteria. This criterion will be the start point for researching the labs. Some labs may be able to service all your needs, so make sure the list is prioritized. This will put the critical items to the top of the list.
- Do I need to execute any stress / load testing?
Automation is still an uncommon skillset, in many organizations. Even if there are experienced automation personnel, they may have time constraints. . If automation is a requirement, then this task is a candidate for outsourcing. Like hardware testing, strong documentation is important to get the most for the outsource dollar. When the project is over, you can take ownership of the testscripts and make them part of your regression suite. Check with test tool vendors in this case. They may have engineers who can do these tasks.
- Is there a need to automate?
A test strategy is a document, which provides the testing approach. It typically is the first document a test group will create and is the basis for other QA deliverables. A good strategy will cover test styles, tools used, summary of test cases and what is in and out of test scope. If possible create this document in-house. If the vendor does it, then control of project shifts to the vendor. Only do this if the entire QA effort is to be outsource.
Requirements are essential for good test planning and strategizing. This is especially true in an outsource effort where vendors have little or no knowledge of the application. Good specifications also allow for better testplans and testcases.
Hardware can be a huge capital expense. In some cases, the bulk of the functional testing can take place in one or two target platforms. If the testplans are well written, then there is an option to outsource hardware configuration testing. This allows access to the latest machines, and additional test resources to test in parallel with the current staff.
- Is the hardware correct?
Is there enough time to hire and train staff for the project? If staffing is an issue, a testlab with strong testers can fill in an immediate need.