My team is part onshore, next to the business users, part offshore outsourced where the two scrum teams are. Naturally in an Agile methodology this is a no-no, but rules are meant to be broken and given a choice of remote Agile or no Agile then it’s a no-brainer.
However, one thing we have found is that shorter sprints (two weeks) are actually less efficient and less Agile than slightly longer three week sprints. With overheads like planning and retrospective, the efficiency gain isn’t that surprising, but the Agility improvement is.
I put it all down to the communication lag.
Because the scrum teams are remote, there’s an inevitable delay in communication (although they are at least in virtually the same timezone). In a two week sprint there just isn’t enough time to respond, so ironically the close communication of Agile reverts to the guesses and assumptions of waterfall. In a three week sprint, as long as developers work on tasks in parallel, they have some scope to wait for responses.
It seems that in Agile the old adage of less haste more speed also applies.