This document discusses software reliability growth models, which use system test data to predict the number of defects remaining in software and determine if the software is ready to ship. Most models have a parameter related to the total number of defects. Knowing the number of residual defects helps decide how much more testing is needed. Examples of models include the Goel-Okumoto model, which models the failure rate as approaching a total number of defects over time. The assumptions of the Goel-Okumoto model include that failure times are exponentially distributed and the number of failures follows a non-homogeneous Poisson process.