I saw this post about Parallel Development, Managing Version Control and Offshoring and it made me think about the challenges of developing software using remote resources. It seems to me that outsourcing and self-service have a lot in common so this led me to think about how you can enable self-service in this sense - well, you could teach business people to program but they probably don't want to. Alternatively you could use business rules technology to let your business users own their rules while the programmers dealt with the technical challenges of the system. While this would not eliminate the problems of source code management being discussed in the article it would allow for business logic to be offshored, backshored or moonshored and, as a side benefit, protect outsourcers from commoditization. Given how many of the problems in outsourced development come from the usual confusion around requirements, and given that business rules are a great tool for addressing this problem, I think that BPO's future includes business rules as business rules and BPO are perfect together.