There are many different software development processes. But there are just a few technologies which one based on scientific methods, researches and had use cases.
For some decades of evolution hardware was considerably improved. Today almost each engineer can access to the computing capacities, which were available only for a few scientific institutions and which service demanded the whole staff of experts for about ten-fifteen years ago. However these capacities demand the corresponding software. And in this area, despite the fact that hardware resources became much more accessible, considerable problems are observed.
In 80th american researchers discovered that about 14% software projects were completed successfully. Today (after some decades of evolution of program languages, tools, machine's time) there are only 26% of software projects were completed successfully.
In USSR was another statistics. And we should say that there were much better results because of:
The planned organization of manufacture was optimum combined with waterfall model of development;
The control of success of a project has been focused not on satisfaction of requirements of the customer, but on satisfaction of initially co-ordinated technical project;
Highly skilled experts at specialized institutes were engaged in development;
Many projects basically were for military, budgets were actually not limited (to today's measures).
But for some reasons the Soviet school of software development has stopped the development and many achievements have been lost. In market conditions (quickly varying requirements, the limited budgets, orientation to result, an intense competition for the highly skilled personnel) use of old operating time of the Soviet school has appeared is limited by very narrow areas.