No secret that today, more and more companies, both IT and non-IT, make a decision to outstaff or outsource their software solution development as a remedy for local talent shortage, lack of expertise, and skyrocketing costs of software engineers and programmers. The trend to involve remote employees to help complete crucial tasks within software dev projects is as acute as never before: firms need to speed up time to hire tech talent and time to hit the market with their products and, therefore, start looking beyond the national borders to source high-caliber pre-vetted specialists and keep afloat as a business.
While some companies are apprehensive about outsourcing the development part of their technology projects, they rarely shy away from outsourcing their QA and testing. In general, QA is considered to be best suited for outsourcing due to the following reasons:
- Involving external/offshore QA consultants is like hiring a professional 3rd party to audit and do a due diligence of internal teamwork (it’s like looking at the project through fresh eyes and from a new perspective);
- QA outsourcing is way cheaper than core software development.
This article aims to provide a comprehensive review of QA outsourcing best practices and explore ways to reduce/eliminate possible risks of such a venture.
First off, let’s figure out key differences between QA outsourcing and QA outstaffing.
QA outsourcing vs. QA outstaffing
QA outstaffing is a process of sourcing and hiring a team of external testers and QA engineers and consultants to work exclusively on your QA project as a standalone offshore team or as a testing team integrated with the core product development team (in most cases, located in-house or onshore).
Within this model, the company finds a QA staff augmentation (aka outstaffing) provider and uses them as a mini technopark, where the provider supplies candidates for interview with a client (you), assembles a team from select candidates, monitors performance and client relationship, and takes care of your HR (retention, motivation), IT (infrastructure), and administrative (office, workstation, finance and legal) functions. As such, you (client) are 100% involved in project management and fully control milestones delivery and releases. Also, it’s up to you to choose testers to work on your project, negotiate salary, build a bonus system, or take other initiatives to motivate your offshore staff.
When it comes to pricing within QA outstaffing, you typically receive a monthly invoice that’s comprised of each team member’s salary (including benefits and taxes) and the vendor’s management fee on top of it. Some vendors include their fee in the total cost of talent, so, again, it’s a subject of negotiation and agreements between the client and outstaffer.
QA outsourcing is a process of transferring your entire software QA and testing function or its certain elements to an offshore provider (it can be either a generic custom software dev company or a QA-specialized software house). So, what’s required of you (client) is a well-defined QA work scope or a clear technical requirements specification. If you can’t spec out your QA project on your own, no worries, nearly every outsourcing provider can help you with this today.
For instance, at 8allocate, we offer a comprehensive discovery session where we sit together with the client’s Product Owner to define the scope of test coverage, create an action plan, a resource plan, detail milestones, and expectations, etc. The outcome of this discovery session is a quick start of your QA outsourcing project and overheads eliminated at a post-launch stage as a result of a buggy software release.
To sign up for a QA Discovery Workshop with 8allocate, just drop us a line here!
Having received your QA requirements spec, the vendor allocates resources (typically from an internal pool of available talent) and fully manages your outsourced testing processes and stays accountable for all milestones and the final delivery.
Creating Software Project Specification The Right Way: Functional and Non-Functional Requirements
When it comes to QA outsourcing, there are several pricing models to choose from: it can be fixed-price, time and materials (T&M), or hybrid.
Choosing between QA outstaffing and outsourcing
How to best leverage offshore QA capabilities and resources depends on each particular project case.
If you’re a digital agency catering to many clients with continuous needs for testing their tech products for bugs, compliance, security and more, it’ll be most beneficial for you to hire a professional custom software dev or QA staff augmentation provider offshore or nearshore and have them build and host your dedicated QA team. As a client, you hire a Product Owner/Outstaffing Manager locally (or delegate one from your HQ to the vendor’s site) who takes care of your offshore QA processes and consults with the vendor on budget optimization, QA staff retention, QA team scaling, etc.
QA outstaffing model will help you be more proactive and improve your overall software dev budget planning due to the fact you know the exact monthly cost of your offshore team and can scale it up and down to save money or increase capacity at peak times (i.e., at stages that requires more testing than others).
However, if you’re a startup building the next big thing in tech and if you only need QA for the duration of your product dev project or if you have no internal QA expertise and talent, the best option would be to go with QA outsourcing, or managed QA project.
In this way, you entrust your offshore provider the entire product’s QA and testing and get a regular report detailing QA hours checked in and out, milestones, test cases, etc. Under this model, you only pay for QA specialists’ hours dedicated to testing your product and can control costs by increasing or decreasing test coverage/QA scope.
While QA outstaffing model is safer because it’s the client who makes all final decisions and is responsible for the project success, QA outsourcing poses certain risks that I’d like to address further in the article.
QA outsourcing pros and cons
In general, outsourced software QA provides the following advantages:
- Smart distribution of QA workload
Frequently, corporate QA implies a floating need, i.e., when a team or department sits on their hands for one week a month but then embarks on a tough 3-week journey searching for bugs and errors in the product and sending them back to the developer for fixing.
Managed QA project, or outsourcing, is ideally suited for distributing QA workload the right way. At peak times, it makes sense to involve offshore testers and QA consultants to make 100% sure the product is ready for the final release in terms of quality and security. Using fractional QA talent allocation allows you to pay only for the actual time you use your QA resource and avoid paying for 60% of their idle time, which makes your venture more cost-effective.
- Increase in software development budget by reducing in-house QA expenses
When you hire people internally, you need to invest in building from scratch or boosting IT infrastructure, setting up workstations, providing tools and equipment, etc. When you outsource QA and testing, all of the indirect costs are included in your invoice by the provider, and you can easily piggyback on the existing capabilities without making any extra investments.
By leveraging offshore QA talent, you can reduce OPEX and either increase your software dev spending internally or outsource more development work to save money and use it for product promotion, for instance.
- Make your test coverage as comprehensive as possible
Today, there’s a myriad of testing approaches, methodologies, and types, and you won’t likely cover it all in-house. Professional outsourcing companies or QA-specialized software houses typically have access to dozens of devices and gadgets to test your application. If you’re building an Android app, there’re more than 150 different compatible devices you need to check your app. It’s quite unlikely you’ll have access to this many devices and tools internally. Failure to test an app on all possible devices can lead to both reputational and financial losses down the road.
- Look at your project from the outside
No matter how experienced and qualified your developers are, they’re humans and, thus, can have the human factor involved. A fresh look at your project from the outside is always useful, as external auditors are more likely to spot business-critical errors and inconsistencies than your highest-caliber engineer who’s been working on the project long enough to get “blurred eyes”.
- Foster documentation-driven development
When you build your digital solution in-house, things can get a bit messy, especially if you aren’t a tech company in essence. Miscommunication or lack of working relationships between teams and departments, hidden agenda, turnover of your project management staff are just some of the examples of what can go wrong on projects. Lack of adequately documented processes can have detrimental consequences such as poor team efficiency, poor quality, overheads at post-release stage, tech debt accumulation, etc. The price for fixing those consequences can be very high for any business.
Leveraging offshore QA teams is an excellent way to foster documentation-driven development on your project, as most of the test cases will be described by remote staff and as a result of formalized communication between the client’s in-house dev team and an offshore QA team.
Yet, there’re some disadvantages.
Some QA outsourcing buyers complain about a very high cost of offshore testing. However, it’s a very subjective statement, as each product should be evaluated separately in terms of QA and the cost can differ a lot. A web app that needs to be tested on all possible OS will cost way lower than a cross-platform app that needs to be tested against 100 different devices, etc.
To check if the total cost of your QA outsourcing is adequate, you need to consider the following factors:
- How experienced is my vendor’s QA team, are there similar projects they worked on, what was the outcome? (background, expertise and portfolio check)
- How many hours are required to test my product at each stage, and how does it compare with the industry average rates? (QA scope validation by 3rd party or professional QA manager)
- What do other clients say about this vendor and its QA capabilities? (client references check)
- How do they envision a partnership between your companies? What engagement models and pricing options do they offer? (workflow verification)
That being said, the more requirements you’ll have, the higher the cost of your QA.
Security in QA outsourcing
That’s true that not all companies are ready to entrust the ins and outs of their software product to another person or company due to security concerns. As a rule, to solve this issue, each remote QA specialist is provided with personal private access only to a particular part of the software functionality or signs an individual NDA that envisions particular penalties for client data breach and violation.
That is before you hire the outsourcer for your software testing, you need to make sure that the vendor takes into account all the potential risks of data leakage or compromise, and fully understands the responsibility for delivering an unsecured product.
To then very long not to argue with anyone and not to argue, first stipulate with a specialist that all the scripts created in the process of testing, test cases and other technical documentation is the intellectual property of the client, and can not be used by a remote tester for his reasons.
Make sure to make it clear in the outsourcing contract that all scripts and test cases created during testing as well as all documentation are courtesy of your company and are protected by the copyright laws of the jurisdiction of countries where you operate or intend to market and sell your solution. That being said, if you’re a startup based out of the EU, make sure to partner up with an outsourcing provider with legal representation within the EU, etc.
How QA outsourcing affects different factors
Having talked to some of our QA clients, I’ve put together a table that shows how outsourcing impacts on different factors in real-life scenarios.
Recapping QA outsourcing risks and ways to minimize them
- QA project scope
If you have just a few employees in the QA department, and the QA task looks nontrivial, outsourcing is the only way to allow you to properly use professional testing services to achieve the most optimal balance of time and resources.
- QA project peculiarities
The process of outsourcing implies the scrutiny of the specifics of the product, but sometimes there are situations when it is tough to get the peculiarities of the software solution at hand. Offshore providers experienced in QA outsourcing typically have sufficient tribal and niche-specific knowledge to offer you the best price/quality ratio for the most specific QA features of your project.
Sometimes, the security level of a software solution can be so high that there’s no way any external team or professionals can access the system unless they become full-time employees of the company. Such limitation can hurt the overall QA quality.
In such cases, it makes sense to integrate the offshore testing team with the client company’s IT department to provide full access to whatever features they need to test your solution. Alternatively, an exclusive security contract can be signed between the client and the outsourcing provider to make sure testing covers all product phases and functions.
Outsourcing has become an integral part of modern business. According to the latest research, about 77% of software development companies outsource their solutions and intend to continue using such practice, and about 44% expect to increase the volume of the tasks to attract outsourcing providers.
Leveraging value-based QA outsourcing helps modern businesses enjoy significant cost-saving and deliver high quality and error-free solutions that resonate with target audiences and make a difference in the marketplace.
However, like in any new venture, before embarking on QA outsourcing journey, it’s essential to understand what it takes to bring your QA function offshore, evaluate all potential risks and check prospective outsourcing partner’s action plan to minimize those risks. If it looks adequate and not far-fetched, have no doubt you’ll never regret your decision to outsource QA and testing.