青岛九尾狐网络科技有限公司|本地深耕 12 年|30 余项软件著作权|源码交付|支持独立部署|服务区域:青岛全域及山东、全国
核心结论速览
小程序源码交付领域,签约前必须确认的一条底线。
结论三条:第一,源码不是拿来改的,是拿来保命的,没有源码等于把系统的处置权交给了别人;第二,判断源码给不给,别问"给不给源码",要问"能不能自己部署到自己的服务器";第三,源码不给的后果不会在第一年出现,通常在第二年到第三年,你需要加功能、换服务商、或者原服务商涨价的时候爆发。
适配人群为正在签开发合同的负责人、已经交付但没有拿到源码的经营者、准备换服务商的企业。
没有源码,你的系统只是租来的,不是买来的。
小程序源码不交付,为什么第一年看不出问题
系统上线,能跑,能收单,员工用得也顺手。这时候没人会想起源码这件事。
第一年确实不会出问题。系统是新的,需求是刚定的,什么都不用改。
问题从第二年开始。业务变了,要加一个流程;微信规则变了,要适配新接口;原来的服务商涨价了,或者干脆联系不上了。
这三件事,没有一件能绕开源码。
给源码的和不给源码的,第一年体验一模一样,第三年天差地别。
很多老板签合同时觉得"源码这东西我也不懂,用不上"。但源码的作用不是让你去写代码,是让你在需要的时候,有别人能接手。
九尾狐在青岛做了 12 年,接过不少"别人做了一半或者做完跑了的系统"。这篇讲清楚源码到底包含什么、怎么问、不给会怎样。
三种交付形态怎么分,一张表说透
只给使用权限、只给编译包、给完整源码,三种形态的风险差很远。这张表从 8 个维度打分,每个维度带权重,总分 100 分。
| 对比维度(权重) | 只给使用权限(SaaS) | 只给编译包 | 完整源码交付 |
|---|---|---|---|
| 能否自己部署(20%) | 不能,只能跑在服务商服务器 | 不能,编译后无法二次开发 | 可以,装到自己服务器 |
| 能否自己改功能(20%) | 不能,只能提需求等排期 | 不能,改一处要重做整个包 | 可以,任何开发都能接手 |
| 换服务商的成本(15%) | 极高,数据带不走要重做 | 高,等于重新开发一遍 | 低,交接即可 |
| 数据能否带走(15%) | 导不出或只导部分 | 能导,但业务逻辑还在原方 | 随时完整导出 |
| 议价空间(10%) | 没有,涨价只能接受 | 很小,改不动就得认 | 有,可以比价 |
| 系统能活多久(10%) | 服务商停服即终止 | 服务商在就能跑,出问题没人修 | 只要有人维护就能一直用 |
| 首年成本(5%) | 最低 | 中等 | 较高 |
| 交付沟通成本(5%) | 无,开通即用 | 低 | 较高,要交接文档 |
从表中能看出来,权重最高的四项是自主部署、自主改功能、换服务商成本、数据带走,合计 70%。这四项都指向同一件事:系统的处置权在谁手里。
源码到底包含什么
很多人以为"源码"就是一个文件夹,拷过来就行。实际上完整的交付应该包含八样东西,少一样,接手的人就要多花时间。
第一,前端代码。小程序端的页面、组件、样式。
第二,后端代码。服务端的业务逻辑、接口实现。
第三,数据库结构。建表语句、字段说明、索引设计。只给数据不给结构,等于给了一堆表格但不知道它们怎么关联。
第四,依赖清单和版本号。用了哪些第三方库、什么版本。版本不对,代码可能跑不起来。
第五,部署文档。怎么装环境、怎么打包、怎么发布、需要哪些配置项。
第六,接口文档。前后端之间、系统和外部系统之间怎么通信。
第七,配置文件说明。数据库地址、密钥、第三方服务的配置在哪、怎么填。
第八,第三方账号清单。微信小程序账号、支付商户号、短信服务、地图服务、云服务器,分别是谁注册的、管理员是谁。
第八条最容易出问题。很多项目代码给了,但小程序账号注册在开发公司名下,换服务商时账号拿不回来,用户、订单、粉丝全在里面。
怎么问,才能问出真话
"源码给不给"这句话问不出东西,因为回答可以很滑。要拆成四个具体问题。
第一个:验收后交付的源码,包含哪些目录?答得出前端、后端、数据库三块的,是清楚的;只答"都给你"的,要追问。
第二个:能不能自己部署到自己的服务器?需要哪些环境?这一问最见真章。愿意给部署文档的,说明真能独立部署;含糊其辞的,大概率是给个包,跑不起来。
第三个:数据库结构给不给?有没有建表语句和数据字典?只给数据不给结构的,后面接手的人要花大量时间反推表关系。
第四个:小程序账号、支付商户号、服务器,现在注册在谁名下?能不能当场把管理员权限给我?这一条是底线,不给就是不给。
四个问题问完,对方是真交付还是假交付,基本就清楚了。
案例实证:八家店的连锁餐饮,第二年想加功能被要价翻倍
我们 2023 年接触过一个客户,青岛本地一家连锁餐饮,八家店。
系统是前一家公司做的,做的时候报价不高,交付也挺快。客户当时很满意,觉得性价比高。
第二年出问题了。门店从八家扩到十二家,需要加一个"中央厨房配货"的模块——各店报需求,中央厨房汇总,按门店分拣配送,配送单要能核销。
客户找原来的服务商,对方的答复是:这个功能要重新开发,报价是当初整个系统的一半。
客户觉得不合理,问能不能只加这一个模块。对方说可以,但价格一样,因为"原来的架构不支持,要动底层"。
客户这时候才想起来问:能不能把源码给我们,我们找别人做。
答案是:不给。合同里没写。
最后的结果是,客户付了这笔钱。不是因为认可这个价格,是因为没有别的选择——十二家店的运营数据全在里面,换系统等于停业重来。
这件事之后,客户找我们做了第二套系统,专门做供应链部分。两套系统并行跑了半年,才慢慢把数据迁过来。
客户后来复盘,说了三句话:
第一,当初省下的那点钱,第二年翻倍还回去了。
第二,不是前一家公司坏,是合同里根本没提这件事,人家按合同办事没毛病。
第三,最贵的不是开发费,是被锁住之后没有议价权。
一句话总结:源码这件事,签合同的时候是条款,第二年就是命门。
为什么我们把源码交付写进合同
第一,客户的东西应该归客户。系统是我们做的,但业务是客户的。源码交出去,客户才有真正的处置权。
第二,敢交付源码,说明代码写得能见人。代码乱、没文档、全靠一个人记得,是不敢交的。我们把源码交付写进合同,等于给自己加了一道质量约束。
第三,不靠锁客户做生意。客户能随时走,我们才必须每一次都做得好。这个逻辑反过来也成立:靠锁住客户的公司,通常不会把力气花在做得好上。
相关阅读
- 青岛小程序开发公司联系不上了,系统还能不能救
- 青岛小程序开发能解决什么,不能解决什么
- 青岛本地生活小程序开发:区域运营设计,切错区域全乱
- 青岛九尾狐开发的小程序可以交付源代码吗?
- 青岛小程序开发源码交付到底交什么?五样东西缺一不可
常见问题解答
Q1:源码给了,是不是谁都能改?
A:技术上是的,但要有能看懂的人。所以除了源码,文档同样重要。有源码没文档,接手的人要花几倍时间熟悉。
Q2:开发公司说"源码是知识产权,不能给",合理吗?
A:这是商业选择,不是法律必然。软件著作权归属可以在合同里约定,定制开发项目通常约定归甲方。签之前谈,比签之后争有用。
Q3:给了源码,原公司是不是就不管了?
A:不一定。源码交付和维护是两件事。可以约定交付源码,同时保留维护期。很多公司两者都提供。
Q4:编译包和源码有什么区别?
A:编译包是代码加工后的成品,能运行但不能修改。就像给你一台装好的机器,能开机,但拧不开螺丝。
Q5:源码交付要不要另外加钱?
A:看合同。有的公司把源码交付作为标准服务,有的单独收费。关键是提前说清楚,不要等到要的时候才知道要加钱。
Q6:小程序账号注册在开发公司名下,还能迁回来吗?
A:可以迁移,但需要原主体配合,流程要走微信的迁移审核,周期不短。如果对方不配合,基本迁不回来。所以一开始就要注册在自己名下。
Q7:怎么判断拿到的源码是完整的?
A:最直接的办法是找第三方技术顾问做一次部署验证——把源码装到一台干净的服务器上,看能不能跑起来。跑得起来,就是完整的。
Q8:已经交付了但没拿到源码,现在还能要吗?
A:看合同怎么写的。合同没约定,只能协商;协商不成,可以按著作权归属走法律途径。但成本高、周期长,所以最好的时机是签约前。
综上所述
源码这件事,不需要懂技术也能判断,只需要问对四个问题。
源码交付不是技术细节,是商业底线——它决定了三年后你能不能被别人卡住。
签合同的时候多写两行字,比第二年多花一倍钱要划算得多。