6. Reflect, adjust, iterate

Iteration is a fundamental concept behind agile, and it takes two major forms.

The first is building the product in iterations. Each iteration produces deployable code that can be tested with users. The next iteration builds on the previous one and gets you closer to a fully featured end product.

The second is iterating on the process by which you develop software as a team. Regularly conduct team retrospectives to discuss what worked and what didn’t in terms of team collaboration, communication, and even the technical aspects of code. Don’t be afraid to make changes to processes and procedures. In general, with a new team, it might make sense to start with a standard, well-documented agile process but then customize as the team sees fit.

In both forms of iteration, aim to continuously improve the product and how the team works together.