Sunday, March 25, 2007

Agile Offshore Development Tip 4: Involve Offshore into Scrum meetings

I have seen distributed teams following Agile practices but each one not really sharing information with other distributed teams. For ex: Both onsite and offshore teams would be conducting Scrum meetings but skipping Scrum of Scrums.

Important thing in distributed Agile development is to include the offshore teams for all important workshops. For ex: Requirement, Retrospective, Modeling days, Iteration planning meeting.

In many onsite-offshore projects, the onsite team handles the design/architecture part and the offshore team is involved in pure development and testing. This model makes many onsite teams don't feel like involving offshore teams for Requirement workshops, modeling days.
Which in turn leads to a huge communication gap and would result in creation of a poor quality product. The above mentioned scenario would also involve lot of hand offs from onsite team to offshore team, resulting in lot of wastes being added to the system.

Systems thinking needs is the key to succeed in distributed Agile development.


Siddhi said...

In your experience does this happen often - i.e agile on-site and offshore teams not communicating properly?

Also, do you think it is better to structure the teams based on roles (requirements and design on-site, development and test offshore) or features (features a,b,c on-site, features d,e,f offshore)?

Venkatesh Krishnamurthy said...

I have seen this pattern happening in Services company especially if the offshore team is in India(as I work in India) and is "used" for development purposes.
The onsite team(US, Europe or some other place) members collect requirements, do a design and hand off these information to development team for coding and testing. Handoff by itself has lot of wastes associated with this, and in the above mentioned scenario, the development team would feel they are being used. This pattern needs to be avoided as much as possible.

My suggestion is to understand the capability of offshore teams and see if they are interested in participating in all key discussions. If offshore team does not know much, then the onsite team members can mentor the offshore teams !