【Gartner 权威解答】: 合格 CTO 必懂的开源软件十大热点问题
译自 Gartner
作者 | Mark Driver,Nitish Tyagi
摘要
技术创新领导者可以通过开源软件(OSS)推动创新、节省成本并提升灵活性。然而,若想真正的实现规避风险并提升业务价值,而不仅仅是炒作,优秀的管理和治理至关重要。
关键发现
很多时候我们都没有察觉到,几乎所有 IT 组织在关键任务型工作负载中都在使用开源软件。企业依赖开源软件来满足业务的需求,带来创新、灵活性、更快的软件开发速度以及相较自研或商业产品的成本优势。
开源资产和其他任何软件技术一样,也存在质量、安全性和长期可持续性的核心风险。但由于很多开源解决方案缺乏内部或外部支持合同,其管理和治理不当的风险尤为突出。
企业在各技术领域对 OSS 的采纳程度不一,其中基础设施软件、应用开发、DevOps 工具链,以及数据分析(包括 AI)是最常见的使用场景。
建议
像 CTO 这样的技术创新领导者应该:
将开源视为战略投资:如果管理得当,开源能带来创新、降低总体拥有成本(TCO),提升人才保留率与业务价值。
建立 OSS 治理机制:通过设立开源项目办公室(OSPO)或子委员会,推进企业范围内开源带来的福利,包括制定培训材料,提高 OSS 使用效率。
制定 OSS 战略计划:优先聚焦回报率最高的关键技术领域,以优化技术投资,并推动创新。
引言
开源运动推动了数字经济的发展,并成为诸多 CTO 优先事项(如 AI、云计算、DevOps)中创新的基石。2023 年,AI 基础模型的繁荣发展再次激发了企业对开源 AI 模型的兴趣,它们希望借此提升透明度,提高可定制型,并降低供应商锁定的风险。
开源不仅仅是一种软件开发与分发模型,它还允许访问源代码,同时鼓励,甚至要求社区参与和支持该技术的发展(见图 1)。

在企业中,开源软件带来了灵活性、人才吸引力和创新,以及成本降低等优势,但也伴随着技术、法律与安全等风险。其成功实施的关键在于建立有效的治理、沟通和文化策略。
十问十答
问答目录
什么是开源软件?
现在谁在使用开源?
采用 OSS 的主要好处有哪些?
采用 OSS 的主要风险有哪些?
我们该如何评估 OSS 项目的可行性?
支撑 OSS 的商业模式有哪些?各自的利弊是什么?
组织如何最有效地使用 OSS?
我们该如何围绕 OSS 使用建立充分的治理机制?
什么是 OSPO?它有哪些职责?
我们如何衡量开源工作的成功?
1. 什么是开源软件?
对于 OSS,目前并没有一个具有法律意义的定义。这个术语没有版权保护,也没有任何政府或国际标准组织(例如国际标准化组织)对其概念进行监管。然而,这个术语得到最广泛支持的定义是由一个开源先锋和开发者组成的非营利组织维护,即开源促进会(Open Source Initiative, OSI)。
OSI 经一致同意后共同定义了一组属性,作为最基本的 OSS 定义。由于对这个术语缺乏法律上的约束,OSI 通过聚集大多数开源开发者社区的共识,建立了事实上的标准。
在定义 OSS 时,Gartner 强烈尊重 OSI 的意见。
从本质上讲,开源的概念依赖于许可协议。虽然许多方面构成了 OSS 的广义理念,例如社区、开放创新和透明性,但许可证建构成了 OSS 的基准。
开放源代码定义(Open Source Definition, OSD)提供了一组开源许可证应具备的最基本的属性。OSI 则规范了开源的提交流程,规定了其成员可以就提交的许可证公开进行讨论、辩论以及“批准”。随后,OSI 执行委员会会决定是否将该许可证列为 OSI 批准的许可证。
OSI 维护着一份已获得批准的许可证清单,我们强烈建议有意使用 OSS 的将许可证与这份清单进行比对。虽然不在该清单上的许可证不一定就不是开源的,但 OSI 的批准过程为许可证合规性提供了一个广泛认可的第三方专家意见,可以消除很多疑问。
因此,对于所有宣传为“开源”的软件,如果其许可证不在 OSI 批准的列表中,使用者就要保持谨慎了。
OSS 许可证主要聚焦在四项关键“自由”上,赋予被授权人如下权利:
自由地使用该软件而无任何限制。
自由地访问并查看源代码。
自由地修改该软件。
自由地重新分发或与他人共享该软件。
2. 谁在使用开源?
无论大家是否意识到,全球绝大多数终端用户和供应商侧的 IT 组织都在关键任务 IT 工作流程中使用了 OSS。OSS 的使用领域广泛,其中软件工程、基础设施软件、DevOps 以及包括 AI 在内的数据与分析是使用最多的领域。
根据 Sonatype 发布的《2024 软件供应链状况报告》,90% 的生产工作流程的源头都是 OSS。大多数商业产品都包含某种形式的 OSS。许多企业将 OSS 作为构建与购买之外的替代方案,例如自研解决方案或授权自专有第三方的方案。
3. 采用 OSS 的主要好处有哪些?
在 IT 组织中,有很多动机促使它们采用开源,但这些都可以归纳为以下四类:
自由与灵活性:许多采用者之所以选择开源,是为了比自研或专有替代方案获得更大的灵活性。这种灵活性体现在多种场景中,但源代码访问是最为关键的因素。此外,任何一个单一实体都没有对一个开源项目的排他性控制权。因此,对于成熟的项目,用户通常可以找到多个商业供应商提供服务。
创新:开源是新型数字化经济中开放创新的主导软件模式。它还让企业有机会接触到更大的创新人才资源池,并更快地获得新特性。
成本:几乎每个开源采用者都希望其成本相比自研或专有第三方解决方案更低。然而 Gartner 的研究表明,是否能节省成本取决于多种因素,包括治理、基础设施和运营 OSS 所需的技能。组织应始终评估 OSS 的总体拥有成本(TCO),并将其与闭源方案的成本效益进行比较。
获得和留住人才:许多开发者和基础设施工程师希望参与前沿项目,希望他们的贡献获得非金钱形式的认可,并希望通过社交学习成长。OSS 的使用在这些方面提供了机会,并成为吸引和留住积极人才的磁石。
4. 采用 OSS 的主要风险有哪些?
开源软件面临的核心风险,与其他类型的软件资产本质上是相同的,主要包括:
技术风险:例如服务质量缺陷、安全漏洞、生命周期不明确,以及文档不完善甚至缺失等问题。
法律风险:涉及开源许可证的合规性问题,以及潜在的知识产权丧失或侵权风险。
安全风险:开源软件的获取成本几乎为零,这导致许多开源组件由于缺乏有效治理或专业能力而管理不当,甚至无人维护。这种情况很容易暴露出质量和安全隐患,因为这些组件往往得不到及时的修复和更新。
5. 我们该如何评估 OSS 项目的可行性?
开源软件(OSS)项目需要根据具体情况逐一评估。就像评估商业软件一样,功能、集成能力以及总体拥有成本等,都是非常重要的考量因素。相比商业专有软件,管理规范的开源项目有一个明显优势,那就是透明度高。例如,开源项目的相关元数据(比如漏洞信息和代码迭代情况)通常都可以轻松获取并查阅。因此,选择一个可持续、值得信赖的开源项目非常关键,以下这些因素是评估开源项目是否值得长期投入的重要参考:
项目资金支持:社区能否长期稳定发展,很大程度上取决于资金保障。一般来说,隶属于 CNCF、Eclipse 基金会或 Linux 基金会等组织的项目,更容易获得稳定的资金支持。
代码活跃度:可以通过季度提交次数、问题修复的响应时间、贡献者的数量与多样性,以及代码托管平台等指标来衡量。
软件发布节奏:一个管理良好的开源项目会保持规律的版本发布节奏,同时也能体现项目整体的成熟度。
社区支持与文档完善程度:可通过项目问题追踪系统中的 bug 修复情况,以及社区论坛和邮件列表中的讨论活跃度和实用性来评估。像“安全策略”或“使用指南/常见问题”等文档的完备程度,也能反映项目的专业程度和成熟度。
生态系统活跃度:项目是否有来自不同公司和个人开发者的多元参与(尤其是供应商与终端用户的合理混合),这通常是生态健康的重要标志。
许可证模式:可以从许可的使用与再分发自由度,及其在滥用情况下可能带来的风险来衡量。
安全问题反馈机制:重点考察项目修复代码漏洞与安全问题的流程,以及是否提供了可靠的私密报告通道。
维护者质量:要关注核心维护者是谁,他们还维护了哪些其他项目,是否在多个代码仓库中活跃,以及他们在社区中的信誉如何。
这些维度共同构成了对一个开源项目可行性与可持续性的全面判断基础。
6. 支撑 OSS 的商业模式有哪些?各自的利弊是什么?
开源软件(OSS)提供商或厂商通常会采用多种商业策略来支撑其开源项目。表 1 展示了目前最常见的几种模式。对于技术创新的决策者而言,了解每种模式的优劣势至关重要。
表 1:开源软件商业模式

资料来源:Gartner
7. 组织如何最有效地使用 OSS?
要想在开源领域取得成功,企业必须认识到开源在整体业务战略中的重要性,制定并执行有效的治理与管理政策,并向各类利益相关方清晰传达其价值。任何开源工作的推进都需要从全公司层面出发,涵盖企业架构、工程、安全、合规与风险、基础设施与运维、采购等多个部门的领导参与。
对于真正重视开源的企业来说,必须制定一套开源战略。这一战略应由各领域的负责人共同参与制定,明确而简洁地阐述开源所带来的收益、潜在风险以及相关管理政策。
战略文件应包含以下内容:
为何开源重要的总体说明,以及开源与公司整体业务与 IT 战略之间的契合点。
在组织内部协调推进开源工作的管理机制,通常可通过建立 OSPO(开源项目办公室)来实现。
8. 我们该如何围绕 OSS 使用建立充分的治理机制?
制定一份开源治理政策(OSS Governance Policy),明确相关的规则、角色、职责和权限边界,是 CTO 可采取的关键第一步。这项政策应为以下几个方面建立清晰的规范:
使用(Consumption):团队允许使用哪些类型的开源软件?谁有权审批开源软件的引入?遇到例外情况时如何处理?
贡献(Contribution):开发人员是否可以将公司的知识产权贡献给开源社区?这类贡献有哪些限制?
创建(Creation):我们如何判断是否要创建一个属于自己的开源项目?谁有权做出这一决定?应采用什么样的开源协议来保护公司的知识产权?项目应如何进行治理与推广?
安全(Security):该项目如何贯彻“安全设计”(secure by design)的理念?面对不断出现的安全问题,如何持续进行修复和响应?
9. 什么是 OSPO?它有哪些职责?
开源项目办公室(OSPO,Open-Source Program Office)可以整合组织内部零散的开源工作,建立一个统一的能力中心,从而推动企业的整体战略目标。OSPO 的职责详见下表:
表 2:开源项目办公室(OSPO)的职责

10. 我们如何衡量开源工作的成功与否?
在组织内部衡量开源软件(OSS)成功的指标有多种,没有绝对的成功标准。成功更多体现在这些指标能够随着时间持续改进。下面表 3 列出了一些常见的成功衡量指标。
表 3:开源软件常见成功指标

来源:Gartner
原文链接:https://www.gartner.com/doc/reprints?id=1-2L3XDVTH&ct=250602&st=sb
评论