As you know that in a computer system both hardware and software complement each other - one is of hardly any use without the other. Hence, since the very beginning of computer history, software evolution has been closely tied to the advances made in hardware. As hardware became faster, cheaper and with better capacity of storage, software became more complex and sophisticated.
Over the decades computers have been used in new areas and to solve new problems. With changing needs and improved hardware, the software has evolved in its various aspects.
The software architecture, its design paradigms, programming languages, its usage, costing and licensing have all changed and evolved over the years.