签软件开发合同需要注意哪些