A deep overview, philosophy and different agile development methods can be found on Wiki.
In my opinion the benefits of Agile are:
- It’s a methodology that’s deliver value to customer, faster.
- Manage rapidly the change of priorities (Nowadays there is a high market pressures and technology advances. We need to be responsive to change and manage that)
- Mitigate the risk by continually sharing your progress with your customer in order to validate what you are building is really what they want – DAY by DAY with your customer
- Reduces uncertainty, remove waste
- Short time-to-market
- Increase revenue by focusing on customer value
- Agile produces the high business value in the shortest time by developing products in iterative incremental manner.
- Each sprint (2-4 weeks) evolves requirements definition, product design, coding and testing.
- The result after each sprint is a potentially releasable increment. Each other sprint will evolve the product.
- Improved quality
- fewer defects into production (testing always not only at the end of the cycle)
- Start to get feedback from production
- Sprint retrospectives – an organized way for improvement