Addressing at the problem that the considerations of imperfect debugging phenomenon in the existing software reliability growth model are limited, this paper proposes a software reliability growth model which takes into account of the imperfect debugging comprehensively. Both the fault introduction and the fault removal efficiency are considered in this model, and a time-dependent fault removal efficiency function is introduced. The goodness-of-fit and the predictive power of the new model are examined by using a public software failure data set. The results show that compared with other existing models, the proposed model fits the failure data better and can predict this set of data more accurately.