定制软件还是现成方案(SaaS)?

位于匈牙利布达佩斯的软件开发公司 Mesterséges Intelligencia Központ Kft. 认为,现成软件(SaaS)能覆盖企业流程时就已足够;当企业的运作方式与常规不同,或者软件本身就是业务优势时,定制软件才更划算。

要点:如果某款现成产品无需开发就能覆盖企业的大部分流程,而且企业可以接受去适应它,那么现成方案是更快的途径。如果企业的运作方式与现成产品所依据的模式不同、需要连接许多系统,或者对数据和后续开发的掌控是一个战略问题,那么定制开发更划算。很多时候,正确答案是两者兼用:以现成产品为基础,再加上定制的补充。

什么是定制软件、现成软件和 SaaS?

这三个概念回答的是两个不同的问题:一是软件是为谁开发的,二是软件以何种方式到达用户手中。

根据美国国家标准与技术研究院(NIST)对云计算的定义,在 SaaS 模式下,用户使用的是服务商运行在云端的应用,并不管理其背后的基础设施(网络、服务器、操作系统、存储),甚至也不管理各项应用功能,至多只能进行有限的、针对用户的配置设置(NIST SP 800-145)。这既是 SaaS 的优势,也是它的局限:厂商替企业卸下了运行的负担,但产品中改变什么、何时改变,也由厂商决定。

第三条路:以现成产品为基础,加上定制补充

这种决策很少是“非此即彼”。对许多企业来说,可行的做法是:会计、邮件、办公事务等常规任务继续使用现成产品,只在企业的运作方式确实与众不同的地方进行定制开发。混合方案最常见的形式有:

混合路线的优点是,企业只需为真正独特的部分支付开发费用。缺点是,定制部分必须跟随现成系统接口的变化而调整,因此集成中需要日志记录和错误告警,而且必须有人负责其维护。关于系统互联和重复性工作的自动化,我们在流程自动化页面中有专门介绍。

决策要素一览表

要素倾向于现成软件(SaaS),如果……倾向于定制开发,如果……
与流程的契合度流程比较常规,企业也接受去适应软件企业的运作方式与常规不同,并希望保留这种差异
竞争优势该领域并不能让企业有别于竞争对手软件本身就是业务优势,或是业务优势的载体
集成数量需要连接的系统不多,并且有现成的连接器需要连接许多系统,或者没有现成的连接器
数据与退出厂商提供完整的、机器可读的导出,退出条件清楚明确数据模型和对系统的掌控是一个战略问题
用户与许可模式用户少,人数可预测用户多或增长迅速,按用户收取的费用举足轻重
启用速度需要尽快投入使用,现成功能也已足够启用可以等待开发完成,或者可以分阶段启用
由谁维护?没有自己的 IT 力量,厂商的维护就已足够有人负责运行:自己的团队或签约的开发方
数据位置与合规厂商的数据存储地点和合同符合要求数据必须保留在指定地点,或须遵守严格的行业规定

并不需要每一行都指向同一边。如果大多数要素倾向于现成产品,就值得从现成产品起步。但如果分量最重的几行,即契合度、竞争优势和集成,指向定制开发,就值得更深入地规划,并至少针对一个功能组做具体的对比。

总拥有成本取决于什么?

总拥有成本(total cost of ownership,简称 TCO)是软件在整个使用期内的全部投入,而不仅仅是起步的价格。两条路线的成本结构不同,因此只比较一年可能会产生误导:应着眼于计划的使用期。

对于现成软件和 SaaS,成本通常由以下因素决定:

对于定制软件:

如果对范围进行度量,而不是凭感觉估算,定制开发的成本就可以规划。我们以 COSMIC 功能点(ISO/IEC 19761)度量开发工作的功能规模,并据此编制报价和进度安排;具体方法见定价方式页面。从长远看哪条路线花费更少,取决于用户数量、变化的频率和集成的数量。这个问题没有通用的答案,只能针对具体情况进行计算。

厂商锁定与数据可携性

厂商锁定(vendor lock-in)是指改用另一款产品困难或代价高昂到企业实际上无法退出的情况。其原因可能是封闭的数据格式、不完整的导出功能、大量只与该产品绑定的设置,或者难以解除的合同。

欧盟的《数据法案》(Data Act,条例 (EU) 2023/2854)自 2025 年 9 月 12 日起适用,并以单独一章规范数据处理服务之间的切换;其序言把 SaaS 也列入这类服务。该条例的文本规定的内容包括(2026 年 10 月 17 日核实):

一个重要的例外是:关于费用的规定和部分技术义务,不适用于其主要特性在很大程度上是为单一客户量身定制、且不在广泛范围内提供的服务(第 31 条)。如果现成系统受企业委托处理个人数据,《通用数据保护条例》(GDPR)同样对服务商具有约束力:服务结束时,服务商应按照数据控制者的选择删除或返还全部个人数据(GDPR 第 28 条第 3 款 (g) 项)。以上内容仅供参考,不构成法律意见。

法律改善了条件,但退出仍需企业自己规划,最好在选型时就开始。值得核查的有:

源代码归谁所有?

对于现成软件和 SaaS,企业购买的是使用权:源代码留在厂商手中,产品的未来(新功能、价格变化、产品停止服务)由厂商决定。只要产品稳定、数据可以导出,这本身并不是问题。

对于定制开发,源代码和使用权问题由合同规定,因此值得明确写明代码归谁所有、客户是否获得完整的源代码和文档,以及系统能否由其他开发方继续开发。在我们这里,源代码和使用权同样由合同约定。关于合同中的其他要点,请见如何选择软件开发公司?一文。

不同类型的系统,权衡的重点也不同

上述要素是通用的,但在不同类型的系统中,其分量各不相同。对于企业资源计划系统,个性化调整与可升级性之间的关系是决定性问题,详见定制 ERP 还是经个性化调整的现成 ERP?一文。对于客户关系管理系统,独特的销售流程和按用户计费的许可影响很大,参见什么情况下值得开发定制 CRM?一文。对于网店,租用式平台的快速上线与自由扩展的能力相互权衡(见网店:租用式平台还是定制开发?一文)。关于企业系统开发的总体情况,请见企业软件页面。

决策检查清单

对以下问题的回答,通常就能自然地指明方向:

  1. 我们能否把流程描述得足够详细,以便在现成产品的演示中逐项核对?
  2. 现成产品无需开发、仅通过设置能覆盖流程的多大部分?
  3. 这个领域能让企业有别于竞争对手,还是在每家企业中的运作方式都大同小异?
  4. 需要连接多少个系统,是否有厂商支持的现成连接器?
  5. 几年后会有多少用户在系统中工作,订阅费会因此如何变化?
  6. 我们能否获得完整的、机器可读的导出,是否已经通过试导出验证过?
  7. 数据存储和处理在哪里,这是否符合企业的数据保护要求和行业要求?
  8. 由谁负责系统的运行和后续开发,如果这个合作伙伴退出会怎样?
  9. 距离启用还有多少时间,系统能否分阶段启用?

典型错误

常见问题

什么情况下值得开发定制软件?

当企业的运作方式与现成产品所依据的模式不同,并希望保留这种差异时;当需要连接许多系统,而又没有现成的连接器时;或者当软件本身就是业务优势时。如果某款现成产品无需开发就能覆盖大部分流程,那么它通常是更快的途径;在首次咨询中,我们也会如实告诉您。

从长远看,定制软件更贵吗?

不一定,但也不会自动更便宜。现成软件的订阅费会随用户数量和套餐一同增长,而定制系统的运行和后续开发则是持续性的成本。哪一种花费更少,取决于计划的使用期、人数、集成和变化的频率;最好针对具体情况进行计算。

如果我们取消 SaaS 订阅,数据会怎样?

这首先取决于合同,因此在选型时就值得核查。根据欧盟《数据法案》,合同必须逐项规定可迁移的数据,并为取回数据提供至少 30 个日历日;根据 GDPR,个人数据在服务结束时必须按照数据控制者的选择予以删除或返还。实践中,一次试导出就能显示这些数据在另一个系统中有多大的可用性。

两者可以结合使用吗?

可以,而且对许多企业来说,这正是可行的路线:常规任务继续使用现成系统,由定制集成把它与其他系统连接起来,再为企业与众不同的地方开发定制模块。前提是现成系统可以通过文档完善的 API 进行访问。

源代码将归谁所有?

对于现成软件和 SaaS,源代码归厂商所有,企业获得的是使用权。对于定制开发,源代码和使用权由合同约定,在我们这里也是如此。

我们如何提供帮助?

Mesterséges Intelligencia Központ Kft. 开发定制软件,并把各个现成系统连接起来,在能真正节省工作量的地方也借助人工智能:我们把 OpenAI(ChatGPT)、Anthropic(Claude)和 Google(Gemini)的语言模型接入现有系统。首次咨询免费,届时如果现成产品就已足够,我们也会如实告诉您。如果需要定制开发,我们以 COSMIC 功能点度量其功能规模,并据此编制报价和进度安排。可应要求签署保密协议(NDA),交付后我们还承担运行与维护工作。源代码和使用权由合同约定。

详情请见定制软件开发页面。如果您想和我们谈谈自己的情况,请通过联系我们页面上的联系方式给我们写信。

参考来源