As I discussed in my first blog post, Agile development is adept at maintaining close participation with the customer. However, given the inherent communication problems of large organisations, how realistic is it for Agile software development to be effective when creating a system for such a customer?
Agile works best with small teams doing the work most necessary to the construction of the system. The more people added in to the equation, the more pointless and cluttered the meetings become, and the more unnecessary documentation is created, i.e. the closer to traditional development methods it becomes. In fact, more people in Agile teams can become exponentially more detrimental to a project than the more structured traditional methods. Say there are 60 people working on a project where only 20 are needed to complete it. For a development process such as the Waterfall method, 40 people would be doing nothing, but in an Agile method such as XP (extreme programming) there are an extra 40 people whose opinions must be heard, and who clog the channels of communication between the working developers and the customers. This clutter negates the main benefit to Agile development, namely that it can adapt to change quickly.
However, there are ways in which Agile development could hypothetically work for a large organisation. A large team can be sub-divided into groups of a size more suited to an Agile style of development. These teams can then work individually on different aspects of the overall project, with plenty of communication between teams in order to minimise the chances of misdirection of efforts, i.e. teams gearing their respective pieces of the overall puzzle to a different end goal. Teams could also be organised to work using different Agile methods to solve the same problem, or to develop the same piece of software, for the best one to be implemented into the final system. This would be extremely costly and pretty inefficient though.
In summary, Agile methods of software development are not ideal for large organisations due to communication issues, though they can be more efficient than traditional methods.