Novel IR Framework Finds Software Bugs Faster to Save Money and Manpower
Software Bug Localization uses an Informational Retrieval (IR) based framework to more quickly find the source of the coding errors. It stores both defect histories and modification histories of the software as it’s developed in the IR. It then incorporates a temporal decay into the estimations of the priors.
Then it constructs estimates for the probability of any given file to be the source of the bug. This technology works automatically. It leverages the development history of the files while incorporating a temporal decay factor in order to place greater weight on the recent maintenance efforts. We have found the version histories store a wealth of information that could potentially be used to predict the future defect likelihoods of the software entities such as files, classes, methods and so on.
Modifications made to a specific set of files in response to a change request suggest strong empirical dependencies among the changed files that may be captured otherwise via dynamic or static properties of the software.
The Software Bug Localization takes into account the spatial code proximity and term ordering relationships in a code base for improved retrieval accuracy. The retrieval framework uses a fuzzy matching mechanism between the term blocks of the queries and the source code.
This Query Conditioning (QC) approach effectively exploits the different types of structural information frequently included in bug reports. Software Bug Locater found that structural elements in existing bug reports miss vital information. Stack traces often hold crucial information not well represented in the source code of the bag-of-word assumption.
When the MRF modeling and query conditioning is included in the retrieval framework, you obtain significantly higher bug localization accuracies. These retrieval accuracies out perform all other state-of-the-art approaches by 30%– even those programs that take development history into account.
Once we add in the time decay, the speed of bug finding improves up to 80% faster than current methods.
Discover how your company can take advantage of Software Bug Localization to save money, manpower, and rise above the competition.