Software reliability has been studied for over 60 years. During this time, a large number of different software reliability models have been created. But none of them can accurately describe the process of detecting defects in software systems. The models do not allow to take into account secondary defects that are introduced into the program when correcting found defects. The article shows that the reliability of software as a scientific direction has led to a dead end. The reason for this is the wrong choice of the basis of the software reliability theory - the assumption that the process of identifying defects is a random process. Moreover, it has been shown that the term "reliability" cannot be applied to software. It is shown that the replacement of the conceptual basis by the theory of non-equilibrium processes allows to eliminate all contradictions in the software reliability theory.