ECLogger: Cross-Project Catch-Block Logging Prediction Using Ensemble of Classifiers
Journal Title: e-Informatica Software Engineering Journal - Year 2017, Vol 11, Issue 1
Abstract
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$rightarrow $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.
Authors and Affiliations
Sangeeta Lal, Neetu Sardana, Ashish Sureka
Model Driven Web Engineering: A Systematic Mapping Study
Background: Model Driven Web Engineering (MDWE) is the application of the model driven paradigm to the domain of Web software development, where it is particularly helpful because of the continuous evolution of Web techn...
Highly Automated Agile Testing Process: An Industrial Case Study
This paper presents a description of an agile testing process in a medium size software project that is developed using Scrum. The research methods used is the case study were as follows: surveys, quantifiable project da...
Resolving Conflict and Dependency in Refactoring to a Desired Design
Refactoring is performed to improve software quality while leaving the behaviour of the system unchanged. In practice there are many opportunities for refactoring, however, due to conflicts and dependencies between refac...
A literature review on the effectiveness and efficiency of business modeling
Background: Achieving and maintaining a strategic competitive advantage through business and technology innovation via continually improving effectiveness and efficiency of the operations are the critical survival factor...
On Visual Assessment of Software Quality
Development and maintenance of understandable and modifiable software is very challenging. Good system design and implementation requires strict discipline. The architecture of a project can sometimes be exceptionally di...