Fowler's Thoughts on Agile and Offshore
A few weeks back I put together a post on Agile, Ajax and Offshoring. Martin Fowler, a giant in OO and Agile circles, has some thoughts on Agile and Offshoring as well. We agree on quite a number of things, such as establishing a project Wiki and the primacy of communication. Also, he emphasizes the importance of unit and system tests in formalizing the communication of requirements.
I particularly like his suggestions for running the Iteration Planning Meeting (IPM):
Before the IPM the US customer sends narratives for each scheduled feature (story) which we like to turn into test scripts before the IPM. During this period any questions are handled by email. Just before the IPM the development team breaks the features down into finer grained tasks. These task breakdowns are shared with the US for feedback.
All of this pre-work shortens the phone call which now concentrates on any issues that come up from the task breakdown. We find the calls usually last around a half to a couple of hours. It is important to keep the actual phone meeting short, as these kinds of remote meetings are particularly arduous.
As far as I'm concerned, there are two kinds of meetings: useless and dangerous. Useless meetings are the ones where no information is exchanged, not action items are identified and no assignments and due dates are made. These types of meetings happen with surprising frequency in organizations both large and small. Dangerous meetings are those that run long, and uncover lots of new requirements, issues, and scope. Controlling these dangerous meetings is key to delivering the project, and having people come into project prepared and focused is key. Go now and read Fowler.