Blogger: Kirk Knoernschild
There seems to be a common myth that agile practices work well for small teams, but don't scale for large enterprise development efforts. Experience has shown me the opposite. Certainly agile methods are a natural fit for smaller teams, who don't have the unique communication challenges and project management difficulties present with larger teams. In fact, it's these unique challenges that makes agile practices such a perfect fit for large teams. It's time to debunk the myth that agile practices don't scale.
I've written two pieces recently about using agile practices on big teams. The first talks about a macro process for making the practices work. The second clarifies a few items that may raise questions and cause for concern. I've also created a couple Burton Group resources that can help a team increase their agility. The first is a paper that talks about Rightsizing the Software Development Process, and the second explores Continuous Integration and it's many benefits. There is also other relevant and valuable information in our research library, including Agile Software Development: Not For Lightweights and SDLC Infrastructure: Supporting the Development Process.
This material underscores some fundamental elements that explain why agile practices are so important for any team. Strive to always have a functional system. Leverage the functional system to increase collaboration and garner important feedback from the customer. The more feedback you can get earlier in the development lifecycle, the better you'll know whether you're on track to deliver a system the customer values. As customer feedback and collaboration increase, so to does project transparency. Everyone - the development team and the customer team - understands the current state of the development effort. In fact, as the system evolves, you might even find that you no longer have a development team and a customer team. Instead, you've got "a team".