Iterative and Incremental Development

Why Trust Techopedia

What Does Iterative and Incremental Development Mean?

Iterative and incremental software development is a method of software development that is modeled around a gradual increase in feature additions and a cyclical release and upgrade pattern.


Iterative and incremental software development begins with planning and continues through iterative development cycles involving continuous user feedback and the incremental addition of features concluding with the deployment of completed software at the end of each cycle.

It is one of the methodologies of Agile software development, rational unified process and extreme programming.

Techopedia Explains Iterative and Incremental Development

Iterative and incremental development is a discipline for developing systems based on producing deliverables. In incremental development, different parts of the system are developed at various times or rates and are integrated based on their completion. In iterative development, teams plan to revisit parts of the system in order to revise and improve them. User feedback is consulted to modify the targets for successive deliverables.

Iterative and incremental software development came about in response to flaws in the waterfall model, a sequential design process in which progress flows steadily downwards. It differs from the waterfall model because it is cyclical rather than unidirectional, offering a greater ability to incorporate changes into the application during the development cycle.

Iterative and incremental development can be grouped into the following phases:

  • Inception Phase: Deals with the scope of the project, requirements and risks at higher levels
  • Elaboration Phase: Delivers working architecture that moderates risks identified in the inception phase and satisfies nonfunctional requirements
  • Construction Phase: Fills in architecture components incrementally with production-ready code, which is produced through the analysis, implementation, design and testing of functional requirements
  • Transition Phase: Delivers the system to the production operating environment

Related Terms

Margaret Rouse
Technology Expert
Margaret Rouse
Technology Expert

Margaret is an award-winning technical writer and teacher known for her ability to explain complex technical subjects to a non-technical business audience. Over the past twenty years, her IT definitions have been published by Que in an encyclopedia of technology terms and cited in articles by the New York Times, Time Magazine, USA Today, ZDNet, PC Magazine, and Discovery Magazine. She joined Techopedia in 2011. Margaret's idea of a fun day is helping IT and business professionals learn to speak each other’s highly specialized languages.