Software testing defect prediction model a practical approach

Page 1

IJRET: International Journal of Research in Engineering and Technology

ISSN: 2319-1163

SOFTWARE TESTING DEFECT PREDICTION MODEL-A PRACTICAL APPROACH Shaik Nafeez Umar Lead-Industry Consultant, CSC Company, Hyderabad, Andhra Pradesh, India nshaik5@csc.com, nafishaik123@gmail.com

Abstract Software defects prediction aims to reduce software testing efforts by guiding the testers through the defect classification of software systems. Defect predictors are widely used in many organizations to predict software defects in order to save time, improve quality, testing and for better planning of the resources to meet the timelines. The application of statistical software testing defect prediction model in a real life setting is extremely difficult because it requires more number of data variables and metrics and also historical defect data to predict the next releases or new similar type of projects. This paper explains our statistical model, how it will accurately predict the defects for upcoming software releases or projects. We have used 20 past release data points of software project, 5 parameters and build a model by applying descriptive statistics, correlation and multiple linear regression models with 95% confidence intervals (CI). In this appropriate multiple linear regression model the R-square value was 0.91 and its Standard Error is 5.90%. The Software testing defect prediction model is now being used to predict defects at various testing projects and operational releases. We have found 90.76% precision between actual and predicted defects.

Index Terms: Software defects, SDLC, STLC, Multiple Linear Regression --------------------------------------------------------------------***-------------------------------------------------------------------------1. INTRODUCTION In the past thirty years, many software defect prediction models have been developed. In the software testing/development organization, a need for release/project wise better defect prediction models. Predicting the defects in testing projects is a big challenge. Software development organizations have been working on making good plans to achieve better development, maintenance and management processes by predicting the defects. Companies spend huge amount of money in allocating resources to testing the software systems in order to find the defects. If we can have a model to predict the defects in the release/project, the schedule variance can be minimized and can be received excellent customer satisfaction. Evaluation of many software models were presented in [1, 2, 3 and 27]. Statistical based models of software defects are little help to a Project Manager who must decide between these alternatives [4]. Software defects are more costly if discovered and fixed in the later stages of the testing and development life cycles or during the production [5]. Consequently, testing is one of the most critical and time consuming phase of the software development life cycle and accounts for 50% of the total cost of development [5]. Defect predictors improve the efficiency of the testing phase in addition to helping developers evaluate the quality and defect proneness of their software product [6]. They can also help managers in allocating resources, rescheduling, training plans and budget allocations. Most defect prediction models combine well known methodologies

and algorithms such as statistical techniques [7, 8 and 9] and machine learning [10, 11, 12 and 13] they require historical data in terms of software metrics and actual defect rates, and combine these metrics and defect information as training data to learn which modules seem to be defect prone. Recent research on defect prediction shows that AI based defect predictors can detect 70% of all defects in a software system on average [14], while manual code reviews can detect between 35 to 60% of defects [15] and inspections can detect 30% of defects at the most [16]. A number of authors, for example [17, 18 and 19] have newly used Bayesian Networks models in software engineering management. Bayesian Networks models can useful to predict number of software defects remaining undetected after testing [20], this can be used project managers in particularly help to decide when to stop testing and release software, trading-off the time for additional testing against the likely benefit.

2. OBJECTIVE AND METHODOLOGY    

Defect prediction improves efficiency of the testing phase in addition to helping developers evaluate the quality and defect proneness of their software product. Help managers in allocating resources, rescheduling, training plans and budget allocations. Depending on the forecasted trends: o Resources can be efficiently ramped up or down o Gaps in Skills and trainings can be plugged Predicts defect leakage into production.

__________________________________________________________________________________________ Volume: 02 Issue: 05 | May-2013, Available @ http://www.ijret.org

741


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.
Software testing defect prediction model a practical approach by eSAT Journals - Issuu