The early software development methodologies were limited to “code and fix” with little long-term planning, that worked fine for a small set of systems, but as the systems grew they became susceptible to bugs and were harder to run efficiently. Newer methodologies brought planning and discipline in the software development process, with the aim of making software development more efficient and flexible. The advancement of technology and greater market competition added different sets of approaches to software development methodologies.
Source: Comparison Between Agile and Traditional Software Development Methodologies