Pitfalls in Waterfall model :
1. Main problem in waterfall model is the inflexible division of projects into separate stages, so that commitments are made early on and its difficult to react to the change in requirements
2. Iterations are expensive
3. Waterfall model is likely unsuitable if requirements are not clear or likely to be changed
4. If the project being delivered is rejected at any point, no delivarables made to the customer beyond the huge resource bill.
Agile Method :
1. This produce completely developed and tested and features ie. small subset of whole project every few week.
2. This emphasis that obtaining a small workable functionality to deliver business value early, and adding functionality in future.
3. If the project being delivered is rejected at any point will still leave the customer a worthwhile code that is likely already been put in live operation.
4. Extreme Programming (Pair Programming): This means that the code written by one developer is reviewed and reported by another developer and vice versa.This causes code developement to be most effective,efficient and speed delivery of the project.