Three-level learning for improving cross-project logging prediction for if-blocks

Journal of King Saud University - Computer and Information Sciences(2019)

Cited 6|Views5
No score
Abstract
Log statements present in the source code provide important execution information to the software developers while debugging. Predicting source code constructs that must be logged is a technically challenging task. Machine learning models are popularly used in literature for logging prediction. These models may not be suitable for small or new projects as these projects do not have sufficient prior data to train the prediction model. For such scenarios, cross-project logging prediction can be useful, in which knowledge gained from the standard project(s) is used to build the model. This paper proposes a three-level model, CLIF, for Cross-project if-blocks logging prediction. CLIF first converts textual features into numeric-textual features(Level-1). CLIF then combines numeric-textual features with Boolean and numeric features(Level-2). Since only few code constructs are logged, CLIF finally learns an effective imbalance decision threshold boundary to predict logged/non-logged code constructs(Level-3). We use 2 text mining classifiers(Level-1) and 8 machine learning classifiers(Level-2) and generate a total of 16 CLIF classifiers. We evaluate performance of CLIF classifiers on three open source projects(six source & target project pair). Experimental results show that CLIF outperforms the existing LogOpt-Plus model and give an improvement of up to 8.21% in average F1-score, and 4.89% in average ROC-AUC.
More
Translated text
Key words
prediction,three-level,cross-project,if-blocks
AI Read Science
Must-Reading Tree
Example
Generate MRT to find the research sequence of this paper
Chat Paper
Summary is being generated by the instructions you defined