Arunkumar Khannur's Software Testing Knowledge Center
  Software Reliability Models


Software modeling techniques can be divided into two subcategories: prediction modeling and estimation modeling. Both kinds of modeling techniques are based on observing and accumulating failure data and analyzing with statistical inference. The major difference of the two models is shown in Table 1.

DATA REFERENCE Uses historical data

Uses data from the current software development effort


Usually made prior to development or test phases; can be used as early as concept phase

Usually made later in life cycle(after some data have been collected); not typically used in concept or development phases


Predict reliability at some future time

Estimate reliability at either present or some future time

Table1: Difference between software reliability prediction models & software reliability estimation models
  The field has matured to the point that software models can be applied in practical situations and give meaningful results and, second, that there is no one model that is best in all situations. Because of the complexity of software, any model has to have extra assumptions. Only limited factors can be put into consideration. Most software reliability models ignore the software development process and focus on the results -- the observed faults and/or failures. By doing so, complexity is reduced and abstraction is achieved, however, the models tend to specialize to be applied to only a portion of the situations and a certain class of the problems. We have to carefully choose the right model that suits our specific case. Furthermore, the modeling results can not be blindly believed and applied.
My Book
Arunkumar Khannur, Software Testing - Techniques and Applications, Published by Pearson Publications, 2011 (ISBN:978-81-317-5836-6; Pages:341 + xxii)
Pearls of Software Testing Wisdom
"Power to choose and restricting to few selections allow us to excel whether in testing or in life!"
"I prefer creativity to constraints; imagination to process; correction to control; discovery to pre-defined actions to test better."
"Best way to do testing (exploratory!) is thinking about Target, Trust. Imagine, Learn, & Do. Growing experience, results in heuristics & patterns."
"Continuous learning with refinement of corrections, use of experience & creative imagination make me to test even with no product info."
"Product image that we develop in our mind decides and defines what we test and what we miss."
"Effectiveness or limitation of testing depends on quality of thinking, ability to imagine, and creativity in test designing."
Follow Me