Software fault prediction using particle swarm algorithm with genetic algorithm and support vector machine classifier. (27th January 2020) - Alsghaier, Hiba; Akour, Mohammed
Summary: Software fault prediction is a process of developing modules that are used by developers in order to help them to detect faulty classes or faulty modules in early phases of the development life cycle and to determine the modules that need more refactoring in the maintenance phase. Software reliability means the probability of failure has occurred during a period of time, so when we describe a system as not reliable, it means that it contains many errors, and these errors can be accepted in some systems, but it may lead to crucial problems in critical systems like aircraft, space shuttle, and medical systems. Therefore, locating faulty software modules is an essential step because it helps defining the modules that need more refactoring or more testing. In this article, an approach is developed by integrating genetics algorithm (GA) with support vector machine (SVM) classifier and particle swarm algorithm for software fault prediction as a stand though for better software fault prediction technique. The developed approach is applied into 24 datasets (12‐NASA MDP and 12‐Java open‐source projects), where NASA MDP is considered as a large‐scale dataset and Java open‐source projects are considered as a small‐scale dataset. Results indicate that integrating GA with SVM and particle swarm algorithm improves the performance of the software fault prediction process when it is applied into large‐scale and small‐scale datasets and overcome the limitations in the previous studies.