What is Incremental Process model ?

The Incremental Model is a method of software development where the product is designed, implemented and tested incrementally. Little more is added each time until the product is finished. It involves both development and maintenance. This is also know as Iterative Model.
In incremental model the whole requirement is divided into various builds. Multiple development cycles take place here, making the life cycle a “multi-waterfall” cycle.  Cycles are divided up into smaller, more easily managed modules. In this model, each module passes through the requirements, design, implementation and testing phases. A working version of software is produced during the first module, so you have working software early on during the software life cycle. The first module is often a core product where the basic requirements are addressed, and supplementary features are added in the next increments. Once the core product is analyzed by the client, there is plan development for the next increment. Each subsequent release of the module adds function to the previous release. The process continues till the complete system is achieved. The below figure is a representation of the different phases of the Incremental process model.

Applications of Incremental Process model :

1. This model can be used when the requirements of the complete system are clearly defined and understood.

2. Major requirements must be defined; however, some details can evolve with time.

3. Resources with needed skill set are not available.

4. A new technology is being used

5. There are some high risk features and goals.

6. There is a need to get a product to the market early.

Advantages of Incremental Process model :

1. The Incremental Model allows partial utilization of the product and avoids a long development time.

2. It generates working software quickly and early during the software life cycle.

3. This model is more flexible and less costly to change scope and requirements.

4. As testing is done after each iteration, faulty elements of the software can be quickly identified because few changes are made within any single iteration.

5. Easier to manage risk because risky pieces are identified and handled during it’d iteration.

6. In this model customer can respond to each built.

Disadvantages of Incremental model :

1. As additional functional is added to the product at every stage, problems may arise related to system architecture which was not evident in earlier stages.

2. It needs good planning and design at every step.

3. Needs a clear and complete definition of the whole system before it can be broken down and built incrementally.

4. Total cost is higher than waterfall.

Next Topic :

No comments:

Post a Comment