Crossversion defect prediction: use historical data, crossproject data, or both? Although a longrunning project has experienced many releases, removing defects from a product is still a challenge. Crossversion defect prediction (CVDP) regards project data of prior releases as a useful source for predicting faultprone modules based on defect prediction techniques. Recent studies have explored crossproject defect prediction (CPDP) that uses the project data from outside a project for defect prediction. While CPDP techniques and CPDP data can be diverted to CVDP, its effectiveness has not been investigated. To investigate whether CPDP approaches and CPDP data are useful for CVDP. The investigation also compared the usage of prior release data. We chose a style of replication of a previous comparative study on CPDP approaches. Some CPDP approaches could improve the performance of CVDP. The use of the latest prior release was the best choice. If one has no CVDP data, the use of CPDP data for CVDP was found to be effective. 1) Some CPDP approaches could improve CVDP, 2), if one can access project data from the latest release, project data from older releases would not bring clear benefit, and 3) even if one has no CVDP data, appropriate CPDP approaches would be able to deliver quality prediction with CPDP data.

Predicting Defects with Latent and Semantic Features from Commit Logs in an Industrial Setting Software defect prediction is still a challenging task in industrial settings. Noisy data andor lack of data make it hard to build successful prediction models. In this study, we aim to build a changelevel defect prediction model for a software project in an industrial setting. We combine various probabilistic models, namely matrix factorization and topic modeling, with the expectation of overcoming the noisy and limited nature of industrial settings by extracting hidden features from multiple resources. Commit level process metrics, latent features from commits, and semantic features from commit messages are combined to build the defect predictors with the use of Log Filtering and feature selection techniques, and two machine learning algorithms Naive Bayes and Extreme Gradient Boosting (XGBoost). Collecting data from various sources and applying data preprocessing techniques show a statistically significant improvement in terms of probability of detection by up to 24% when compared to a base model with process metrics only.