Search code examples
webiterationagilemethodology

Iterative development approach good or bad for a web application


could someone explain to me the iterative development methodology and the benefits/limitations for using it in developing a web application?

Also, I've been researching it but I am confused, is it part of Agile or not? Some sources say that it is and some don't?

Thanks all.


Solution

  • Iterative is opposed to waterfall development. As you know, you should go through a couple of different phases for delivering a software product.

    • Requirements Engineering/Elicitation
    • Analysis & Design
    • Implementation
    • Testing & Verification
    • Deployment & Maintenance

    At the end of each phase, you will have some Artifacts or deliverable results. In waterfall strategies, once you finish a phase, everything is done, and you will not come back to that phase again.

    In iterative approaches, you will go through these phases repeatedly. In each cycle you repeat all of or part of these phases and at the end of each cycle you will deliver a working product.

    Iterative approaches let you to develop your software incrementally and you will be able to establish and then further extend your product step by step. You may deliver just a skeleton of your web application at the end of first cycles and thenafter in each cycle, you will revisit your requirements, design, implementation, and your testing plans. You will find bugs and fix them. At the same time, you will receive feedback from your end-customers and change your product accordingly.

    Agile methodologies like scrum, are mainly about how to eliminate unnecessary extensive processes like heavy documentation, formal meetings, etc. So, you can focus on your product and code instead and iterate through your cycles much faster. Agile neither enforce waterfall nor iterative approaches, but the fact is that waterfall is now outdated and it is not going be used any more in industry.