Why it makes sense to outsource testing
When it comes to IT projects, specifically web development, many agency managers and project owners fall into the trap of believing that they have the necessary skills in-house, and more than enough time to thoroughly test a website before it goes live. The reality though, is the following:
- The two phases of a project that are grossly underestimated, that cause frustration for both the client and the agency and that can impact your project schedule, are content population and feature testing.
- Managing content population in-house is neither cost-effective or a good use of your team’s time.
- Unless you have a dedicated testing team, the amount of functional testing done is usually inadequate to identify all issues before launch.
- Testing is usually carried out by team members who are either too close to the project or do not have the requisite expertise to do the testing justice.
- Projects rarely run to schedule due to unforeseen challenges associated with features taking longer than expected.
I am not saying that the above is always the case but based on my many years of experience managing web development teams this happens a lot more regularly than we would like to admit. The challenge with the above is that developers, PMs and Project Coordinators are so familiar with the project that when they do test, they use workarounds that “appear normal” to them and do not see the project the same way a fresh-eyed end user would. You will also find that they have other competing priorities which means that they run through the test cycles as quickly as possible so that they can get on with their other pressing tasks. This situation is further compounded if the project falls behind schedule in that the priority is all about bringing the project back on track and as a consequence other phases (including testing) suffer.
As a rule, it is never a good practise to have developers conduct end user testing as they are too close to the detail and truth be told they should be focussing on developing new code and refactoring or improving the existing code. The same can be said for PMs and Project coordinators. Their time is better spent on keeping the client informed, managing their expectations, managing scope creep, keeping a close eye on the budget and schedule, or taking on another project.
By outsourcing testing you immediately free up your staff to focus on the tasks that they are good at and that are more profitable for the Agency. The testing is carried out by users who have not been part of the requirements gathering, design and development phases and as such they have no bias towards the end product. They are looking at the solution in the cold light of day and will more readily be able to identify issues with functionality and usability than your own team.
Another challenge that outsourcing reduces is the quality of issue reporting. When you use your own internal staff, you find that the feedback is usually unstructured and inconsistent in the way that it is communicated and documented. The main reason for this is the informal nature of the relationships that exists with colleagues. External testers will have clearly defined processes and a standardised approach to feeding back on any issue so that developers can easily understand and recreate it if necessary.
There are many benefits of outsourcing some of your back office functions to other agencies that we outline in an earlier blog post , but looking at it purely from a website testing perspective, you will find that is surprisingly inexpensive, it allows you to redeploy your resources to activities that add more value to the Agency and client, and helps to identify any functional and or usability issues before being exposed to a “live” audience. There is nothing worse than handing over a project to a client or going live and then spending valuable (non-billable) time resolving a host of bugs.
In a nutshell, outsourcing your testing:
- Means that your team can focus on improving the product and customer experience.
- Can be seen as an insurance to reduce the risk of losing money because of bugs or user experience issues.
- Is more thorough than what would normally be carried out by your team.
- Is measurable in terms of savings, specifically:
- Time freed up in the office,
- Time saved fixing bugs post launch,
- Cost of a full time dedicated resource versus cost of the service.