Barriers are created all the time on software projects (by organization layout, role definition, project management, or indiscriminately) that keep developer knowledge separate. Sometimes these barriers are referred to as silos. We can create better teams and products for our organizations if we can break down these silos – or if particularly scrappy, blow them up.
In Agile software development, an iteration is a time period of work, where the full software dev cycle is completed. Iterations are iterative, done over and over again. And yet, many project teams find making the most of each iteration challenging. On my current project, I feel like an important part of making each iteration solid and progressive is the iteration planning, which I feel is done very well. Iteration planning, done well, relies upon project management and each team member. Here are some of my observations.