Agile Software Development is a set of software development methods in which requirements and solutions evolve through collaboration between self-organizing, cross-functional teams. It promotes adaptive planning, evolutionary development, early delivery, continuous improvement, and encourages rapid and flexible response to change.
The Manifesto for Agile Software Development, also known as the Agile Manifesto, was first proclaimed in 2001, six years after “Agile Methodology” was originally introduced by the preeminent software engineers of the late 1980s and early 1990s. The Manifesto came out of the DSDM Consortium in 1994, although its roots go back to the mid 1980s at DuPont and works by James Martin and James Kerr et al.
The waterfall model is a sequential design process, used in software development processes, in which progress is seen as flowing steadily downwards (like a waterfall) through the phases of conception, initiation, analysis, design, construction, testing, production/implementation and maintenance.
The waterfall development model originates in the manufacturing and construction industries: highly structured physical environments in which after-the-fact changes are prohibitively costly, if not impossible. Since no formal software development methodologies existed at the time, this hardware-oriented model was simply adapted for software development.