In the simplest of terms, a software development methodology is the basic framework using which software developers can plan, structure and control the overall process of developing a software or information system.
Agile software development methods promise to support continuous feedback and accommodate changes in software requirements throughout the software development life cycle, support close collaboration between customers and developers, and enable early and frequent delivery of software features required for a system