Fault Prediction Modelling in Open Source Software Under Imperfect Debugging and Change-Point

Fault Prediction Modelling in Open Source Software Under Imperfect Debugging and Change-Point

Shozab Khurshid, A. K. Shrivastava, Javaid Iqbal
Copyright: © 2018 |Pages: 17
DOI: 10.4018/IJOSSP.2018040101
OnDemand:
(Individual Articles)
Available
$37.50
No Current Special Offers
TOTAL SAVINGS: $37.50

Abstract

Instant demand of products and services by technologically active users has increased the demand for open source software (OSS)-based applications. Unfortunately, with the complexity and lack of understanding of OSS-based systems, it becomes difficult for a testing team to remove the faults and the fault removal rate becomes low in comparison to what it should be. This also results in generating new faults during removal. Also, the rate at which the testing team detects/corrects fault need not be same during the entire process of testing due to various reasons viz. change in testing strategy, understanding of code, change in resources, etc. In the existing literature on OSS, authors have developed many models considering the above aspects separately. In this article, all of the above aspects have been combined to develop a general framework for predicting the number of faults in OSS. The comparison of eight models on the basis of their prediction capability on two well-known Open Source Software datasets is created and then ranked using normalized criteria distance approach.
Article Preview

Notations:

  • IJOSSP.2018040101.m01: Cumulative number of faults detected or removed by time IJOSSP.2018040101.m02

  • IJOSSP.2018040101.m03: Time dependent initial fault content of software.

  • IJOSSP.2018040101.m04: Probability of perfect debugging.

  • IJOSSP.2018040101.m05: Fault introduction rate during the debugging process.

  • IJOSSP.2018040101.m06: Change Point.

  • IJOSSP.2018040101.m07: Time dependent fault removal/correction rate.

  • IJOSSP.2018040101.m08: Distribution functions for fault removal /correction times.

  • IJOSSP.2018040101.m09: Density functions for fault removal/correction times.

  • IJOSSP.2018040101.m10: Hazard rate function.

  • IJOSSP.2018040101.m11: Learning parameter in logistic function.

Top

1. Introduction

Software is considered as an essential component as its need is felt in every walk of life. In modern era, there is a rapid expansion in the use of software and thus the software engineers strive hard in producing error free and quality software for customer satisfaction. Software development can be done in one of the two ways i.e. either in-house (Closed Source Software) or Open Source Software (OSS). OSS differs significantly from the closed source software in terms of its designing and development. Open Source Software can be defined as the software in which user can approach the source code and modify it over the internet. This helps different users sitting at different locations to interact and develop the software at any time. This also enhances the speed of software development according to the need. On the other hand, the source code of CSS is inaccessible to its users, with the result, the users can run the software but lack the opportunity of modifying the code (Najeeb ullah et al., 2012). The increasing demands of tech savvy users in no time has forced IT firms and software developers to collaborate so that requirements can be fulfilled on time. The reason that OSS is satisfying the desires and interests of users incisively is that it follows the methodology of parallel development and debugging.

The concept of OSS in which sharing of ideas and source code was believed to be the fundamental principle was given by Richard Stallman, a software developer from America in the 1970’s. The key characteristics of OSS are that the source code must be included in the software distribution of Open Source Software and the user must be able to reproduce or modify the software. The step wise release cycle of open source is as:

  • 1.

    Open Source Software is released on Internet

  • 2.

    Users implement the OSS

  • 3.

    Users report the bugs in software

  • 4.

    These reports are sent for verification and validation

  • 5.

    Accordingly, the source code is modified and same is uploaded by the developer

  • 6.

    Repeat Step 1

Complete Article List

Search this Journal:
Reset
Volume 15: 1 Issue (2024): Forthcoming, Available for Pre-Order
Volume 14: 1 Issue (2023)
Volume 13: 4 Issues (2022): 1 Released, 3 Forthcoming
Volume 12: 4 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: 1 Issue (2015)
Volume 5: 3 Issues (2014)
Volume 4: 4 Issues (2012)
Volume 3: 4 Issues (2011)
Volume 2: 4 Issues (2010)
Volume 1: 4 Issues (2009)
View Complete Journal Contents Listing