Agile Manifesto is very clear when it comes to people or tools. It has distinctly articulated that individual and interactions comes before process and tools.
That means, when there is a choice, give more importance to individuals on the ground. Another aspect of this manifesto is it is not asking us to ignore the tools. Manifesto recognizes the importance of being pragmatic while serving customers and having a balance in the organization among people, process, and tools.
In this era of extreme competitive market conditions, organizations need to be agile and reduce the time it takes market the product from concept to cash. The agility is possible only when the process is automated, which in turn needs a careful investment in tools.
So, the question of investment on people/tools is not about “neither or nor” but “and”.
If the software testers are not well paid and a sustainable environment is not given to them, they will quit the team or even the organization. As per the rough calculation from Australian HR professionals, reducing the employee turnover from 10% to 5% per year could save the company nearly $1.8 million. This number clearly shows that employee turnover could potentially result in making or breaking small/medium organizations.
Another agile testing principle worth noting and that which drives the importance of people and tool is to build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.
As per the above principle, we need to hire and retain motivated individuals. But that’s not sufficient; they need the right leadership, trusted environment and good tools to succeed.
Tools come handy when it comes to improving the speed of execution and reducing the human errors. The testers could do the really good job in testing a code with probably 1000 or even 10,000 lines of code. However, once the code reaches 100,000 lines, scaling becomes a problem and complexity increases.
The issue is not with the size, but the time. Organizations won’t push the release dates just because the size of the application is big. This challenge of time limitation could be handled only when right tools are put in place in automating the process of testing.
The testers could “outsource” repetitive tasks to tools and spend time in designing the right test cases.
In a flat world, software testing environment is moving closer toward a more unified approach, with many organizations stressing communication, collaboration, and transparency. Geographically distributed teams would be churning codes day in and day out. The codes need to be integrated and tested on a daily basis. The test results should be made visible to all the team members on a real-time basis. Such complex quality initiative could be coordinated only through a robust test management solution.
To conclude, who should get the funding, people or tools? The organizations cannot ignore either. There should be a balance in investing in hiring, retaining talented testers also supporting them with the right set of tools.