Volume 8 Number 7 (Jul. 2013)
Home > Archive > 2013 > Volume 8 Number 7 (Jul. 2013) >
JSW 2013 Vol.8(7): 1620-1633 ISSN: 1796-217X
doi: 10.4304/jsw.8.7.1620-1633

Predicting Bugs in Source Code Changes with Incremental Learning Method

Zi Yuan1, Lili Yu1, 2, Chao Liu1, Linghua Zhang3

1Department of Computer Science, Beihang University, Beijing, China
2The Second Artillery Software Testing Center, Beijing, China
3Symantec Software Co., Ltd, Beijing, China

Abstract—Software is constructed by a series of changes and each change has the risk to introduce bugs. Predicting the existence of bugs in source code changes could help developers detect and fix bugs immediately upon the completion of a change, which accelerates the bug fixing process and save the limited time and human resources effectively. However, because of altering nature in the underlying bug generation process, the concept used to depict the bugintroducing patterns is drifting, which makes it difficult to predict latent bugs of source code changes accurately, especially in the long-term prediction scenario. In order to deal with this problem, a feature-based incremental learning framework is proposed. It is comprised of three components: (1) an incremental discretization method, which is used to transform the quantitive features in the corpus incrementally, (2) an incremental feature selection method, which is always keeping a subset with the most informative features, and (3) an incremental classification algorithm, which updates the classifier dynamically and considers the current best subset of features during prediction. This proposed approach is evaluated on three famous open source systems, Eclipse, Mozilla and jedit. The results show that our approach performs better than the non-incremental method in dealing with concept drift, with the consideration of keeping the value of both precision and recall stable at a suitable level over time. We also implement a prototype with this learning framework and apply it to a real software development scenario.

Index Terms—Source code change, concept drift, incremental learning, bug prediction, software engineering.


Cite: Zi Yuan, Lili Yu, Chao Liu, Linghua Zhang, "Predicting Bugs in Source Code Changes with Incremental Learning Method," Journal of Software vol. 8, no. 7, pp. 1620-1633, 2013.

General Information

  • ISSN: 1796-217X (Online)
  • Frequency:  Quarterly
  • Editor-in-Chief: Prof. Antanas Verikas
  • Executive Editor: Ms. Yoyo Y. Zhou
  • Abstracting/ Indexing: DBLP, EBSCO, CNKIGoogle Scholar, ProQuest, INSPEC(IET), ULRICH's Periodicals Directory, WorldCat, etc
  • E-mail: jsweditorialoffice@gmail.com
  • APC: 500USD
  • Jun 12, 2024 News!

    Vol 19, No 2 has been published with online version   [Click]

  • Jan 04, 2024 News!

    JSW will adopt Article-by-Article Work Flow

  • Apr 01, 2024 News!

    Vol 14, No 4- Vol 14, No 12 has been indexed by IET-(Inspec)     [Click]

  • Apr 01, 2024 News!

    Papers published in JSW Vol 18, No 1- Vol 18, No 6 have been indexed by DBLP   [Click]

  • Mar 01, 2024 News!

    Vol 19, No 1 has been published with online version    [Click]