z-logo
Premium
Software fault prediction using particle swarm algorithm with genetic algorithm and support vector machine classifier
Author(s) -
Alsghaier Hiba,
Akour Mohammed
Publication year - 2020
Publication title -
software: practice and experience
Language(s) - English
Resource type - Journals
SCImago Journal Rank - 0.437
H-Index - 70
eISSN - 1097-024X
pISSN - 0038-0644
DOI - 10.1002/spe.2784
Subject(s) - support vector machine , computer science , algorithm , particle swarm optimization , software , java , machine learning , classifier (uml) , data mining , code refactoring , software fault tolerance , software system , artificial intelligence , operating system
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.

This content is not available in your region!

Continue researching here.

Having issues? You can contact us here