Nine questions to ask before signing with a software development partner — and the red flags that predict a failed engagement.