What is Incremental Model in software testing and what are advantages and disadvantages of Incremental Model
What is Incremental Model?
Incremental Model is combination of one or more Waterfall Models. In Incremental Model, Project requirements are divided into multiple modules and each module is developed separately. Finally developed modules are integrated with other modules. During development of each module, waterfall model is followed for each module development separately. Each developed module in Incremental Model is standalone feature and could be delivered to the end users to use it. On incremental basis other modules are integrated as additional features one after another and finally delivered to the client. In Incremental Model no need to wait for all the modules to be developed and integrated. As each module is standalone application and there is no dependencies on other modules so we can deliver the project with initial developed feature and other features could be added on incremental basis with new releases. Incremental process goes until all the requirements fulfilled and whole system gets developed.
Consider in the above picture, there is one square that has to develop with features F1, F2, F3 and F4. In the Incremental Model all the four features will be divided into four different small squares called modules (M1, M2, M3 and M4).Once the first module (M1) is developed, it gets delivered to the client and later on after development of second module M2 integrated with module M1. Gradually we develop other modules M3 and M4 and keep on integrating until complete square gets ready or developed.
Incremental Model helps to deliver the sequence of releases in incremental basis which speeds up the progress of development of each functionality. Each developed functionality gets delivered to the end users one after another. First increment is always a base feature and other features added in next increments with new releases in case client requests to add the any new feature after review of first release. This process is carried out till the complete product developed.