Testing Services provides a platform for QA professionals to discuss and gain insights in to the business value delivered by testing, the best practices and processes that drive it and the emergence of new technologies that will shape the future of this profession.

What is the future of the testing function?

This is a question that gets asked by most executives looking to establish independent testing as a function/department on an on-going basis, or by those purists who believe in creation rather than correction. But, this is a question that all testing professionals need to ask themselves.

This question can be tackled in many ways. Here's my perspective -

First - Software testing is here to stay for next several years Second - I do believe that several large software development centers will mature in this process and package softwares will address majority requirements in coming years. Software testing will increasingly fall in-line with development/configuration, along with increased levels of instrumentation (automation), just like we have in automobile assembly lines.

There are several steps being taken by organizations. All testing functions need to be setup keeping this long term goal in mind.

As testing professionals we need to contribute towards accelerating this change. Simply because, those that work towards developing solutions that can remove the need for independent testing will do well for themselves in the long run. It's about accepting the future of testing and keeping pace with it rather than wishing it away. Thoughts???

Comments

Why do people keep repeating the nonsense that software is like manufacturing quality control? Software development is not like an assembly line; it's like a design studio or publishing firm. In software, the task is not to make sure that each copy of the original is just like the original, since in software, we are designing and developing something new each time. Instead, the task is instead to question to the design and its relationship to the people who will buy and use the software. Questions in this realm require sapience. Automation can assist with that, but cannot replace it. Indeed, if we're doing testing badly and uncritically, automation will simply accelerate bad, uncritical testing.

The weird thing is that people who tout your line of reasoning so consistently leave egregious errors in their writing. For example, in the post above, there are several obvious grammatical and punctuation errors, and a misapplied font change up above in the middle of the word "software". Would you put these problems down to a failure of your tools? Or would you see the errors in execution as parallel to the errors in reasoning, evidence of kind of slapdash world view?

I agree with your observation that automation will not solve the problems arising due to faulty thinking on software validation aspects.

However, my question was more about independent validation/testing and its relevance in the future. The question that I hear from many client managers, especially from large enterprises having complex systems, is why do they need an elaborate independent testing after the software has been built. They also question the right level of independent validation and the role a testing team can play in upstream software build activities that can help reduce the need for late defect detection activities thereby saving associated costs and reducing delays...these are the questions I was referring to when I had written about future of independent testing.

I would welcome your thoughts on whether this is something that testing teams or we as testers can contribute to? Are there tools and techniques that can be leveraged by testing teams during software build activities (like Requirements, Design and Coding) to help enhance quality levels in upstream activities, thereby reducing the need for defect detection at the end that can be attributed to upstream activities and could have been detected if a particular validation technique was used. Do we see any innovations happening in this space to bring about this shift in focus for testing professionals and industry? That is what I was intending to find out.

Venky, While there are many IT Managers questioning the need for separate testing process, there are also quite a lot who are completely sold out to the value a test team can deliver.
However I think there is a point we need to learn from people who question this, I believe they are a bit frustrated with the fact that there is lot of development going and then it goes to testing and again a significant cycle of re-development and so on. Why cannot it mesh together and work in a more collaborative fashion?
The traditional way of testing can sometimes be inefficient ( though again it would depend on nature of platform) and the way out of this I believe is early visibility of the testing team in the project and creating processes for them to engage early, software development models like Agile work with this view and even in traditional models of the testing engagement there are plenty of processes where testing feedback and inputs can be utilised.
Testing is necessary however it needs to work together with the development in form of various phases through development model and if all phases of testing ( Unit, System, SIT and UAT ) align with each other and feed into each other we will see the effort in testing being distributed more evenly into the project cycle.
So the people who question are right but they need to be shown firstly the benefits of testing ( if they are not aware already ! ) and secondly work with them to fine tune the complete testing processes with the programme and make testing work more seamlessly with development / design / business / operations.

First thing we all need to understand is we can't replace completely functional testing with automation. Automation plays main role in regression.
Secondly, As long as development exists testing need be there. So there is no end.
Thirdly, the cost of fix increases in huge as the finding of defect goes up in the life cycle of project.

The independent testing team can always provide better quality compared with traditional approach. We just need to apply common sense. Independent testing team is specialized in this area and hence they can deliver better quality. This is more evident as the advance of performance testing, datawarehouse testing, soa testing, security testing and automation testing.

Only people who doesn’t have much idea about the overall project life cycle and cost involved in each of the activity can say independent testing team is not required.