Litcius/Paper detail

ProRE: An ACO- based programmer recommendation model to precisely manage software bugs

Ashima Kukkar, Umesh Kumar Lilhore, Jaroslav Frnda, Jasminder Kaur Sandhu, Rashmi Prava Das, Nitin Goyal, Arun Kumar, Kamalakanta Muduli, Filip Řezáč

2022Journal of King Saud University - Computer and Information Sciences16 citationsDOIOpen Access PDF

Abstract

The process of assigning bugs to particular programmers is called bug assignment in software engineering. The programmer can fix the bugs by applying their knowledge. This research article presents an Ant colony optimization-based programmer recommendation model (ProRE) to manage software bugs precisely. The proposed ProRE model performs four operations: data pre-processing, i.e., data Pre-processing, extraction, feature selection, and programmer recommendation process. The feature selection stage utilized the Ant colony optimization (ACO) method to determine the appropriate subsets of features from all features. In the programmer recommendation stages, three programmer metrics, i.e., functionality ranking, bug occurrence, and mean Bug fixing time, are utilized for the recommendation assignment. The effectiveness of the proposed programmer recommendation system is assessed using datasets from Mozilla, Eclipse, Firefox, JBoss, and OpenFOAM. It is noted that the proposed model offers a better recommendation strategy over the other available systems. The simulation findings of the proposed ProRE model are also analyzed with well-known available ML methods, i.e., SVM, NB, and C4.5. It is observed that the recommendation results have improved by an average of 4%, 10%, and 12% compared to SVM, C4.5, and NB-based models. Programmer recommendation software is implemented for allocating the bugs to accurate programmers. It has been found that the proposed ProRE model generates more optimistic outcomes than existing ones.

Topics & Concepts

ProgrammerComputer scienceSoftware regressionSoftwareAnt colony optimization algorithmsProcess (computing)Software bugRanking (information retrieval)Data miningSoftware engineeringMachine learningDatabaseProgramming languageSoftware developmentArtificial intelligenceSoftware qualitySoftware Engineering ResearchSoftware Engineering Techniques and PracticesSoftware System Performance and Reliability