I know there are millions of articles on this topic and they all talk about:
Iterative (Iterative Waterfall) Dev - delivers an improving product at the end of each iteration
Incremental Dev - delivers a section of the final product at the end of each increment (a core feature of value)
I (think I) can understand Incremental. What I don't get is, what is actually delivered at the end of an Iteration of an Iterative development? Is it a basic version of the full product?
Let's talk about development of a car as an example:
Incremental Dev would split the car into core sections, like so:
- First increment: A car that moves by pushing (bad example I know)
- Second increment: adds engine to the car
- Third: adds brakes....
- And so on...
Iterative Dev
Would iterative development try to make a version of the full car in one iteration (albeit with very basic features?) So the car would have brakes, engine etc after the first iteration. But they might be buggy etc?