有老板签合同前问我,软件开发合同该注意什么?我说重点看三条:源码、维护,以及验收。这三条含糊,后面全是扯皮。这三条,我们吃过亏也见过客户吃亏。
源码要一次给足
合同里写「交付源码」四个字是不够的。要给到什么程度,得写清楚。
我们的合同里会写明:包含前端、后端、数据库结构,以及部署说明。不是打包一个前端文件就算给了。
为什么要写这么细?因为模糊的表述给了扯皮的空间。写清楚了,交付的时候一条条对,双方都省心。
维护期要写明确
维护期管什么、不管什么,必须分清。「维护」这两个字,可以理解成修 bug,也可以理解成加功能,差别大了。
我们的做法是写明:维护期内负责修复故障、处理安全问题,再加上做小的调整。新增功能和新需求不在维护范围内,另行评估。
写清楚边界不是推卸责任,是让双方都有预期。不然维护期里每来一个需求都要谈一次。
验收标准要能对得上
验收的时候卡住的项目,多半是开始的时候没定标准。「做好了」这三个字,你理解的和开发理解的不一样。
我们的建议是把验收标准写成清单:功能能不能用、数据对不对,另外还有性能达标没有。验收的时候照着清单过,不做主观判断。
还有一条是验收的时间节点。约定清楚开发完成多久内要验收,别让项目一直悬着。
还有一条是交付的时间节点。什么时间交付第一版、什么时候能试用,还有什么时候正式上线。这些节点写进合同,项目才有节奏。只写一个总工期,中间容易一拖再拖。
还有一点是沟通机制。项目进行中谁来对接、多久同步一次进度,以及问题走什么渠道反馈,这些也建议写下来。沟通不畅,再好的方案也会走样。
把这几条谈清楚,合同就签得踏实。
开发合同的疑问集中在哪几处
源码交付要不要写进合同
要写,而且要写清楚给到什么程度。口头承诺没有约束力。
维护期一般多长
行业里一年比较常见。我们的项目验收后含一年免费维护,超出按服务项评估。
需求变更怎么处理
合同里约定变更流程:谁提出、怎么评估,再加上费用怎么算。写清楚了就不容易吵。
常斌看这件事的角度有点偏:源码、维护,另外还有验收这三条先谈清楚,再谈价格。
这三条,谁来都一样
我的建议是不管找谁做,这三条都要落到纸面上。写下来的东西,才是真正作数的东西。
软件开发这块,信服无限会把这三条直接写进合同。出报价之前,跟我说说你打算做什么样的项目。