Incremental Development

Often confused with IterativeDevelopment.

IncrementalDevelopment has been with us for a long time. TomGilb described it in his PrinciplesOfSoftwareEngineeringManagement book, labeling it EvolutionaryDevelopment or EVO. Increments can be short (NanoIncrements) or much longer. XP often uses 3 week increments (but confusingly calls them iterations). Yes, they are iterations from the point of view of the process, but it is really IncrementalDevelopment. After each increment new functionality has been added to the application, and often there is some planned rework happening as well in the form of ReFactoring, but basically it is an incremental process.

The UnifiedSoftwareDevelopmentProcess is also incremental, but in that case it uses UseCase increments rather than increments of UserStories. -- PeteMcBreen


IncrementalDelivery is a nearly a synonym for IncrementalDevelopment


In FrequentReleases (where this was discussed), there is an interesting parallel to what Darwin argued about the incremental development of different organs (such as the eye). I'd be interested to learn more about this, and can write up more if someone is interested. -- ToniAlatalo

It is true that evolutionary development tends towards local optimals rather than global optimums. In my experience, IncrementalDevelopment can make difficult the occasional massive change that is truly necessary for improving the product towards a particular goal (which usually happens via ripping a component out and rewriting it entirely).


The TgpMethodology is a new approach in software development taking advantage of incremental development. See also TgpProcess.
CategoryAgileMethodology

EditText of this page (last edited March 6, 2011) or FindPage with title or text search