Incremental Development

Printable Version

Why incremental development is better that traditional waterfall approach is very easy to explain on the following example. The traditional development methodology assumes that before the development requirements for the new system will be accurately captured and and will remain unchanged throughout the entire project life. After all requirements are gathered the development starts and continues until all requirements are satisfied completely. When development ends customers start using new system. While for some small projects this can often be true, for the large project this rarely hold true.

Typically, any complex software project contains a large number of requirements and these requirements continuously changing during the project life cycle. Some requirements will be dropped and new ones will be identified while more information about project will become available. If the entire project is delivered at once when the project is complete then the value realization model can be represented by this diagram.

Single point delivery model giagram

As the result of constantly changing requirements large amount of work ends up in trash because either the need for certain modules does not exist anymore or completely different solution is required. Unfortunately, all this extra work costs money. And there more time you spend on this type of work the more money you end up having simply waisted. For the clients that men that the cost of the project goes up, the return on investment goes down, and the time when they can start using the system shifts further and further in the future. There is another unpleasant factor: if the project is canceled then client is left with no value at hands but with a lot of expenses.

Single point delivery expenses giagram

Likely, there is a solution for this problem. It is called iterative development. This approach is based on the idea that software should be delivered in small increments and released to client as soon and as often as possible. In this case even if development will be put on hold for some reason the client will still be able to enjoy the benefits of having a working software or at least some of the major components.

Incremental development process giagram

Developed by GARBUZ.COM © 1999-2007
Site information

GARBUZ.COM