A fuzzy logic expert system to predict module fault proneness using unlabeled data

Several techniques have been proposed to predict the fault proneness of software modules in the absence of fault data. However, the application of these techniques requires an expert assistant and is based on fixed thresholds and rules, which potentially prevents obtaining optimal prediction results...

Full description

Bibliographic Details
Main Authors: Golnoush Abaei, Ali Selamat, Jehad Al Dallal
Format: Article
Language:English
Published: Elsevier 2020-07-01
Series:Journal of King Saud University: Computer and Information Sciences
Subjects:
Online Access:http://www.sciencedirect.com/science/article/pii/S1319157818300247
_version_ 1818259539858817024
author Golnoush Abaei
Ali Selamat
Jehad Al Dallal
author_facet Golnoush Abaei
Ali Selamat
Jehad Al Dallal
author_sort Golnoush Abaei
collection DOAJ
description Several techniques have been proposed to predict the fault proneness of software modules in the absence of fault data. However, the application of these techniques requires an expert assistant and is based on fixed thresholds and rules, which potentially prevents obtaining optimal prediction results. In this study, the development of a fuzzy logic expert system for predicting the fault proneness of software modules is demonstrated in the absence of fault data. The problem of strong dependability with the prediction model for expert assistance as well as deciding on the module fault proneness based on fixed thresholds and fixed rules have been solved in this study. In fact, involvement of experts is more relaxed or provides more support now. Two methods have been proposed and implemented using the fuzzy logic system. In the first method, the Takagi and Sugeno-based fuzzy logic system is developed manually. In the second method, the rule-base and data-base of the fuzzy logic system are adjusted using a genetic algorithm. The second method can determine the optimal values of the thresholds while recommending the most appropriate rules to guide the testing of activities by prioritizing the module’s defects to improve the quality of software testing with a limited budget and limited time. Two datasets from NASA and the Turkish white-goods manufacturer that develops embedded controller software are used for evaluation. The results based on the second method show improvement in the false negative rate, f-measure, and overall error rate. To obtain optimal prediction results, developers and practitioners are recommended to apply the proposed fuzzy logic expert system for predicting the fault proneness of software modules in the absence of fault data.
first_indexed 2024-12-12T18:17:03Z
format Article
id doaj.art-2b38cf737bcf4ada9b46276243b3e5ca
institution Directory Open Access Journal
issn 1319-1578
language English
last_indexed 2024-12-12T18:17:03Z
publishDate 2020-07-01
publisher Elsevier
record_format Article
series Journal of King Saud University: Computer and Information Sciences
spelling doaj.art-2b38cf737bcf4ada9b46276243b3e5ca2022-12-22T00:16:14ZengElsevierJournal of King Saud University: Computer and Information Sciences1319-15782020-07-01326684699A fuzzy logic expert system to predict module fault proneness using unlabeled dataGolnoush Abaei0Ali Selamat1Jehad Al Dallal2Software Engineering Research Group (SERG), Department of Software Engineering, Faculty of Computing, Universiti Teknologi Malaysia, 81310 UTM Johor Bahru, Johor, Malaysia; School of Computing, Faculty of Engineering, UTM & UTM and Media and Games Center of Excellence (MagicX), Universiti Teknologi Malaysia, Johor Bahru, MalaysiaSoftware Engineering Research Group (SERG), Department of Software Engineering, Faculty of Computing, Universiti Teknologi Malaysia, 81310 UTM Johor Bahru, Johor, Malaysia; School of Computing, Faculty of Engineering, UTM & UTM and Media and Games Center of Excellence (MagicX), Universiti Teknologi Malaysia, Johor Bahru, Malaysia; Malaysia Japan International Institute of Technology (MJIIT), Universiti Teknologi Malaysia (UTM), Johor Bahru, Malaysia; Center for Basic and Applied Research, Faculty of Informatics and Management, University of Hradec Kralove Rokitanskeho 62, 500 03 Hradec Kralove, Czech Republic; Corresponding author at: Software Engineering Research Group (SERG), Department of Software Engineering, Faculty of Computing, Universiti Teknologi Malaysia, 81310 UTM Johor Bahru, Johor, Malaysia.Department of Information Science, Kuwait University, P.O. Box 5969, Safat 13060, KuwaitSeveral techniques have been proposed to predict the fault proneness of software modules in the absence of fault data. However, the application of these techniques requires an expert assistant and is based on fixed thresholds and rules, which potentially prevents obtaining optimal prediction results. In this study, the development of a fuzzy logic expert system for predicting the fault proneness of software modules is demonstrated in the absence of fault data. The problem of strong dependability with the prediction model for expert assistance as well as deciding on the module fault proneness based on fixed thresholds and fixed rules have been solved in this study. In fact, involvement of experts is more relaxed or provides more support now. Two methods have been proposed and implemented using the fuzzy logic system. In the first method, the Takagi and Sugeno-based fuzzy logic system is developed manually. In the second method, the rule-base and data-base of the fuzzy logic system are adjusted using a genetic algorithm. The second method can determine the optimal values of the thresholds while recommending the most appropriate rules to guide the testing of activities by prioritizing the module’s defects to improve the quality of software testing with a limited budget and limited time. Two datasets from NASA and the Turkish white-goods manufacturer that develops embedded controller software are used for evaluation. The results based on the second method show improvement in the false negative rate, f-measure, and overall error rate. To obtain optimal prediction results, developers and practitioners are recommended to apply the proposed fuzzy logic expert system for predicting the fault proneness of software modules in the absence of fault data.http://www.sciencedirect.com/science/article/pii/S1319157818300247Fuzzy logic systemGenetic algorithmData-baseRule-baseThreshold
spellingShingle Golnoush Abaei
Ali Selamat
Jehad Al Dallal
A fuzzy logic expert system to predict module fault proneness using unlabeled data
Journal of King Saud University: Computer and Information Sciences
Fuzzy logic system
Genetic algorithm
Data-base
Rule-base
Threshold
title A fuzzy logic expert system to predict module fault proneness using unlabeled data
title_full A fuzzy logic expert system to predict module fault proneness using unlabeled data
title_fullStr A fuzzy logic expert system to predict module fault proneness using unlabeled data
title_full_unstemmed A fuzzy logic expert system to predict module fault proneness using unlabeled data
title_short A fuzzy logic expert system to predict module fault proneness using unlabeled data
title_sort fuzzy logic expert system to predict module fault proneness using unlabeled data
topic Fuzzy logic system
Genetic algorithm
Data-base
Rule-base
Threshold
url http://www.sciencedirect.com/science/article/pii/S1319157818300247
work_keys_str_mv AT golnoushabaei afuzzylogicexpertsystemtopredictmodulefaultpronenessusingunlabeleddata
AT aliselamat afuzzylogicexpertsystemtopredictmodulefaultpronenessusingunlabeleddata
AT jehadaldallal afuzzylogicexpertsystemtopredictmodulefaultpronenessusingunlabeleddata
AT golnoushabaei fuzzylogicexpertsystemtopredictmodulefaultpronenessusingunlabeleddata
AT aliselamat fuzzylogicexpertsystemtopredictmodulefaultpronenessusingunlabeleddata
AT jehadaldallal fuzzylogicexpertsystemtopredictmodulefaultpronenessusingunlabeleddata