My situation: I'm a software developer that's taking on new responsibilities as a development manager. Most of my team is overseas or in Canada (I'm in the US). They're all professionals and range from junior to senior level in development. Our code is written in C# and runs everything from the e-commerce site to the production floor. We're not launching the space shuttle, but quality and reliability are our number one priorities.
The problem is that sometimes our resources from the outsourcing firm treat it as though we are mission control, and simple tasks will be subjected to a full QA cycle and take weeks to be deployed to production. I know that internally they use Scrum, but from my point of view their process is very waterfall-like.
What's the best way of introducing more agile processes? My biggest concern is that we have individuals that are on the opposite side of the world, and can't interact with end users directly. I get a lot of requests for information and requirements that should be coming directly from the end users, but instead I play the role of human email forwarder. Has anyone successfully gotten highly iterative development with outside resources?