Over the last decade the way organisations buy and consume technology has changed significantly. As a result, IT organisations focus on creating flexible, cost-effective architectures that can offer business value to changing needs (Capgemini, 2011). Similar to other business aspects software testing has also had an impact during the time and many firms mainly to improve the quality of the applications, reduce risks and costs have been embracing advantages of outsourcing.
Companies that have inadequate resources or knowledge or in-house test teams most commonly outsource quality assurance (QA). This means complete or partial testing of their applications can be sent to service providers (vendors), who have the right resources such as experienced QA Engineers, Project Managers and subject matter experts. Several researchers have revealed test outsourcing increases the efficiency and reduces the cost of software testing. Also, application reliability will be better if an independent test organisation conducts testing (Xin Xia et al, 2011). But to make the process successful it has its own challenges to address.
According to a survey of IT leaders conducted by Forrester reveals that the outsourced testing market is undergoing a rapid growth (50% annually or higher in some cases)(Capgemini, 2011). This increasing recognition means that the benefits and growing market demand is being met by the testing industry.
In-fact, software testing is still a relatively immature function within the IT departments worldwide. This can make it difficult for supplier organisations to clearly understand how it might best be outsourced. A common misconception can become just results in a bigger, more expensive problem. Whatever the circumstance is, according to (Cem Kaner, 2011) there are many aspects supplier and vendor must understand and do in-order to mitigate outsourcing risk. They are as follows:
- Both parties require thorough engagement in planning and executing phrases of testing;
- Testing requires detailed understanding of the application subject matter, the specific product, the client’s development process, and the customer’s needs. The more remote the outsourcer (distance, culture, experience with this market), the more serious the problems;
- Vendor may need documentation of product and process, which can create new costs or substantially increased costs;
- All sides may lack contracting experience (except the lawyers, who lack software experience) so may have contractual issues;
- Vendor may promise too much, or appear to promise too much.
- Strong cultural differences may bring difficulties to understand clearly sometimes;
- Potential for security leaks, loss of intellectual property rights, conflicts of interest;
- Performance standards are unknown, unused, or not costed out in a rational way;
- Well defined conflict resolution process and rich contingency plan is a necessity.
Sogeti and Capgemini (2013) believe that outsourcing application testing can deliver a range of benefits and also help to improve quality as a strategic competency. In addition, cost savings of 25% or more can be achieved through:
- “Use of a specialist independent testing supplier;
- A clear financial and business case as an essential baseline;
- A business-driven structured testing methodology;
- And the discipline of performance measures to ensure providers really deliver”.
To overcome any pitfalls, however, Cem Kaner of Florida Institute of Technology suggests supplier must supervise the vendor’s effort continuously until project is completed. The main concerned areas are bug replication process, the test plan audition, communications and technical issues and monitoring process. It is also advisable that the supplier manage the project with someone familiar with the vendor’s workforce culture vise versa and has a policy to supervise and settle problems with the vendor. Cem Kaner, meanwhile, further suggests the following actions to minimise the issues in the process:
- “Appoint a local liaison;
- Clear about the scope of the work;
- Clarify key issues of roles and responsibility;
- Be clear about the pay structure and its implications;
- Look for the strengths of the outsourcer and manage other resources to fill in for the weaknesses;
- Don’t rely only on written agreements and documentation;
- Evaluate their training program and their work on a continuing basis;
- If specific people are touted as “on the project” have them assigned to the project by name;
- Create a mid-project arbitration procedure;
- Create clear schedules with deliverables that appraise;
- Plan to revise schedules to conform to reality;
- Apply or create a clear status reporting process;
- Apply or create a clear bug management process;
- Plan for unexpected contingencies”.
It is apparent in outsourcing scenarios however much the documentations are accurate, they cannot be often relied on as misunderstanding are routine because the vendor team usually is working remotely. To be sure of communication, supplier need to monitor the work progress daily/weekly and give impartial feedback as suitable. For this purpose, specifically in test outsourcing, mainly bug tracking system plays an important part towards the success. Therefore, bug life-cycle from the point of report to closure and progress reporting should simulate and visible to supplier as well as to the local points.
In view of the above, if successfully executed, similar to the other business sectors, outsourcing of software testing can reduce organisational costs and bring benefits to the supplier as well as the vendor. So that, when the correct management process is followed by those two organisations as partners improve time to market and overall software quality as well, as they expect.