My concern is with maintainability. Is there anything we can write into the specs that will nudge them toward writing code that we'll consider readable and maintainable? Most "coding standards" documents tell you where to put curly braces but leave the bigger issues to be worked out within your corporate culture. And, of course, when outsourcing you are working across two different corporate cultures. One idea that has come up is to have code reviews early to help create some common understanding of code quality between us. Defining the frameworks and libraries should also help to some degree. But I was hoping for something more concrete.
Yes, I know that this problem could be avoided by simply not outsourcing the project. But that simply isn't an option here for political reasons. So given that it's necessary, how would you encourage quality in an outsourcing spec?"