Basic idea of incremental modelDEVELOPING A SOFTWARE SYSTEMINCREMENTALLY FOR TAKING ADVANTAGE OFWHAT WAS BEING LEARNED DURING THEDEVELOPMENT OF EARLIER, INCREMENTAL,DELIVERABLE VERSIONS OF THE SYSTEM BY DIVIDINGPROJECT TO ITERATIONS OR INCREMENTS
ITERATIVE AND INCREMENTALDEVELOPMENT is a cyclic software development model developed in response to the weaknesses of the water fall model. approach attempts to combine the waterfall sequence with some of the advantages of prototyping. This approach favored by object oriented practitioners.
THE INCREMENTAL MODEL increment #nSoftware functionality and features communications planning Modeling analysis design Construction Deployment code test delivery feedback Increment #2 Delivery of nth increment communications planning Modeling analysis design Construction Increment#1 code test Deployment delivery feedback Delivery of 2nd increment communication planning Modeling analysis Construction design Deployment code test delivery feedback Delivery of 1 st increment Project calendar time
INCREMENTAL MODEL LIFE CYCLE It basically: divides the overall project into a number of increments. Then it applies the waterfall model to each increment. The system is put into production when the first increment is delivered. As time passes additional increments are completed and added to the working system Notes: Phases on each increment are sequential.
CONT………… key process are to start with a simple implementation of a subset of the software requirements and iteratively enhance the evolving sequence of versions until the full system is implemented. At each iteration, design modifications are made and new functional capabilities are added.
ADVANTAGE & DISADVANTAGES Generates working software quickly and early during the software life cycle. More flexible - less costly to change scope and requirements. Easier to test and debug during a smaller iteration. Easier to manage risk because risky pieces are identified and handled during its iteration.Disadvantages: Each phase of an iteration is rigid and do not overlap each other. Problems may arise pertaining to system architecture because not all requirements are gathered up front for the entire software life cycle.
FINALLY……… success or failure of the software projects greatly depends on right chosen of software development lifecycle model.Always choose the one that achieve your goals , vary models and put your touch on your choice to make creative system .