Publication Type
Conference Proceeding Article
Version
publishedVersion
Publication Date
5-2015
Abstract
Defects are inseparable part of software development and evolution. To better comprehend problems affecting a software system, developers often store historical defects and these defects can be categorized into families. IBM proposes Orthogonal Defect Categorization (ODC) which include various classifications of defects based on a number of orthogonal dimensions (e.g., symptoms and semantics of defects, root causes of defects, etc.). To help developers categorize defects, several approaches that employ machine learning have been proposed in the literature. Unfortunately, these approaches often require developers to manually label a large number of defect examples. In practice, manually labelling a large number of examples is both time-consuming and labor-intensive. Thus, reducing the onerous burden of manual labelling while still being able to achieve good performance is crucial towards the adoption of such approaches. To deal with this challenge, in this work, we propose an active semi-supervised defect prediction approach. It is performed by actively selecting a small subset of diverse and informative defect examples to label (i.e., active learning), and by making use of both labeled and unlabeled defect examples in the prediction model learning process (i.e., semi-supervised learning). Using this principle, our approach is able to learn a good model while minimizing the manual labeling effort.
To evaluate the effectiveness of our approach, we make use of a benchmark dataset that contains 500 defects from three software systems that have been manually labelled into several families based on ODC. We investigate our approach's ability in achieving good classification performance, measured in terms of weighted precision, recall, F-measure, and AUC, when only a small number of manually labelled defect examples are available. Our experiment results show that our active semi-supervised defect categorization approach is able to achieve a weighted precision, recall, F-measure, and AUC of 0.651, 0.669, 0.623, and 0.710, respectively, when only 50 defects are manually labelled. Furthermore, it outperforms an existing active multi-class classification algorithm, proposed in the machine learning community, by a substantial margin.
Keywords
active learning, clustering, defect categorization, semi supervised learning, support vector machine
Discipline
Software Engineering
Research Areas
Software and Cyber-Physical Systems
Publication
2015 23rd IEEE International Conference on Program Comprehension (ICPC): May 18-19, Florence, Italy, Proceedings
First Page
60
Last Page
70
ISBN
9781467381598
Identifier
10.1109/ICPC.2015.15
Publisher
IEEE
City or Country
Piscataway, NJ
Citation
THUNG, Ferdian; LE, Xuan-Bach D.; and David LO.
Active Semi-Supervised Defect Categorization. (2015). 2015 23rd IEEE International Conference on Program Comprehension (ICPC): May 18-19, Florence, Italy, Proceedings. 60-70.
Available at: https://ink.library.smu.edu.sg/sis_research/3095
Copyright Owner and License
Publisher
Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-No Derivative Works 4.0 International License.
Additional URL
https://doi.org/10.1109/ICPC.2015.15