A Fuzzy Logic-Based Model for Classifying Software Modules in Order to Achieve Dependable Software

A Fuzzy Logic-Based Model for Classifying Software Modules in Order to Achieve Dependable Software

Subhashis Chatterjee, Bappa Maji
DOI: 10.4018/IJSSMET.2020100103
OnDemand:
(Individual Articles)
Available
$37.50
No Current Special Offers
TOTAL SAVINGS: $37.50

Abstract

In this study, a fuzzy logic-based framework has been proposed to predict the situation of the software modules in the earlier phases of software lifecycle. The proposed model has taken into account domain experts' opinions and the available state of different software metrics as inputs. On the basis of dependability measures of software, different modules have been ranked earlier in the development process. Effect of the modules on the reliability, security, and availability of software has been judged by the proposed technique based on Mahalanobis distance metric. The study of software dependability in early phase assists the software developers to take corrective actions, which leads to minimize the testing efforts as well as development time. The proposed technique has been implemented on the promise software engineering repository data set. Performance of the proposed methodology is promising in identifying the fault-prone software modules. The result has also been compared with some known methodologies.
Article Preview
Top

1. Introduction

In the advanced society, individuals and organizations are dependent on software intensive systems. It is very essential to overcome the catastrophic failures in the complex computing systems like cash dispensers, nuclear power plant, satellite control, fastest transport systems, medical instruments, mission critical software systems, confidential database maintenance, etc. A great reliance is needed to place on those sophisticated systems. To develop a highly reliable, safe and secured system, dependable software is required. To achieve dependable software, professionals and researchers are mainly concentrating on early development of software. It will be easy for software professionals to take corrective measures in the early development phase if the target reliability and prescribed security level is known. This study concentrates on the software dependability analysis and a model has been proposed. In the area of software reliability, one kind of software reliability growth models is applicable at testing phase. Basis of these types of models is the testing failure data of software. Another kind of models is applicable during the early phases of software life cycle. Since failure data are unavailable, these types of models are dependent on various software metrics and the similar or earlier version software (Xie et al., 1999). There is a chance to take corrective strategies for the software developers if an idea about the reliability and security of software be obtained during the development process. The present article concentrates on such target in which software personnel will be beneficial for enhancing the quality of software.

In early phase of software development, researchers are trying to predict total number of residual defects, defect prone software modules, degree of fault proneness of modules, qualitative status of the software metrics with respect to target reliability, etc. Ohlsson et al. (1996) have developed a model for early identification of the fault prone models in large software system at Ericsson Telecom AB using the reliability relevant design metrics. It concludes that significant number of software modules contributing large number of defects can be identified at the design phase. In 1996, Ohlsson et al. have carried out an empirical study on predicting the fault prone software modules in the telephone switch system. The main objective of this article was to identify the most fault prone modules based on the information from the design factors which have significant influence on reliability.

In 2002, Khoshgoftaar, Allen and Deng have proposed a model based on regression trees to classify the software modules as fault prone or not. The proposed classifying rule helps in choosing a preferred balance among two types of misclassification rates. In this article, S-Plus regression tree algorithm has been used first time to classify the software modules. The data on four consecutive releases of a telecommunication system has been used in the case study. Khoshgoftaar and Allen (2003) have developed a model to predict the rank-order of the software modules according to their quality factor. The main objective of this study is the enhancement of the target reliability. The module-order model has been defined by them as a quantitative model which can be used to assign the rank-order of modules according to their quality factor. In this article two empirical case studies of industrial software system have been presented to establish the usefulness of their model in enhancing target reliability. In 2008, Elish and Elish have developed a model based on support vector machines to predict defect prone software modules. Four NASA datasets have been used to validate and compare this model with eight statistical and machine learning methodologies. Higher measure of recall shows the effective performance of the support vector machine in their model.

Complete Article List

Search this Journal:
Reset
Volume 15: 1 Issue (2024)
Volume 14: 1 Issue (2023)
Volume 13: 6 Issues (2022): 2 Released, 4 Forthcoming
Volume 12: 6 Issues (2021)
Volume 11: 4 Issues (2020)
Volume 10: 4 Issues (2019)
Volume 9: 4 Issues (2018)
Volume 8: 4 Issues (2017)
Volume 7: 4 Issues (2016)
Volume 6: 4 Issues (2015)
Volume 5: 4 Issues (2014)
Volume 4: 4 Issues (2013)
Volume 3: 4 Issues (2012)
Volume 2: 4 Issues (2011)
Volume 1: 4 Issues (2010)
View Complete Journal Contents Listing