ECLogger: Cross-Project Catch-Block Logging Prediction Using Ensemble of Classifiers
Background: Software developers insert log statements in the source code to record program execution information. However, optimizing the number of log statements in the source code is challenging. Machine learning based within-project logging prediction tools, proposed in previous studies, may not...
Main Authors: | , , |
---|---|
Format: | Article |
Language: | English |
Published: |
Wroclaw University of Science and Technology
2017-01-01
|
Series: | e-Informatica Software Engineering Journal |
Subjects: | |
Online Access: | http://www.e-informatyka.pl/attach/e-Informatica_-_Volume_11/eInformatica2017Art1.pdf |
_version_ | 1819029359924609024 |
---|---|
author | Sangeeta Lal Neetu Sardana Ashish Sureka |
author_facet | Sangeeta Lal Neetu Sardana Ashish Sureka |
author_sort | Sangeeta Lal |
collection | DOAJ |
description | Background: Software developers insert log statements in the source code to record program execution information. However, optimizing the number of log statements in the source code is challenging. Machine learning based within-project logging prediction tools, proposed in previous studies, may not be suitable for new or small software projects. For such software projects, we can use cross-project logging prediction. Aim: The aim of the study presented here is to investigate cross-project logging prediction methods and techniques. Method: The proposed method is ECLogger, which is a novel, ensemble-based, cross-project, catch-block logging prediction model. In the research We use 9 base classifiers were used and combined using ensemble techniques. The performance of ECLogger was evaluated on on three open-source Java projects: Tomcat, CloudStack and Hadoop. Results: ECLogger Bagging, ECLogger AverageVote, and ECLogger MajorityVote show a considerable improvement in the average Logged F-measure (LF) on 3, 5, and 4 source -> target project pairs, respectively, compared to the baseline classifiers. ECLogger AverageVote performs best and shows improvements of 3.12% (average LF) and 6.08% (average ACC – Accuracy). Conclusion: The classifier based on ensemble techniques, such as bagging, average vote, and majority vote outperforms the baseline classifier. Overall, the ECLogger AverageVote model performs best. The results show that the CloudStack project is more generalizable than the other projects. |
first_indexed | 2024-12-21T06:13:01Z |
format | Article |
id | doaj.art-7870376747ef4c3882aaac0fdcfec965 |
institution | Directory Open Access Journal |
issn | 1897-7979 2084-4840 |
language | English |
last_indexed | 2024-12-21T06:13:01Z |
publishDate | 2017-01-01 |
publisher | Wroclaw University of Science and Technology |
record_format | Article |
series | e-Informatica Software Engineering Journal |
spelling | doaj.art-7870376747ef4c3882aaac0fdcfec9652022-12-21T19:13:29ZengWroclaw University of Science and Technologye-Informatica Software Engineering Journal1897-79792084-48402017-01-0111194010.5277/e-Inf170101ECLogger: Cross-Project Catch-Block Logging Prediction Using Ensemble of ClassifiersSangeeta Lal0Neetu Sardana1Ashish Sureka2Jaypee Institute of Information Technology, Noida, Uttar-Pradesh, IndiaJaypee Institute of Information Technology, Noida, Uttar-Pradesh, IndiaABB Corporate Research, Bangalore, IndiaBackground: Software developers insert log statements in the source code to record program execution information. However, optimizing the number of log statements in the source code is challenging. Machine learning based within-project logging prediction tools, proposed in previous studies, may not be suitable for new or small software projects. For such software projects, we can use cross-project logging prediction. Aim: The aim of the study presented here is to investigate cross-project logging prediction methods and techniques. Method: The proposed method is ECLogger, which is a novel, ensemble-based, cross-project, catch-block logging prediction model. In the research We use 9 base classifiers were used and combined using ensemble techniques. The performance of ECLogger was evaluated on on three open-source Java projects: Tomcat, CloudStack and Hadoop. Results: ECLogger Bagging, ECLogger AverageVote, and ECLogger MajorityVote show a considerable improvement in the average Logged F-measure (LF) on 3, 5, and 4 source -> target project pairs, respectively, compared to the baseline classifiers. ECLogger AverageVote performs best and shows improvements of 3.12% (average LF) and 6.08% (average ACC – Accuracy). Conclusion: The classifier based on ensemble techniques, such as bagging, average vote, and majority vote outperforms the baseline classifier. Overall, the ECLogger AverageVote model performs best. The results show that the CloudStack project is more generalizable than the other projects.http://www.e-informatyka.pl/attach/e-Informatica_-_Volume_11/eInformatica2017Art1.pdfClassificationDebuggingEnsemble LoggingMachine LearningSource Code AnalysisTracing |
spellingShingle | Sangeeta Lal Neetu Sardana Ashish Sureka ECLogger: Cross-Project Catch-Block Logging Prediction Using Ensemble of Classifiers e-Informatica Software Engineering Journal Classification Debugging Ensemble Logging Machine Learning Source Code Analysis Tracing |
title | ECLogger: Cross-Project Catch-Block Logging Prediction Using Ensemble of Classifiers |
title_full | ECLogger: Cross-Project Catch-Block Logging Prediction Using Ensemble of Classifiers |
title_fullStr | ECLogger: Cross-Project Catch-Block Logging Prediction Using Ensemble of Classifiers |
title_full_unstemmed | ECLogger: Cross-Project Catch-Block Logging Prediction Using Ensemble of Classifiers |
title_short | ECLogger: Cross-Project Catch-Block Logging Prediction Using Ensemble of Classifiers |
title_sort | eclogger cross project catch block logging prediction using ensemble of classifiers |
topic | Classification Debugging Ensemble Logging Machine Learning Source Code Analysis Tracing |
url | http://www.e-informatyka.pl/attach/e-Informatica_-_Volume_11/eInformatica2017Art1.pdf |
work_keys_str_mv | AT sangeetalal ecloggercrossprojectcatchblockloggingpredictionusingensembleofclassifiers AT neetusardana ecloggercrossprojectcatchblockloggingpredictionusingensembleofclassifiers AT ashishsureka ecloggercrossprojectcatchblockloggingpredictionusingensembleofclassifiers |