The agile model is an incremental delivery process where each incremental delivered part is developed through an iteration after each timebox. | The waterfall model is highly structured and systematically steps through requirements gathering, analysis, SRS document preparation, design, coding, and testing in a planned manner. These phases of the Waterfall model follow a sequential order. |
While using an agile model, progress is measured in terms of the developed and delivered functionalities. | In the Waterfall model, progress is generally measured in terms of the number of completed and reviewed artifacts such as requirement specifications, design documents, test plans, code reviews, etc. for which review is complete. |
With the agile model, even if a project is canceled midway, it still leaves the customer with some worthwhile code, that might possibly have already been put into live operation. | If a project is developed using the waterfall model is canceled mid-way during development, then there is nothing to show from the abandoned project beyond several documents. |
The agile model allows to change the requirements after the development process starts, so it is more flexible. | The waterfall model is rigid, it does not allow to change requirements after the development process starts. |
Customer interaction is very high. After each iteration, an incremental version is deployed to the customer. | Customer interaction is very less. The product is delivered to the customer after the overall development is completed. |
The lack of proper formal documentation leaves ample scope for confusion and important decisions taken during various phases can be misinterpreted in fewer later phases. | In the Waterfall model, proper documentation is very important, which gives a clear idea of what should be done to complete the project and it also serves as an agreement between the customer and the development team. |
The agile team consists less members (5 to 9 people), but they coordinate and interact with others very frequently. | In the Waterfall model, teams may consist of more members but the interaction between them is limited. |
The agile model is not suitable for small projects as the expenses of developing small projects using it is more compared to other models. | This model is simple to use and understand but not suitable for developing large projects using the Waterfall model. |
The testing is done simultaneously with software development. | After the Build Step, testing is done. |
It is known for its versatility. | It is a systematic developing method, sometimes rigorous. |
Testing is generally carried out in conjunction with the development phase. | The test approach is rarely used in this method. |