Abstract
AbstractSoftware defect prediction is a critical challenge within software engineering aimed at enhancing software quality by proactively identifying potential defects. This approach involves selecting defect-prone modules ahead of the testing phase, thereby reducing testing time and costs. Machine learning methods provide developers with valuable models for categorising faulty software modules. However, the challenge arises from the numerous elements present in the training dataset, which frequently reduce the accuracy and precision of classification. Addressing this, selecting effective features for classification from the dataset becomes an NP-hard problem, often tackled using metaheuristic algorithms. This study introduces a novel approach, the Binary Chaos-based Olympiad Optimisation Algorithm, specifically designed to select the most impactful features from the training dataset. By selecting these influential features for classification, the precision and accuracy of software module classifiers can be notably improved. The study's primary contributions involve devising a binary variant of the chaos-based Olympiad optimisation algorithm to meticulously select effective features and construct an efficient classification model for identifying faulty software modules. Five real-world and standard datasets were utilised across both the training and testing phases of the classifier to evaluate the proposed method's effectiveness. The findings highlight that among the 21 features within the training datasets, specific metrics such as basic complexity, the sum of operators and operands, lines of code, quantity of lines containing code and comments, and the sum of operands have the most significant influence on software defect prediction. This research underscores the combined effectiveness of the proposed method and machine learning algorithms, significantly boosting accuracy (91.13%), precision (92.74%), recall (97.61%), and F1 score (94.26%) in software defect prediction.
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.