What You Should Know Before Outsourcing Software Quality Assurance
If you are looking for software QA outsourcing solutions, then you are in that next exciting stage of development. There are, of course, several factors to consider. However, for peace of mind, let me start by simply stating that ‘QA outsourcing is a good business strategy.’ If done right, it will improve efficiency, cut costs, speed up product development, give you access to QA expertise without the hiring costs, and allow you to focus on your core goals and competencies.
Scoping and Planning
It is important to consider your systems first and at what stage your software testing processes is right now. Are they ready for QA outsourcing? A full scoping and planning of your current stages, versus the desired outcome, will give you not only the maximum return for your QA outsourcing efforts but also the right timing and future proofing.
For example, if you have confidential information, is your security system ready to allow outside partnering? Or let’s say you’re developing a new app for your team, only to realize after launch that it will be hugely beneficial to be able to connect to social media. Retrofitting the integration may be a costly operation.
Now let us consider the types of testing. Are you targeting security testing, usability testing, or load testing in anticipation of server stress? List all your current internal systems and their capabilities. Overlay this with your plan and identify the QA services you need from an outsourcer. Will they be working with your team in places, and which testing will they be required to fulfill independently? At this point it is just an overview, so do not be afraid to ask QA testing experts for their input. They will be able to help identify these needs with you and, in turn, this is a great opportunity to help you decide which vendor to work with.
Ask what types of reporting you can expect and what detail they will provide. In a sector where communication is arguably more important than any other factor, knowing your vendor’s process for connecting and reporting is essential. To drive decision-making, make sure you will get the information you need at timely intervals.
Cost and Risk
Booz Allen Hamilton issued a 2014 report pointing out that “savings typically result because the outsourcing supplier can access a cheaper, more flexible workforce and the latest, most efficient technology. Organizations claim that they achieve, on average, a 15% cost reduction through outsourcing.” Datamark Incorporated, which delivers enterprise content management services to Fortune 500 companies, backs these claims. In a 2014 white paper, it found cost savings of 31% on a single-year cost analysis, while 33% on a three-year study of the same sampled business. The list of examples is almost inexhaustible, and with the introduction of ISO standards and procedural certifications to many genres, the risk factor is easier to mitigate for those with good due diligence.
You do not need to be a testing guru or an IT genius. You just need to understand the software testing processes involved so you can make much more informed decision-making. To some CIOs out there, this is second nature; however, if it is not, then outlining research on the processes will make life considerably easier. Look up some of the following terminologies as a starting point, and make sure your QA outsourcing company covers it, or at least the ones that are important to you:
- Automated and Manual Testing
- Compatibility Testing
- Functional Testing
- Performance Testing
- Security Testing
- Black Box Testing
- End-to-End Testing
- Incremental Testing
- Integration Testing
- Regression Testing
- Unit Testing
- Live Monitoring
- Product Certification
- Asana, Trello, TestRail, & Agile Scrum Methodology
1. You get what you pay for.
If you choose the cheapest bidder, you may end up redoing work over and over again or, worse, bringing in a second QA company to fix the mistakes of the first, which will result in the initial cost savings rapidly disappearing and project launch dates pushed back. Consider their retention rate and returning customer percentage over the volume of their clients. These are good indicators of quality work, over their ability to underbid the competition.
2. You need proof.
Spend some time looking into the company history, past projects, client base, and experience in your specific needs. Don’t be afraid to test them out. Ask for a trail (a company of confident QA expertise will be happy to accommodate this). If they cannot spare the workforce for a demo, then they certainly cannot scale to fit your demands on a last-minute alteration, crisis management, or multiple projects as you hit a growth spurt.
3. Quality assurance is no assurance of quality.
A good portfolio and a good price? So far so good. But, there is still no guarantee that your project will be the continuation of their past glory. If you want to know if you are in good hands (and will be for a long time), look into the hiring process and ask not just about their customer retention, but their staff turnover rate as well. Also, find out what internal development programs they have and how they invest in their people. The bottom line is, how much they care about their people has a direct correlation to how much their people will care about you.
4. Don’t get lost in translation.
If you are looking for great software testing outsourcing companies, then you must be looking at Southeast Asia. Technology, education, and cost-effective labor all point to emerging and proven hot markets such as Vietnam; however, it has its own set of challenges.
Keeping instructions, updates, and project management perfectly in check on a daily basis is hard enough in any environment, without crossing language barriers. Therefore, language competencies are a priority. Most well-structured software testing outsourcing companies will have at least a degree of Western Management native to American and European languages and standards. In combination to this, several Southeast Asian countries pride themselves on their extra language education, especially English.
Take mobile gaming for instance. Regardless of your hard launch target, you will be soft launching to test viability, stress test servers, sample ad network aggregators, and solve bugs. However, you need a cheap, viable demographics to do so. Again, Southeast Asia is the go-to place, as covered by Chart Boast in their analysis of emerging markets. The low cost of CPI, the entry and the vast pool of westernized highly educated gamers is perfect in countries such as Vietnam, Thailand, Indonesia, and Malaysia.
However, studies have shown a 273% increase in downloads can be achieved by simply localizing game text and ASO, languages to popular markets such as Mandarin, Japanese, Korean, Spanish German and French. The cost of doing so is very small compared to the overall project and is a worthwhile investment. It’s worth knowing if your QA provider covers this variable.
5. Understand your role.
The quality of the testing depends on the amount and quality of information the developer provides. The more information, the better you can prepare test requirements and the greater the number of defects you can identify. You must focus on the outcomes and involve the outsourced developer in the planning phase. By having a trustworthy outsourced partner, you can leverage their QA expertise while developing a detailed plan. This, in turn, will save you from a lot of hassle further down the road.
Most people make the mistake of omitting some information while sharing a project brief as they assume it is obvious. Seasoned CIOs warn against this behavior and repeatedly stress on explaining things in detail. What is crystal clear to you may not be to your outsourced team. It is not lack of understanding or skill. It is simply that they are not in your head. Never assume they are.
It is almost impossible to iron out all the details, but regular reporting, communication, and cross-checking will help ensure that the task is properly understood. It is always better to over-communicate than miss out on some seemingly obvious but important detail.
6. Maximize modern methods and technology.
It should go without saying that your outsourced QA testing experts need to be equipped with excellent testing labs, latest software, and a vast array of hardware (mobile devices, tablets, servers, etc.) It seems obvious but, so often, this small yet crucial fact gets overlooked.
Moreover, it is important to assess not just the testing tools, but how they are applied as well. Modern, agile scrum methodology offers greater transparency and superior results. By breaking up projects into short, manageable chunks through agile scrum methodology, you will have more opportunities for testing, feedback, and adaptation. For best results, the mindset, as well as the technology of your QA outsourcing partner, has to be modern and innovative.
Steps to Take
1. Choose an engagement model.
Are you going to implement total or incremental outsourcing?
- Total outsourcing: The outsourcing partner is in charge of the whole software testing process for several projects.
- Incremental outsourcing: The QA company divides the work into smaller, more manageable projects to reduce the need for outsourcing software quality assurance.
2. Prepare your SLAs.
Service Level Agreements (SLAs) are meant to outline the amount of QA services your outsourcing partner is going to provide. SLAs usually include the following:
- On-time delivery: When are the target dates for finishing big deliverables? These must be set at the beginning. If the dates are to be moved, use change control processes.
- Effectiveness: To be more effective, is there a need to reduce costs, increase profit, or adapt business transactions?
- Volume of work: In fixed-price projects, the number of deliverables are fixed, but negotiable in time-and-material-basis projects.
- Customer satisfaction: What do customers say about your outsourcing partners work? Conduct research to find out.
- Sensitivity: How much time does your outsourcing partner need to carry out a request?
- System downtime and availability
3. Prioritize IP protection.
All personally identifiable information (PII) must never be duplicated, distributed, disclosed, conveyed, or made available to third parties in any manner. So make sure your outsourcing partner has security testing standards that will prevent any misuse or unauthorized access.
4. Check on the human resources.
The success of your partnership with an outsourcing software quality assurance company depends on the QA testing experts who will do the job. Do not hesitate to ask about the qualifications and experiences of the people involved in your project. Also, consider the QA company's ‘staff retention rates.’ Happy staff equals good work.
5. Aim for long-term collaboration.
Think about the long game as many software testing outsourcing companies go on to become your partners, not just a one-off QA services. This is a relationship decision that could benefit you for years to come. An on-demand, scalable (up and down), skilled workforce with your best interest in mind. Moreover, a long-term collaboration between you and your outsourcing partner will result in increasing quality. As your relationship with the software testing company improves, the processes and work methods will also improve. This should not be limited to testing but also include the other aspects of the end product as well.
6. Schedule for refactoring and bug fixing.
Software development is ongoing and is a complex and demanding craft. Bugs can and will occur, even after thorough testing and, over time, the code can naturally deteriorate. Often, developers are in a hurry to meet short deadlines, and small issues with code are pushed through. The code still works, but it is more difficult to read and may not perform as well as it could.
There is a need to consider the costs of maintenance and updates to resolve these issues. This ‘technical debt’ can be limited by refactoring regularly, as refactoring allows you to address issues if you have been staying involved in the development of your product.