Towards a Framework for Fault and Failure Prediction and Estimation

Detta är en avhandling från Karlskrona : Blekinge Institute of Technology

Sammanfattning: In software companies today we see a trend of changing development processes, as well as test processes, in order to reduce the number of faults in their software; and by reducing the number of faults, reducing the number of failures. It is hard to know if a change to a process has a positive or negative effect on the faults and failures of the software. Measuring the total number of faults and failures is a way of telling if the process has been changed for better or worse. The problem with measuring all faults in a software project is that it takes a lot of reviewing and testing. To know how many failures can be provoked from the software, the software needs to be run for a long time after release. In both these instances the information on the total number of faults or failures of the software is simply available too late. The use of fault and failure prediction and estimation methods allows project members and managers to get information about the total number of faults and failures of the software. The predictions and estimations can be repeated at different points during a development project. The contribution of the thesis consists of models and methods for fault and failure prediction and estimation. In this thesis three new methods of easy, early and cost-efficient fault and failure prediction and estimation are presented. The methods are created to take in new information as it becomes available, and are not meant for point estimates or predictions, but to continuously follow-up the estimates and predictions. The three methods presented are a first step towards the creation of a framework for fault and failure estimation and prediction. The framework consists of estimation and prediction models used at different points throughout a project. The goal of the framework is to be able to follow, and continuously improve the estimates and predictions of faults and failures in software projects.