In this paper, we consider the software reliability growth model that incorporates with both imperfect debugging and change-point problem. The proposed model utilizes the failure data collected from software development projects to analyze the software reliability and the remaining errors of a released software program. The maximum likelihood approach is derived to estimate the unknown parameters of the new model. We investigate the new model and demonstrate its applicability in the software reliability engineering field. Our analysis suggests that if a change-point exists in a testing process, it should be considered in creating a software reliability estimation model.