Data mining source code for locating software bugs: A case study in telecommunication industry

Burak Turhan, Gozde Kocak, Ayse Bener

Research output: Contribution to journalArticleResearchpeer-review

34 Citations (Scopus)

Abstract

In a large software system knowing which files are most likely to be fault-prone is valuable information for project managers. They can use such information in prioritizing software testing and allocating resources accordingly. However, our experience shows that it is difficult to collect and analyze fine-grained test defects in a large and complex software system. On the other hand, previous research has shown that companies can safely use cross-company data with nearest neighbor sampling to predict their defects in case they are unable to collect local data. In this study we analyzed 25 projects of a large telecommunication system. To predict defect proneness of modules we trained models on publicly available Nasa MDP data. In our experiments we used static call graph based ranking (CGBR) as well as nearest neighbor sampling for constructing method level defect predictors. Our results suggest that, for the analyzed projects, at least 70% of the defects can be detected by inspecting only (i) 6% of the code using a Naïve Bayes model, (ii) 3% of the code using CGBR framework.

Original languageEnglish
Pages (from-to)9986-9990
Number of pages5
JournalExpert Systems with Applications
Volume36
Issue number6
DOIs
Publication statusPublished - 1 Aug 2009
Externally publishedYes

Keywords

  • Case study
  • Defect prediction
  • Software bugs
  • Software testing

Cite this