核心观点 - 事实收集是软件谈判中首要且最重要的任务,律师和采购专业人员应避免做出会损害自身信誉和拖延谈判的事实假设,要与实际执行或监督工作的员工基于相同知识库工作,以节省时间并达成更好协议和关系 [4][7][46] 各部分总结 软件并非静态 - 开发的软件会在开发过程中不断演变,如今要求详细最终规格再开始工作会导致产品错过市场价值,协议应聚焦于建立合作开发的流程 [9][10] - 软件在正常生命周期内会持续变化,需不断更新以适应环境变化和消除安全漏洞,协议不应基于开发会在软件生命周期结束前某点结束的假设编写 [12] 软件供应商并非所有交付软件的作者和版权所有者 - 软件供应商几乎不会是所提供软件的唯一作者和版权所有者,软件包含第三方组件并依赖相关软件 [14] - 开发者会利用模板和库进行开发,第三方组件和接口对软件运行必不可少,软件运行依赖第三方生态系统 [15][16] - 现代软件生态系统中依赖情况更复杂,供应商可能不直接交付依赖,依赖使用会影响软件售价 [18][19][20] 软件将使用一组工具进行开发 - 软件开发者使用软件工具提高开发效率,这些工具复杂且代码量常超开发交付物,了解相关事实很重要 [22] - 开发环境可能是第三方产品,也可能是特定公司的独特环境及相关技术人员 [23][24] - 工具在复杂环境中运行,交付整个开发环境不切实际,交付代码需有维护计划,源代码托管安排作用有限 [26][28] 许多最有价值的第三方组件和工具以开源许可证提供 - 开发中几乎不可能不使用开源软件,多数系统中70 - 90%的代码由开源软件构建,使用开源软件可提升竞争力 [31] - 若使用开源软件,应关注代码选择、维护和许可证合规性等问题 [32] 软件许可证可无限分类 - 软件许可证种类繁多,有开源、类似开源、非开源、商业或专有等多种类型,SPDX许可证列表涵盖许多常见许可证 [35] - 合同中关注第三方软件组件的许可证问题时,不应纠结于许可证分类,要求仅使用OSI批准的许可证可能有害 [36][38] 一些最重要且广泛使用的软件以GPL和其他Copyleft许可证提供 - 很多有价值的软件组件和工具以GPL或Copyleft许可证提供,GPL许可的软件被广泛使用,商业公司可遵守相关义务 [40][41] - 软件分发可能触发Copyleft义务,GPL并非不可行的开源许可证,若不重新分发GPL代码,要求“禁止使用GPL”条款会减少权利 [42][43] - 除非技术人员同意,否则不应要求无Copyleft软件的声明或保证,应关注代码选择、维护和许可证合规性 [44]
A guide to open source software for procurement professionals
Linux基金会·2025-03-04 11:45