Would you entrust your software to a 3rd Party Tester?
March 01, 2007
In an environment where battling against very tight deadlines with slimmer budget than ever is not uncommon, one might ask "How can I best make use of my limited resources and still produce high-quality output?"
As a software house or an organization that has an internal IT department with in-house software projects, you know that you can produce a good design and see it through development. However, with very tight timelines and resource allocations, you might ask again "Have I done everything that needs to be done? Have I followed the design down to the last detail? Have I addressed all requirements?"
If you have your own test team, you would address these questions to them. However, having a test team that is totally independent from development team does not usually fit the profile of a project with very limited resources.
Thus, knowing it is imperative that your software be thoroughly tested before handing it over to your customer (external or internal), you think about your options.
One likely option is to hire testers to perform testing. This option may be a tedious and slow process, expensive, and worse, may not guarantee the results you need. Hiring testers gets you into the lengthy process of placing a public advertisement, pooling applicants, skills evaluation, and matching. Choosing between hiring permanent or project-based employees may further limit your selection.
Sometimes when newly hired employees do not possess all the skills you require, you may need to train them and adjust to their learning curve. And then there's the question of guarantee: "What guarantee do I have that the testers I hired will perform and deliver as expected?"
This brings us down to the other option: hire a third-party test team to perform specific tests at specified periods of time. But would you entrust your software to a 3rd party tester? The better question is "Why not?" Here are some known benefits that can make this option viable for your project.
Get unbiased test results. Imagine a finger pointing scenario upon discovery of a critical problem in a system. Developer: "It's your hardware that's caused the problem!" Client: "No, it's your code! You did not adhere to the coding standards!"
Does this sound familiar? Apparently, it is the developer's word against its client's. In this difficult scenario, a 3rd party tester provides neutral grounds, a different perspective and a means to strike a balance between different parties concerned. With the right expertise and execution of systematic and appropriate testing methods, a third party tester can provide objective and unbiased test results.
Benefit from a systematic testing process. Third-party testers are experts who have tested many different kinds of systems. Third party testing organizations live to do this part of the SDLC alone and must have established mature and systematic testing procedures.
In a systematic testing process, testing activities are carefully planned out and tests designed based on system requirements. During execution, activities are monitored, data are gathered, metrics are used in analysis. All these processes are documented, traceable to every requirement. To the development team or project manager, this means hassle-free monitoring by having an extra hand that does all testing and better control of the testing process without the hands-on.
Cover more in less time, at less cost. Since you have a separate team of testers, testing does not have to be done only at the end of the project. Third-party testers can work in parallel with every phase of development. This strategy can shorten time spent on test design as testers are involved early in the project, and is cost-effective since problems are mitigated before they have a chance to blow out of proportions.
Be free of hiring and training hassles. A third-party team of testers are usually good-to-go, meaning they are readily fit for the job, can start working efficiently and fast with very little or no learning curve. Time and resources being spent on recruitment and maintenance of a team of testers, who constantly needs to be upgraded and do not guarantee the level of performance you need, can be completely eliminated.
Get more security. Working with a corporate entity provides more security than working with individual contractors or employees. A third-party testing organization assumes bigger responsibility and provides more credibility and capability to deliver a project. With a corporate entity, measures can be taken to safeguard confidential or proprietary information, as most third-party contracts are governed by non-disclosure agreements.
Third-party testing is not a new thing. In fact a lot of banks and some other organizations with mission-critical applications have hired these experts in the '90s in anticipation of the Y2k bug. Now with business process automation becoming more and more inevitable, business applications are becoming more critical and software requirements are becoming more complex. In an era where business process outsourcing is becoming more viable for businesses in order to stay competitive, a combination of your business expertise and third-party software quality engineering and testing may just be your key to success in delivering every software project you develop.
Roel C. Hernandez
President and CEO
CheQ Systems, Inc.