Most companies still rely primarily on testing to evaluate the quality of their systems. Although industrial products are now available to help manage testing artifacts, such as test cases, test drivers, and test results, the actual selection of the test cases is primarily an ad hoc process. It is an interesting paradox that while most companies claim to be proud of the quality of their own software, everyone seems universally disappointed in the quality of the software they buy from others. One has to question why so few research ideas have permeated industrial practice. One answer is that academic researchers have not produced many ideas that are actually practical.
Software testing is a fertile research area.
There are several conferences and journals that are dominated by papers about software quality issues. For the most part, however, the ideas in these papers cannot be used to help improve the quality of real software systems. Researchers assume a simplified model of the world and demonstrate an improvement over previous work that also was based upon unrealistic, simplifying assumptions. This is a reasonable scientific paradigm, especially if the results provide insight that can lead to some breakthroughs that are applicable to real software systems. Unfortunately, this has not been the case for most work in software testing.