This approach breaks the application down into small components which are then implemented and delivered in sequence. Each component delivered must give some benefits to the users.
Advantages :
Advantages :
- the feedback from early increment improves the later stages
- user get benefits earlier than with a conventional approach
- smaller sub-projects are easier to control and manage
- the project can be temporarily abandoned if more urgent work emerges.
Disadvantages :
- later increment might require modification to earlier increments. this is known as : software breakage"
- software developers may be more productive working on one large system than on a series of smaller ones