Over the last decade or so, Agile software development methodology has evolved as a mainstream methodology for most large-scale digital product development. While other methodologies emphasize and focus on stringent processes, which slow down the overall pace of development, Agile processes attempt to reach a compromise between process and progress.
Agile development has evolved from iterative and incremental development, and promotes the following :
- Adaptive development and planning: Quick and flexible response to change
- Evolutionary development and delivery: Creating working incremental software as compared to a comprehensive product
- More emphasis on individuals, interactions, and communication rather than on processes
- Collaboration among all team members and stakeholders