In modern society people depend on both hardware and software systems. A software system is embedded in every activity of a computer system. The desired performance of a software system is an important issue for many critical systems. Over the past decades, many software models were proposed for estimating the growth of reliability. To improve software quality, software reliability growth models (srgm) play an important role. The present investigation deals with a srgm with imperfect debugging, change points and a fault reduction factor (frf). A frf is the net number of faults removed in proportion to the failures experienced. This article proposes a new scheme for constructing a srgm based on a non-homogeneous Poisson process by