Reliability Growth in Software Products

  • Authors:
  • Pankaj Jalote;Brendan Murphy

  • Affiliations:
  • Microsoft Corporation, Redmond, USA;Microsoft Research, Cambridge, UK

  • Venue:
  • ISSRE '04 Proceedings of the 15th International Symposium on Software Reliability Engineering
  • Year:
  • 2004

Quantified Score

Hi-index 0.01

Visualization

Abstract

Most of the software reliability growth models work under the assumption that reliability of software grows due to the bugs that cause failures being removed from the software. While correcting bugs will improve reliability, another phenomenon has often been observed - the failure rate of a software product, as observed by the user, improves with time irrespective of whether bugs are corrected or not. Consequently, the reliability of a product, as observed by users, varies, depending on the length of time they have been using the product. One reason for this reliability growth is that as the users gain experience with the product, theylearn to use the product correctly and find work-around for failure-causing situations. Another factor that affects this growth is that following the product installation, the user discovers that other actions may be required, like installing new drivers, upgrading other software to a compatible version, etc. to properly configure the new product. In this paper we present a simple model to represent this phenomenon - we assume that the failure rate for a product decays with a factor 驴 per unit time. Applying this failure rate decay model to the datacollected on reported failures and number of units of the product sold, it is possible to determine the initial failure rate, the decay factor, and the steady state failure rate of a product. The paper provides a number of examples where this model has been applied to datacaptured from released products.