Iteration is valuable to more than just application development; design also greatly benefits. But the benefits don’t stop there — infrastructure can gain as well.

A big portion of the value in an iterative approach comes from the empirical evidence gained through the experience of using the software. By exposing your product to the light of reality, all of your theories are put to the test. This feedback loop ensures that each cycle of work stays tightly focused on the things that really matter — even when they change and especially when they turn out to be things you might not have anticipated.

The way this happens is by shipping a complete product as early as possible. It might not be refined or have every feature implemented, but the core functionality should be present. As soon as this is ready, it should be delivered to the customer (and ideally, the end user). This is where operations comes in.

Oftentimes deployment is left as an after-thought, a last step to check off a list when a project wraps up. This is a mistake. Just as teams take design considerations into account along the way, they should also consider how they will deploy the application.

Read More…