Perhaps because of the full-tilt charge of Lean Startup, the idea of an iterative development is strongly linked to the idea of delivering something early, getting feedback on it, and using that learning to guide the next move. This is an important one because delivering in increments without this iterative cycle means you are just following a fixed plan rather than improving the plan as you go.
So this is an important aspect of iterative development; adjusting the plan as you go.
There are lots of other benefits though. If you guide an iteration with an impact map, you can solve a great deal of problems in the communication and clarity space. The impact map provides a clear goal for the work, which means conversations are more constructive and nobody has to work in the dark. Impact mapping also solves the age old problem of thinking everything needs to be solved by software, or that everything needs to be solved with new software.
Having an iteration with a strong theme also provides focus. It is easy to be distracted by multiple tangents when developing software, but if the the theme is well known it is easier to decide what is important and what isn’t. In most cases, this will allow people to make decisions on their own that might otherwise cause delays or result in unnecessary work.
Another positive outcome of iterations is that it gives a natural point in time to retrospect and to celebrate – especially when the iteration is based on a goal such as an impact map. While time-boxes are popular with a lot of people, celebrating the completion of “two weeks of work” seems a little forced compared to celebrating “reducing the cost-per-transaction by 10%”. It doesn’t even matter what the size of the celebration is – it provides an opportunity to reflect, recognise what has been achieved, learn and adjust, and shed focus for a brief moment before turning the crank-handle once again.
So iterations are a useful way to learn and adapt, but they have many positive impacts beyond that too.