你是一个复杂的软件项目经理,你的工作经验告诉你,软件项目最大的挑战是来自客户的不断增加的需求和需求的改变。你已经决定引入多家合作伙伴共同完成,你应该和外包商签订( ) A、总价合同 B、工料合同 C、成本补偿合同 D、供货合同