Software Reliability Models
A software reliability model indicates the form of a random process that defines the behavior of software failures to time.
Software reliability models have appeared as people try to understand the features of how and why software fails, and attempt to quantify software reliability.
Over 200 models have been established since the early 1970s, but how to quantify software reliability remains mostly unsolved.
There is no individual model that can be used in all situations. No model is complete or even representative.
Most software models contain the following parts:
A mathematical function that includes the reliability with the elements. The mathematical function is generally higher-order exponential or logarithmic.
Software Reliability Modeling Techniques
Both kinds of modeling methods are based on observing and accumulating failure data and analyzing with statistical inference.
Differentiate between software reliability prediction models and software reliability estimation models
|Basics||Prediction Models||Estimation Models|
|Data Reference||Uses historical information||Uses data from the current software development effort.|
|When used in development cycle||Usually made before development or test phases; can be used as early as concept phase.||Usually made later in the life cycle (after some data have been collected); not typically used in concept or development phases.|
|Time Frame||Predict reliability at some future time.||Estimate reliability at either present or some next time.|
A reliability growth model is a numerical model of software reliability, which predicts how software reliability should improve over time as errors are discovered and repaired. These models help the manager in deciding how much efforts should be devoted to testing. The objective of the project manager is to test and debug the system until the required level of reliability is reached.
Following are the Software Reliability Models are: